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_scalr n k (x y: kn n) :
x [.] (k .* y) = (k * (x [.] y))%f.