proposition: Lemma square_nonneg x : 0 ≤ x * x.
proof: Proof. apply not_lt_le_flip. intros E. destruct (lt_antisym (x * x) 0). split; [trivial |]. apply square_pos. pose proof pseudo_order_apart. apply (strong_extensionality (x *.)). rewrite mult_0_r. apply lt_apart. trivial. Qed.
imports: HoTT.Classes.theory.apartness HoTT.Classes.interfaces.abstract_algebra HoTT.Classes.interfaces.orders HoTT.Classes.theory.rings HoTT.Classes.orders.orders HoTT.Classes.orders.maps