返回 NPA

模块

Mathlib.Algebra.Group.Correspondence.Order

npa-mathlib

2

模块

63

定理

750

声明

1016

非可信 sidecar

源文本和展示 overlay 属于展示元数据。可信证据是签名证书和 checker 结果。

定理

4

定义

0

归纳类型

0

公理

1

声明

哈希

source
sha256:ee9561820d8954e6ab17035dbed2587c0a407ca1ee42ebd809e4375d8d695b72
certificateFile
sha256:b24d4155ae756178e124c6d600821947a3f05a53b2e69106157ee35516f44bb1
export
sha256:343f663b129a1ecdfddc751614f5471b9256fb48567bd600e8ea7300b737fda8
axiomReport
sha256:930e872459fa0a237548e58d011ab133dca95a0d4dce5979f68cb3fe009ce914
certificate
sha256:aaeddce85ffe318f8ce637974e0011ad562148c5342fd28fee7140e80b19f20e

源文本

import Std.Logic.Eq
import Mathlib.Logic.EqReasoning
import Mathlib.Algebra.Group.Basic
import Mathlib.Algebra.Group.Subgroup
import Mathlib.Algebra.Group.Subgroup.Order
import Mathlib.Algebra.Group.Quotient
import Mathlib.Algebra.Group.Quotient.Mul
import Mathlib.Algebra.Group.Quotient.Group
import Mathlib.Algebra.Group.Correspondence.Basic

theorem correspondence_image_mono.{u} :
  forall (G : Sort succ u), forall (one : G), forall (mul : forall (a : G), forall (b : G), G), forall (inv : forall (a : G), G), forall (N : forall (x : G), Prop), forall (Hpred : forall (x : G), Prop), forall (Hpred2 : forall (x : G), Prop), forall (group_args : @GroupLawArgs.{succ u} G one mul inv), forall (n_normal : @NormalSubgroupLawArgs.{succ u} G one mul inv N), forall (h_le : @SubgroupLe.{succ u} G Hpred Hpred2), @SubgroupLe.{succ u} (@NormalQuot.{u} G one mul inv N group_args n_normal) (@CorrespondenceImagePred.{u} G one mul inv N Hpred group_args n_normal) (@CorrespondenceImagePred.{u} G one mul inv N Hpred2 group_args n_normal) :=
  fun G => fun one => fun mul => fun inv => fun N => fun Hpred => fun Hpred2 => fun group_args => fun n_normal => fun h_le => fun (q : @NormalQuot.{u} G one mul inv N group_args n_normal) => fun (hq : @CorrespondenceImagePred.{u} G one mul inv N Hpred group_args n_normal q) => @correspondence_image_elim.{u} G one mul inv N Hpred group_args n_normal q hq (@CorrespondenceImagePred.{u} G one mul inv N Hpred2 group_args n_normal q) (fun (h : G) => fun (hh : Hpred h) => fun (eq_q : @Eq.{succ u} (@NormalQuot.{u} G one mul inv N group_args n_normal) (@NormalQuotMk.{u} G one mul inv N group_args n_normal h) q) => @correspondence_image_intro.{u} G one mul inv N Hpred2 group_args n_normal q h (h_le h hh) eq_q)

theorem correspondence_preimage_mono.{u} :
  forall (G : Sort succ u), forall (one : G), forall (mul : forall (a : G), forall (b : G), G), forall (inv : forall (a : G), G), forall (N : forall (x : G), Prop), forall (group_args : @GroupLawArgs.{succ u} G one mul inv), forall (n_normal : @NormalSubgroupLawArgs.{succ u} G one mul inv N), forall (K : forall (q : @NormalQuot.{u} G one mul inv N group_args n_normal), Prop), forall (K2 : forall (q : @NormalQuot.{u} G one mul inv N group_args n_normal), Prop), forall (k_le : @SubgroupLe.{succ u} (@NormalQuot.{u} G one mul inv N group_args n_normal) K K2), @SubgroupLe.{succ u} G (@CorrespondencePreimagePred.{u} G one mul inv N group_args n_normal K) (@CorrespondencePreimagePred.{u} G one mul inv N group_args n_normal K2) :=
  fun G => fun one => fun mul => fun inv => fun N => fun group_args => fun n_normal => fun K => fun K2 => fun k_le => fun (x : G) => fun (hx : @CorrespondencePreimagePred.{u} G one mul inv N group_args n_normal K x) => k_le (@NormalQuotMk.{u} G one mul inv N group_args n_normal x) hx

