NPAへ戻る
Module
Mathlib.Algebra.Group.Kernel.Quotient.Mul
npa-mathlib
Packages
2
Module
63
Theorem
750
Declarations
1016
信頼境界外の sidecar
Source text や表示 overlay は提示用メタデータです。信頼する証拠は署名済み証明書と checker の結果です。
Theorem
1
Definition
1
Inductive type
0
Axiom
1
Declarations
KerQuotMulRep
forall (G : Sort succ u), forall (mulG : forall (a : G), forall (b : G), G), forall (H : Sort succ v), forall (f : forall (x : G), H), forall (a : G), forall (b...
ker_quot_mul_rep_compat
forall (G : Sort succ u), forall (oneG : G), forall (mulG : forall (a : G), forall (b : G), G), forall (invG : forall (a : G), G), forall (H : Sort succ v), for...
Eq.rec
Hashes
- source
- sha256:7e1390ce57d6eca8898e3230d8512a880333c9b25226762ef448c5c5baca6db6
- certificateFile
- sha256:f7c968a7e085262f3d27858308d5234956abc5ac1ad824a89ae1d323eaefa1c1
- export
- sha256:149df869acd227ea5d7476160595d2338e9c00b1fb2f72d5e4ee6fca5e663c55
- axiomReport
- sha256:5bd7339ac208646efb0ed11ff2499737a45b42195bb28180b5685aed4560bbe3
- certificate
- sha256:603136356e732b815a7040c25aa21a055ac9dfa448cfd1f2ae0f8675292d76d8
Source
import Std.Logic.Eq
import Mathlib.Logic.EqReasoning
import Mathlib.Algebra.Group.Basic
import Mathlib.Algebra.Group.Kernel.Quotient
def KerQuotMulRep.{u,v} :
forall (G : Sort succ u), forall (mulG : forall (a : G), forall (b : G), G), forall (H : Sort succ v), forall (f : forall (x : G), H), forall (a : G), forall (b : G), @KerQuot.{u,v} G H f :=
fun G => fun mulG => fun H => fun f => fun a => fun b => @KerQuotMk.{u,v} G H f (mulG a b)
theorem ker_quot_mul_rep_compat.{u,v} :
forall (G : Sort succ u), forall (oneG : G), forall (mulG : forall (a : G), forall (b : G), G), forall (invG : forall (a : G), G), forall (H : Sort succ v), forall (oneH : H), forall (mulH : forall (a : H), forall (b : H), H), forall (invH : forall (a : H), H), forall (f : forall (x : G), H), forall (hom_args : @GroupHomLawArgs.{succ u,succ v} G oneG mulG invG H oneH mulH invH f), forall (a : G), forall (a2 : G), forall (b : G), forall (b2 : G), forall (ha : @KerRel.{succ u,succ v} G H f a a2), forall (hb : @KerRel.{succ u,succ v} G H f b b2), @Eq.{succ u} (@KerQuot.{u,v} G H f) (@KerQuotMulRep.{u,v} G mulG H f a b) (@KerQuotMulRep.{u,v} G mulG H f a2 b2) :=
fun G => fun oneG => fun mulG => fun invG => fun H => fun oneH => fun mulH => fun invH => fun f => fun hom_args => fun a => fun a2 => fun b => fun b2 => fun ha => fun hb => @ker_quot_sound.{u,v} G H f (mulG a b) (mulG a2 b2) (@eq_trans.{succ v} H (f (mulG a b)) (mulH (f a) (f b)) (f (mulG a2 b2)) (@hom_mul.{succ u,succ v} G oneG mulG invG H oneH mulH invH f hom_args a b) (@eq_trans.{succ v} H (mulH (f a) (f b)) (mulH (f a2) (f b2)) (f (mulG a2 b2)) (@eq_congr2.{succ v,succ v,succ v} H H H mulH (f a) (f a2) (f b) (f b2) ha hb) (@eq_symm.{succ v} H (f (mulG a2 b2)) (mulH (f a2) (f b2)) (@hom_mul.{succ u,succ v} G oneG mulG invG H oneH mulH invH f hom_args a2 b2))))