Section trivial_lemmas.
simpl in |- *.
red in |- *.
simpl in |- *.
intros; destruct i; destruct j.
simpl in |- *; simpl in H.
apply Kronecker_case_unequal; auto with algebra.
Qed.
intros; red in H, H0.
red in |- *.
intros.
case (nat_total_order _ _ H1); intro; auto with algebra.
Qed.
End trivial_lemmas.
intros.
red in |- *.
split; try split.
simpl in |- *.
red in |- *.
intros; simpl in |- *.
auto with algebra.
intros.
red in H0, H.
simpl in |- *; red in |- *.
intros.
apply Trans with (x i j +' y i j); auto with algebra.
apply Trans with ((zero F) +' (zero F)); auto with algebra.
intros; simpl in H; red in H; simpl in |- *; red in |- *.
intros; (apply Trans with (c rX (zero F)); auto with algebra).
simpl in |- *.
apply RING_comp; auto with algebra.
Qed.
intros.
red in |- *.
split; try split.
simpl in |- *.
red in |- *.
intros; simpl in |- *.
auto with algebra.
intros.
red in H0, H.
simpl in |- *; red in |- *.
intros.
apply Trans with (x i j +' y i j); auto with algebra.
apply Trans with ((zero F) +' (zero F)); auto with algebra.
intros; simpl in H; red in H; simpl in |- *; red in |- *.
intros; (apply Trans with (c rX (zero F)); auto with algebra).
simpl in |- *.
apply RING_comp; auto with algebra.
Qed.

Lemma is_diagonal_subspace :
forall (F : field) (n : Nat), is_subspace (is_diagonal_pred F n).