Section AspaceTheory.
Variables (K : fieldType) (aT : FalgType K).
Implicit Types (u v e : aT) (U V : {vspace aT}) (A B : {aspace aT}).
Definition algid U := s2val (algid_subproof U).
Fact aspace_cap_subproof A B : algid A \in B -> is_aspace (A :&: B).
Definition aspace_cap A B BeA := ASpace (@aspace_cap_subproof A B BeA).
Fact centraliser1_is_aspace u : is_aspace 'C[u].
Canonical centraliser1_aspace u := ASpace (centraliser1_is_aspace u).
Fact centraliser_is_aspace V : is_aspace 'C(V).
Canonical centraliser_aspace V := ASpace (centraliser_is_aspace V).

Lemma Falgebra_FieldMixin :
GRing.IntegralDomain.axiom aT -> GRing.Field.mixin_of aT.