Fixpoint pscal (n: nat): (kn n) -> (kn n) -> K :=
match n return kn n -> kn n -> K with
| O => fun a b => 0%f
| S n1 => fun l1 l2 => let (a,l3) := l1 in let (b,l4) := l2 in
(a * b + pscal n1 l3 l4)%f
end.
Notation "a  [.]  b" := (pscal _ a b) (at level 40): kn_scope.

Lemma pscal_e n (i j: nat) : i < n -> j < n ->
('e_i: kn n) [.] ('e_j) = if (i ?= j)%nat then 1%f else 0%f.