NPAへ戻る
Declaration
ring_crt_pair_surjective
Mathlib.Algebra.Ring.ChineseRemainder
Packages
2
Module
63
Theorem
750
Declarations
1016
信頼境界外の sidecar
Source text や表示 overlay は提示用メタデータです。信頼する証拠は署名済み証明書と checker の結果です。
Statement
forall (R : Sort succ u), forall (addR : forall (a : R), forall (b : R), R), forall (mulR : forall (a : R), forall (b : R), R), forall (RI : Sort succ v), forall (RJ : Sort succ w), forall (P : Sort succ p), forall (pair : forall (x : RI), forall (y : RJ), P), forall (fst : forall (z : P), RI), forall (snd : forall (z : P), RJ), forall (modI : forall (x : R), RI), forall (modJ : forall (x : R), RJ), forall (eI : R), forall (eJ : R), forall (modI_surj : forall (y : RI), @RingImagePred.{succ u,succ v} R RI modI y), forall (modJ_surj : forall (y : RJ), @RingImagePred.{succ u,succ w} R RJ modJ y), forall (pair_eta : forall (z : P), @Eq.{succ p} P (pair (fst z) (snd z)) z), forall (combine_left : forall (a : R), forall (b : R), @Eq.{succ v} RI (modI (@RingCrtCombine.{succ u} R addR mulR eI eJ a b)) (modI a)), forall (combine_right : forall (a : R), forall (b : R), @Eq.{succ w} RJ (modJ (@RingCrtCombine.{succ u} R addR mulR eI eJ a b)) (modJ b)), forall (y : P), @RingImagePred.{succ u,succ p} R P (@RingCrtPairMap.{succ p,succ u,succ v,succ w} R RI RJ P pair modI modJ) y
Proof term
theorem ring_crt_pair_surjective.{p,u,v,w} :
forall (R : Sort succ u), forall (addR : forall (a : R), forall (b : R), R), forall (mulR : forall (a : R), forall (b : R), R), forall (RI : Sort succ v), forall (RJ : Sort succ w), forall (P : Sort succ p), forall (pair : forall (x : RI), forall (y : RJ), P), forall (fst : forall (z : P), RI), forall (snd : forall (z : P), RJ), forall (modI : forall (x : R), RI), forall (modJ : forall (x : R), RJ), forall (eI : R), forall (eJ : R), forall (modI_surj : forall (y : RI), @RingImagePred.{succ u,succ v} R RI modI y), forall (modJ_surj : forall (y : RJ), @RingImagePred.{succ u,succ w} R RJ modJ y), forall (pair_eta : forall (z : P), @Eq.{succ p} P (pair (fst z) (snd z)) z), forall (combine_left : forall (a : R), forall (b : R), @Eq.{succ v} RI (modI (@RingCrtCombine.{succ u} R addR mulR eI eJ a b)) (modI a)), forall (combine_right : forall (a : R), forall (b : R), @Eq.{succ w} RJ (modJ (@RingCrtCombine.{succ u} R addR mulR eI eJ a b)) (modJ b)), forall (y : P), @RingImagePred.{succ u,succ p} R P (@RingCrtPairMap.{succ p,succ u,succ v,succ w} R RI RJ P pair modI modJ) y :=
fun R => fun addR => fun mulR => fun RI => fun RJ => fun P => fun pair => fun fst => fun snd => fun modI => fun modJ => fun eI => fun eJ => fun modI_surj => fun modJ_surj => fun pair_eta => fun combine_left => fun combine_right => fun y => modI_surj (fst y) (@RingImagePred.{succ u,succ p} R P (@RingCrtPairMap.{succ p,succ u,succ v,succ w} R RI RJ P pair modI modJ) y) (fun (a : R) => fun (ha : @Eq.{succ v} RI (modI a) (fst y)) => modJ_surj (snd y) (@RingImagePred.{succ u,succ p} R P (@RingCrtPairMap.{succ p,succ u,succ v,succ w} R RI RJ P pair modI modJ) y) (fun (b : R) => fun (hb : @Eq.{succ w} RJ (modJ b) (snd y)) => fun (Q : Prop) => fun (mk : forall (x : R), forall (h : @Eq.{succ p} P (@RingCrtPairMap.{succ p,succ u,succ v,succ w} R RI RJ P pair modI modJ x) y), Q) => mk (@RingCrtCombine.{succ u} R addR mulR eI eJ a b) (@eq_trans.{succ p} P (@RingCrtPairMap.{succ p,succ u,succ v,succ w} R RI RJ P pair modI modJ (@RingCrtCombine.{succ u} R addR mulR eI eJ a b)) (pair (modI a) (modJ b)) y (@eq_congr2.{succ v,succ w,succ p} RI RJ P pair (modI (@RingCrtCombine.{succ u} R addR mulR eI eJ a b)) (modI a) (modJ (@RingCrtCombine.{succ u} R addR mulR eI eJ a b)) (modJ b) (combine_left a b) (combine_right a b)) (@eq_trans.{succ p} P (pair (modI a) (modJ b)) (pair (fst y) (snd y)) y (@eq_congr2.{succ v,succ w,succ p} RI RJ P pair (modI a) (fst y) (modJ b) (snd y) ha hb) (pair_eta y)))))
Constants
Mathlib.Algebra.Ring.ChineseRemainder.RingCrtCombine
Interface hash: sha256:f70f23929c9480fa4fc166a8af8aab342028b5e8b0d7b068496d919b9c0f41e3
Mathlib.Algebra.Ring.ChineseRemainder.RingCrtPairMap
Interface hash: sha256:4ada5d83f369f9f2d66a083321390e9826bd276026f0aa1d13a638a1c4f5c113
Mathlib.Algebra.Ring.FirstIsomorphism.Basic.RingImagePred
Interface hash: sha256:efd5770d70b83a8d9d15ac039cb28a52ddc9b1fccd28df0448d4c90bb9fec646
Std.Logic.Eq.Eq
Interface hash: sha256:ca4f8520fd678a809c3ebf0bc7fa38d3063ca4d231e79d567de888685449a015