theorem correspondence_image_respects_equiv.{u} :
  forall (G : Sort succ u), forall (one : G), forall (mul : forall (a : G), forall (b : G), G), forall (inv : forall (a : G), G), forall (N : forall (x : G), Prop), forall (Hpred : forall (x : G), Prop), forall (Hpred2 : forall (x : G), Prop), forall (group_args : @GroupLawArgs.{succ u} G one mul inv), forall (n_normal : @NormalSubgroupLawArgs.{succ u} G one mul inv N), forall (h_equiv : @SubgroupEquiv.{succ u} G Hpred Hpred2), @SubgroupEquiv.{succ u} (@NormalQuot.{u} G one mul inv N group_args n_normal) (@CorrespondenceImagePred.{u} G one mul inv N Hpred group_args n_normal) (@CorrespondenceImagePred.{u} G one mul inv N Hpred2 group_args n_normal) :=
  fun G => fun one => fun mul => fun inv => fun N => fun Hpred => fun Hpred2 => fun group_args => fun n_normal => fun h_equiv => @subgroup_equiv_intro.{succ u} (@NormalQuot.{u} G one mul inv N group_args n_normal) (@CorrespondenceImagePred.{u} G one mul inv N Hpred group_args n_normal) (@CorrespondenceImagePred.{u} G one mul inv N Hpred2 group_args n_normal) (@correspondence_image_mono.{u} G one mul inv N Hpred Hpred2 group_args n_normal (@subgroup_equiv_left.{succ u} G Hpred Hpred2 h_equiv)) (@correspondence_image_mono.{u} G one mul inv N Hpred2 Hpred group_args n_normal (@subgroup_equiv_right.{succ u} G Hpred Hpred2 h_equiv))

theorem correspondence_preimage_respects_equiv.{u} :
  forall (G : Sort succ u), forall (one : G), forall (mul : forall (a : G), forall (b : G), G), forall (inv : forall (a : G), G), forall (N : forall (x : G), Prop), forall (group_args : @GroupLawArgs.{succ u} G one mul inv), forall (n_normal : @NormalSubgroupLawArgs.{succ u} G one mul inv N), forall (K : forall (q : @NormalQuot.{u} G one mul inv N group_args n_normal), Prop), forall (K2 : forall (q : @NormalQuot.{u} G one mul inv N group_args n_normal), Prop), forall (k_equiv : @SubgroupEquiv.{succ u} (@NormalQuot.{u} G one mul inv N group_args n_normal) K K2), @SubgroupEquiv.{succ u} G (@CorrespondencePreimagePred.{u} G one mul inv N group_args n_normal K) (@CorrespondencePreimagePred.{u} G one mul inv N group_args n_normal K2) :=
  fun G => fun one => fun mul => fun inv => fun N => fun group_args => fun n_normal => fun K => fun K2 => fun k_equiv => @subgroup_equiv_intro.{succ u} G (@CorrespondencePreimagePred.{u} G one mul inv N group_args n_normal K) (@CorrespondencePreimagePred.{u} G one mul inv N group_args n_normal K2) (@correspondence_preimage_mono.{u} G one mul inv N group_args n_normal K K2 (@subgroup_equiv_left.{succ u} (@NormalQuot.{u} G one mul inv N group_args n_normal) K K2 k_equiv)) (@correspondence_preimage_mono.{u} G one mul inv N group_args n_normal K2 K (@subgroup_equiv_right.{succ u} (@NormalQuot.{u} G one mul inv N group_args n_normal) K K2 k_equiv))