Playing with groups
This commit is contained in:
parent
103e4f72fe
commit
2f150dce1f
1 changed files with 35 additions and 2 deletions
|
@ -1,9 +1,42 @@
|
||||||
import types.trunc types.arrow_2 types.fiber homotopy.susp homotopy.circle
|
/-----
|
||||||
|
This is Clive's file for playing around with (h)Lean/Git/Emacs
|
||||||
|
------/
|
||||||
|
|
||||||
|
import types.trunc types.arrow_2 types.fiber homotopy.circle
|
||||||
|
|
||||||
|
open eq is_trunc is_equiv nat equiv trunc function circle
|
||||||
|
|
||||||
|
|
||||||
open eq is_trunc is_equiv nat equiv trunc function fiber circle
|
|
||||||
|
|
||||||
namespace clive
|
namespace clive
|
||||||
|
|
||||||
|
/-- Very easy goal: prove (loop⁻¹)⁻¹ = loop : base = base --/
|
||||||
|
theorem symm_symm_loop_eq_loop : (loop⁻¹)⁻¹ = loop :=
|
||||||
|
eq.rec_on loop idp
|
||||||
|
|
||||||
|
/-- Another easy goal: define a group and prove that the left inverse law follows form the right inverse law --/
|
||||||
|
structure group (X : Type) :=
|
||||||
|
gpstr :: (unit : X)
|
||||||
|
(mult : X → X → X)
|
||||||
|
(inv : X → X)
|
||||||
|
(assoc_law : Π(a b c : X), mult (mult a b) c = mult a (mult b c))
|
||||||
|
(inv_law : Π(a : X), mult a (inv a) = unit)
|
||||||
|
(unit_law : Π(a : X), mult a unit = a)
|
||||||
|
|
||||||
|
constants (X : Type) (G : group X)
|
||||||
|
open group
|
||||||
|
|
||||||
|
theorem group_cancel_right : Π(X : Type), Π(G : group X), Π(a b c : X), (mult G a c = mult G b c) → a = b := sorry
|
||||||
|
|
||||||
|
theorem inv_mul_left_eq_unit : Π(X : Type), Π(G : group X), Π(a : X), mult G (inv G a) a = unit G :=
|
||||||
|
take (X : Type) (G : group X) (a : X),
|
||||||
|
have q : mult G (mult G (inv G a) a) (inv G a) = mult G (unit G) (inv G a), from
|
||||||
|
calc
|
||||||
|
mult G (mult G (inv G a) a) (inv G a) = mult G (inv G a) (mult G a (inv G a)) : assoc_law
|
||||||
|
... = mult G (inv G a) (unit G) : sorry
|
||||||
|
... = inv G a : unit_law
|
||||||
|
... = mult G (unit G) (inv G a) : sorry,
|
||||||
|
group_cancel_right X G (mult G (inv G a) a) (unit G) (inv G a) q
|
||||||
|
|
||||||
|
|
||||||
end clive
|
end clive
|
||||||
|
|
Loading…
Reference in a new issue