Compfiles/Imo2025P6.lean
247 declarations, 0 contain sorry, 0 declared as axioms
International Mathematical Olympiad 2025, Problem 6
Consider a 2025 × 2025 grid of unit squares. Matilda wishes to place on the grid some rectangular tiles, possibly of different sizes, such that each side of every tile lies on a grid line and every unit square is covered by at most one tile. Determine the minimum number of tiles Matilda needs to place so that each row and each column of the grid has exactly one unit square that is not covered by any tile.
Imports (7)
Imported by 1 file
- abbrev
Imo2025P6.Pointline 38 sourceno axioms what this means
Statement uses:
NatProof uses:
Prod,Fin - abbrev
Imo2025P6.pxline 43 sourceno axioms what this means
Statement uses:
Nat, Imo2025P6.PointProof uses:
Prod.fst,Fin1 instances, coercions and auxiliary constants left out.
- abbrev
Imo2025P6.pyline 44 sourceno axioms what this means
Statement uses:
Nat, Imo2025P6.PointProof uses:
Prod.snd,Fin1 instances, coercions and auxiliary constants left out.
- structure
Imo2025P6.Matildaline 46 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero,Finset, Imo2025P6.Point2 instances, coercions and auxiliary constants left out.
- def
Imo2025P6.Matilda.memline 57 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,NeZero, Imo2025P6.MatildaProof uses:
And,LE.le,Imo2025P6.Matilda.x_min, Imo2025P6.px,Imo2025P6.Matilda.x_max,Imo2025P6.Matilda.y_min, Imo2025P6.py,Imo2025P6.Matilda.y_max5 instances, coercions and auxiliary constants left out.
- def
Imo2025P6.IsValidConfigurationline 60 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero,Finset, Imo2025P6.Point, Imo2025P6.MatildaProof uses:
And,Eq,Finset.card,Membership.mem, Imo2025P6.px, Imo2025P6.py,Not,ExistsUnique, Imo2025P6.Matilda.mem6 instances, coercions and auxiliary constants left out.
- def
Imo2025P6.IsMinMatildaCountline 67 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZeroProof uses:
And,Finset, Imo2025P6.Point, Imo2025P6.Matilda, Imo2025P6.IsValidConfiguration,LE.le,Finset.card,Exists,Eq5 instances, coercions and auxiliary constants left out.
- def
Imo2025P6.incSequencesToline 88 source - def
Imo2025P6.decSequencesToline 92 source - lemma
Imo2025P6.one_mem_incSequencesToline 96 source - lemma
Imo2025P6.one_mem_decSequencesToline 98 source - lemma
Imo2025P6.incSequencesTo_nonemptyline 101 source - lemma
Imo2025P6.decSequencesTo_nonemptyline 104 source - def
Imo2025P6.maxIncSequencesToline 107 source - def
Imo2025P6.maxDecSequencesToline 110 source - lemma
Imo2025P6.one_le_maxIncSequencesToline 113 source - lemma
Imo2025P6.one_le_maxDecSequencesToline 116 source - lemma
Imo2025P6.maxIncSequencesTo_memline 119 source - lemma
Imo2025P6.maxDecSequencesTo_memline 122 source - lemma
Imo2025P6.maxIncSequencesTo_ltline 125 source - lemma
Imo2025P6.maxDecSequencesTo_gtline 151 source - def
Imo2025P6.pairedline 155 source - lemma
Imo2025P6.paired_injectiveline 158 source - theorem
Imo2025P6.erdos_szekeresline 165 source - def
Imo2025P6.rectline 190 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.PointProof uses:
Finset.filter,And,LE.le, Imo2025P6.px,LT.lt, Imo2025P6.py,Finset.univ,Fin7 instances, coercions and auxiliary constants left out.
- lemma
Imo2025P6.mem_rectline 197 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat, Imo2025P6.Point,Iff,Membership.mem,Finset, Imo2025P6.rect,And,LE.le, Imo2025P6.px,LT.lt, Imo2025P6.pyProof uses:
of_eq_true,Eq.trans,True,congrFun',congrArg,Finset.filter,Finset.univ,Fin,true_and,iff_self15 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.chain_u_mono_leline 213 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,Membership.mem,LT.lt, Imo2025P6.px, Imo2025P6.py,Eq,LE.leProof uses:
Or,lt_or_eq_of_le,le_of_lt,Eq.le,congrArg13 instances, coercions and auxiliary constants left out.
Tactic trace: 6 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.chain_v_mono_leline 222 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,Membership.mem,LT.lt, Imo2025P6.px, Imo2025P6.py,Eq,LE.leProof uses:
Or,lt_or_eq_of_le,le_of_lt,Eq.le,congrArg,Eq.symm13 instances, coercions and auxiliary constants left out.
Tactic trace: 6 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.chain_u_inj_yline 231 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,Membership.mem,LT.lt, Imo2025P6.px, Imo2025P6.py,EqProof uses:
Or,lt_trichotomy,False.elim,Mathlib.Tactic.Linarith.lt_irrefl,Int,OfNat.ofNat,Eq.mp,HAdd.hAdd,Neg.neg,HSub.hSub,congrArg,Mathlib.Tactic.Ring.of_eq,Mathlib.Tactic.Ring.Common.add_congr,Int.rawCast,inferInstance,Ring,Int.negOfNat,HMul.hMul,HPow.hPow,Nat.rawCastand 41 more67 instances, coercions and auxiliary constants left out.
Tactic trace: 10 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.chain_v_inj_yline 241 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,Membership.mem,LT.lt, Imo2025P6.px, Imo2025P6.py,EqProof uses:
Or,lt_trichotomy,False.elim,Mathlib.Tactic.Linarith.lt_irrefl,Int,OfNat.ofNat,Eq.mp,HAdd.hAdd,Neg.neg,HSub.hSub,congrArg,Mathlib.Tactic.Ring.of_eq,Mathlib.Tactic.Ring.Common.add_congr,Int.rawCast,inferInstance,Ring,Int.negOfNat,HMul.hMul,HPow.hPow,Nat.rawCastand 41 more67 instances, coercions and auxiliary constants left out.
Tactic trace: 10 steps
Open to load the checked before-and-after goal states.
- def
Imo2025P6.u_lowerline 257 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.PointProof uses:
Finset.biUnion,Fin, Imo2025P6.rect, Imo2025P6.px,OfNat.ofNat,HAdd.hAdd, Imo2025P6.py5 instances, coercions and auxiliary constants left out.
- def
Imo2025P6.u_upperline 258 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.PointProof uses:
Finset.biUnion,Fin, Imo2025P6.rect,OfNat.ofNat,HAdd.hAdd, Imo2025P6.px, Imo2025P6.py5 instances, coercions and auxiliary constants left out.
- def
Imo2025P6.v_lowerline 259 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.PointProof uses:
Finset.biUnion,Fin, Imo2025P6.rect,OfNat.ofNat,HAdd.hAdd, Imo2025P6.px, Imo2025P6.py5 instances, coercions and auxiliary constants left out.
- def
Imo2025P6.v_upperline 260 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.PointProof uses:
Finset.biUnion,Fin, Imo2025P6.rect, Imo2025P6.px, Imo2025P6.py2 instances, coercions and auxiliary constants left out.
- lemma
Imo2025P6.mem_u_lowerline 263 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,Iff,Membership.mem, Imo2025P6.u_lower,Exists,And,LE.le, Imo2025P6.px, Imo2025P6.pyProof uses:
of_eq_true,Eq.trans,Fin,Prod.mk,Prod.fst,Prod.snd,True,congr,congrArg,Finset.biUnion, Imo2025P6.rect,OfNat.ofNat,HAdd.hAdd,funext,LT.lt,true_and,Prod,iff_self36 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.mem_u_upperline 267 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,Iff,Membership.mem, Imo2025P6.u_upper,Exists,And,LE.le, Imo2025P6.px, Imo2025P6.pyProof uses:
of_eq_true,Eq.trans,Fin,Prod.mk,Prod.fst,Prod.snd,True,congr,congrArg,Finset.biUnion, Imo2025P6.rect,OfNat.ofNat,HAdd.hAdd,funext,LT.lt,and_true,true_and,Prod,iff_self36 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.mem_v_lowerline 271 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,Iff,Membership.mem, Imo2025P6.v_lower,Exists,And,LE.le, Imo2025P6.px, Imo2025P6.pyProof uses:
of_eq_true,Eq.trans,Fin,Prod.mk,Prod.fst,Prod.snd,True,congr,congrArg,Finset.biUnion, Imo2025P6.rect,OfNat.ofNat,HAdd.hAdd,funext,LT.lt,true_and,Prod,iff_self35 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.mem_v_upperline 275 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,Iff,Membership.mem, Imo2025P6.v_upper,Exists,And,LE.le, Imo2025P6.px, Imo2025P6.pyProof uses:
of_eq_true,Eq.trans,Fin,Prod.mk,Prod.fst,Prod.snd,True,congr,congrArg,Finset.biUnion, Imo2025P6.rect,funext,LT.lt,and_true,true_and,Prod,iff_self15 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
- def
Imo2025P6.regionWExtendline 285 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.PointProof uses:
Inter.inter,Fin, Imo2025P6.u_lower, Imo2025P6.v_lower3 instances, coercions and auxiliary constants left out.
- def
Imo2025P6.regionNExtendline 286 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.PointProof uses:
Inter.inter,Fin, Imo2025P6.u_upper, Imo2025P6.v_lower3 instances, coercions and auxiliary constants left out.
- def
Imo2025P6.regionSExtendline 287 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.PointProof uses:
Inter.inter,Fin, Imo2025P6.u_lower, Imo2025P6.v_upper3 instances, coercions and auxiliary constants left out.
- def
Imo2025P6.regionEExtendline 288 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.PointProof uses:
Inter.inter,Fin, Imo2025P6.u_upper, Imo2025P6.v_upper3 instances, coercions and auxiliary constants left out.
- lemma
Imo2025P6.mem_regionWExtendline 291 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,Iff,Membership.mem, Imo2025P6.regionWExtend,And, Imo2025P6.u_lower, Imo2025P6.v_lowerProof uses:
id,of_eq_true,Inter.inter,Fin,Eq.trans,Exists,Prod.mk,LE.le,Prod.fst,Prod.snd,True,congr,congrArg, Imo2025P6.px, Imo2025P6.py,funext,Prod,iff_self14 instances, coercions and auxiliary constants left out.
Tactic trace: 2 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.mem_regionNExtendline 294 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,Iff,Membership.mem, Imo2025P6.regionNExtend,And, Imo2025P6.u_upper, Imo2025P6.v_lowerProof uses:
id,of_eq_true,Inter.inter,Fin,Eq.trans,Exists,Prod.mk,LE.le,Prod.fst,Prod.snd,True,congr,congrArg, Imo2025P6.px, Imo2025P6.py,funext,Prod,iff_self14 instances, coercions and auxiliary constants left out.
Tactic trace: 2 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.mem_regionSExtendline 297 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,Iff,Membership.mem, Imo2025P6.regionSExtend,And, Imo2025P6.u_lower, Imo2025P6.v_upperProof uses:
id,of_eq_true,Inter.inter,Fin,Eq.trans,Exists,Prod.mk,LE.le,Prod.fst,Prod.snd,True,congr,congrArg, Imo2025P6.px, Imo2025P6.py,funext,Prod,iff_self14 instances, coercions and auxiliary constants left out.
Tactic trace: 2 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.mem_regionEExtendline 300 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,Iff,Membership.mem, Imo2025P6.regionEExtend,And, Imo2025P6.u_upper, Imo2025P6.v_upperProof uses:
id,of_eq_true,Inter.inter,Fin,Eq.trans,Exists,Prod.mk,LE.le,Prod.fst,Prod.snd,True,congr,congrArg, Imo2025P6.px, Imo2025P6.py,funext,Prod,iff_self14 instances, coercions and auxiliary constants left out.
Tactic trace: 2 steps
Open to load the checked before-and-after goal states.
- def
Imo2025P6.targetsWline 303 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.PointProof uses:
Finset.filter,Membership.mem, Imo2025P6.regionWExtend,Fin5 instances, coercions and auxiliary constants left out.
- def
Imo2025P6.targetsNline 305 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.PointProof uses:
Finset.filter,Membership.mem, Imo2025P6.regionNExtend,Fin5 instances, coercions and auxiliary constants left out.
- def
Imo2025P6.targetsSline 307 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.PointProof uses:
Finset.filter,Membership.mem, Imo2025P6.regionSExtend,Fin5 instances, coercions and auxiliary constants left out.
- def
Imo2025P6.targetsEline 309 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.PointProof uses:
Finset.filter,Membership.mem, Imo2025P6.regionEExtend,Fin5 instances, coercions and auxiliary constants left out.
- lemma
Imo2025P6.mem_targetsWline 313 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,Iff,Membership.mem, Imo2025P6.targetsW,And, Imo2025P6.regionWExtendProof uses:
of_eq_true,Eq.trans,Exists,Fin,Prod.mk,LE.le,Prod.fst,Prod.snd,True,congr,congrArg,Finset.filter,congrFun',Finset.filter_congr,Iff.of_eq, Imo2025P6.u_lower, Imo2025P6.v_lower, Imo2025P6.px, Imo2025P6.py,funextand 2 more18 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.mem_targetsNline 317 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,Iff,Membership.mem, Imo2025P6.targetsN,And, Imo2025P6.regionNExtendProof uses:
of_eq_true,Eq.trans,Exists,Fin,Prod.mk,LE.le,Prod.fst,Prod.snd,True,congr,congrArg,Finset.filter,congrFun',Finset.filter_congr,Iff.of_eq, Imo2025P6.u_upper, Imo2025P6.v_lower, Imo2025P6.px, Imo2025P6.py,funextand 2 more18 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.mem_targetsSline 321 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,Iff,Membership.mem, Imo2025P6.targetsS,And, Imo2025P6.regionSExtendProof uses:
of_eq_true,Eq.trans,Exists,Fin,Prod.mk,LE.le,Prod.fst,Prod.snd,True,congr,congrArg,Finset.filter,congrFun',Finset.filter_congr,Iff.of_eq, Imo2025P6.u_lower, Imo2025P6.v_upper, Imo2025P6.px, Imo2025P6.py,funextand 2 more18 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.mem_targetsEline 325 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,Iff,Membership.mem, Imo2025P6.targetsE,And, Imo2025P6.regionEExtendProof uses:
of_eq_true,Eq.trans,Exists,Fin,Prod.mk,LE.le,Prod.fst,Prod.snd,True,congr,congrArg,Finset.filter,congrFun',Finset.filter_congr,Iff.of_eq, Imo2025P6.u_upper, Imo2025P6.v_upper, Imo2025P6.px, Imo2025P6.py,funextand 2 more18 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
- def
Imo2025P6.targetsWinline 329 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.PointProof uses:
Finset.filter,LT.lt,OfNat.ofNat, Imo2025P6.py, Imo2025P6.targetsW3 instances, coercions and auxiliary constants left out.
- def
Imo2025P6.targetsNinline 330 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.PointProof uses:
Finset.filter,LT.lt,OfNat.ofNat, Imo2025P6.px, Imo2025P6.targetsN3 instances, coercions and auxiliary constants left out.
- def
Imo2025P6.targetsSinline 331 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.PointProof uses:
Finset.filter,LT.lt, Imo2025P6.px,HSub.hSub,OfNat.ofNat, Imo2025P6.targetsS5 instances, coercions and auxiliary constants left out.
- def
Imo2025P6.targetsEinline 332 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.PointProof uses:
Finset.filter,LT.lt, Imo2025P6.py,HSub.hSub,OfNat.ofNat, Imo2025P6.targetsE5 instances, coercions and auxiliary constants left out.
- lemma
Imo2025P6.mem_targetsWinline 335 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,Iff,Membership.mem, Imo2025P6.targetsWin,And, Imo2025P6.targetsW,LT.lt,OfNat.ofNat, Imo2025P6.pyProof uses:
of_eq_true,Eq.trans,Exists,Fin,Prod.mk,LE.le,Prod.fst,Prod.snd,True,congr,congrArg,Finset.filter,congrFun', Imo2025P6.regionWExtend, Imo2025P6.u_lower, Imo2025P6.v_lower, Imo2025P6.px,funext,Prod,iff_self18 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.mem_targetsNinline 338 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,Iff,Membership.mem, Imo2025P6.targetsNin,And, Imo2025P6.targetsN,LT.lt,OfNat.ofNat, Imo2025P6.pxProof uses:
of_eq_true,Eq.trans,Exists,Fin,Prod.mk,LE.le,Prod.fst,Prod.snd,True,congr,congrArg,Finset.filter,congrFun', Imo2025P6.regionNExtend, Imo2025P6.u_upper, Imo2025P6.v_lower, Imo2025P6.py,funext,Prod,iff_self18 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.mem_targetsSinline 341 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,Iff,Membership.mem, Imo2025P6.targetsSin,And, Imo2025P6.targetsS,LT.lt, Imo2025P6.px,HSub.hSub,OfNat.ofNatProof uses:
of_eq_true,Eq.trans,Exists,Fin,Prod.mk,LE.le,Prod.fst,Prod.snd,True,congr,congrArg,Finset.filter,congrFun', Imo2025P6.regionSExtend, Imo2025P6.u_lower, Imo2025P6.v_upper, Imo2025P6.py,funext,Prod,iff_self22 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.mem_targetsEinline 344 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,Iff,Membership.mem, Imo2025P6.targetsEin,And, Imo2025P6.targetsE,LT.lt, Imo2025P6.py,HSub.hSub,OfNat.ofNatProof uses:
of_eq_true,Eq.trans,Exists,Fin,Prod.mk,LE.le,Prod.fst,Prod.snd,True,congr,congrArg,Finset.filter,congrFun', Imo2025P6.regionEExtend, Imo2025P6.u_upper, Imo2025P6.v_upper, Imo2025P6.px,funext,Prod,iff_self22 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.card_filter_ge_sub_oneline 347 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
DecidableEq,Finset,DecidablePred,LE.le,Nat,Finset.card,Finset.filter,Not,OfNat.ofNat,GE.ge,HSub.hSubProof uses:
Eq,HAdd.hAdd,Eq.symm,Finset.card_filter_add_card_filter_not11 instances, coercions and auxiliary constants left out.
Tactic trace: 2 steps
Open to load the checked before-and-after goal states.
- theorem
Imo2025P6.targetsWin_inequalityline 372 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,Membership.mem,Eq, Imo2025P6.py,GE.ge,Finset.card, Imo2025P6.targetsWin,HSub.hSub, Imo2025P6.targetsW,OfNat.ofNatProof uses: Imo2025P6.card_filter_ge_sub_one,
Fin,LT.lt,Eq.mpr,LE.le,Finset.filter,Not,id,congrArg,propext,Finset.card_le_one_iff,Iff,And, Imo2025P6.regionWExtend, Imo2025P6.mem_targetsW,And.left,Eq.mp,Eq.trans,congrFun',Finset.filter_congrand 5 more24 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
- theorem
Imo2025P6.targetsNin_inequalityline 378 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,Membership.mem,Eq, Imo2025P6.px,GE.ge,Finset.card, Imo2025P6.targetsNin,HSub.hSub, Imo2025P6.targetsN,OfNat.ofNatProof uses: Imo2025P6.card_filter_ge_sub_one,
Fin,LT.lt,Eq.mpr,LE.le,Finset.filter,Not,id,congrArg,propext,Finset.card_le_one_iff,Iff,And, Imo2025P6.regionNExtend, Imo2025P6.mem_targetsN,And.left,Eq.mp,Eq.trans,congrFun',Finset.filter_congrand 5 more24 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
- theorem
Imo2025P6.targetsSin_inequalityline 384 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,Membership.mem,Eq, Imo2025P6.px,GE.ge,Finset.card, Imo2025P6.targetsSin,HSub.hSub, Imo2025P6.targetsS,OfNat.ofNatProof uses: Imo2025P6.card_filter_ge_sub_one,
Fin,LT.lt,Eq.mpr,LE.le,Finset.filter,Not,id,congrArg,propext,Finset.card_le_one_iff,Iff,And, Imo2025P6.regionSExtend, Imo2025P6.mem_targetsS,And.left,Eq.mp,Eq.trans,congrFun',Finset.filter_congrand 5 more26 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
- theorem
Imo2025P6.targetsEin_inequalityline 390 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,Membership.mem,Eq, Imo2025P6.py,GE.ge,Finset.card, Imo2025P6.targetsEin,HSub.hSub, Imo2025P6.targetsE,OfNat.ofNatProof uses: Imo2025P6.card_filter_ge_sub_one,
Fin,LT.lt,Eq.mpr,LE.le,Finset.filter,Not,id,congrArg,propext,Finset.card_le_one_iff,Iff,And, Imo2025P6.regionEExtend, Imo2025P6.mem_targetsE,And.left,Eq.mp,Eq.trans,congrFun',Finset.filter_congrand 5 more26 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
- def
Imo2025P6.incidence_countline 402 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.PointProof uses:
HAdd.hAdd,ite,Membership.mem, Imo2025P6.targetsW,Fin,OfNat.ofNat, Imo2025P6.targetsN, Imo2025P6.targetsE, Imo2025P6.targetsS8 instances, coercions and auxiliary constants left out.
- lemma
Imo2025P6.sum_card_eq_sum_incidenceline 408 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,Eq,HAdd.hAdd,Finset.card, Imo2025P6.targetsW, Imo2025P6.targetsN, Imo2025P6.targetsE, Imo2025P6.targetsS,Finset.sum, Imo2025P6.incidence_countProof uses:
id,Eq.mpr,ite,Membership.mem,Fin,OfNat.ofNat,congrArg,Finset.sum_add_distrib,HAdd,Eq.rec,Eq.refl,Finset.card_eq_sum_ones,Finset.filter,Eq.symm,Finset.sum_filter,Finset.sum_congr,Finset.ext,Iff,And,of_eq_trueand 24 more36 instances, coercions and auxiliary constants left out.
Tactic trace: 14 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.u_parts_intersection_eq_uline 422 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,Membership.mem,LT.lt, Imo2025P6.px, Imo2025P6.py,Eq,Inter.inter,Fin, Imo2025P6.u_lower, Imo2025P6.u_upperProof uses:
Finset.ext,Eq.mpr,Iff,And,Exists,Prod.mk,LE.le,Prod.fst,Prod.snd,id,congrFun',congrArg,Eq.trans,congr,funext,Prod,Iff.intro,Or,lt_trichotomy,False.elimand 63 more89 instances, coercions and auxiliary constants left out.
Tactic trace: 26 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.v_parts_intersection_eq_vline 442 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,Membership.mem,LT.lt, Imo2025P6.px, Imo2025P6.py,Eq,Inter.inter,Fin, Imo2025P6.v_lower, Imo2025P6.v_upperProof uses:
Finset.ext,Eq.mpr,Iff,And,Exists,Prod.mk,LE.le,Prod.fst,Prod.snd,id,congrFun',congrArg,Eq.trans,congr,funext,Prod,Iff.intro,Or,lt_trichotomy,False.elimand 63 more89 instances, coercions and auxiliary constants left out.
Tactic trace: 26 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.inter_card_le_oneline 462 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,Membership.mem,LT.lt, Imo2025P6.px, Imo2025P6.py,Eq,LE.le,Finset.card,Inter.inter,Fin,OfNat.ofNatProof uses:
Decidable.byContradiction,Not,Exists,And,Ne,False,Eq.mp,congrArg,propext,Finset.one_lt_card_iff,not_le,Or,lt_trichotomy,And.left,Finset.mem_inter,And.right,False.elim,Mathlib.Tactic.Linarith.lt_irrefl,Int,HAdd.hAddand 57 more85 instances, coercions and auxiliary constants left out.
Tactic trace: 16 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.incidence_count_of_pivotline 481 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,Eq,Inter.inter,Fin,Singleton.singleton,Membership.mem, Imo2025P6.incidence_count,OfNat.ofNatProof uses:
Finset.mem_of_mem_inter_left,Eq.mpr,id,congrArg,of_eq_true,Eq.trans,True,eq_self,Finset.mem_of_mem_inter_right, Imo2025P6.u_lower,Exists,And,LE.le, Imo2025P6.px, Imo2025P6.py,propext, Imo2025P6.mem_u_lower,Exists.intro,And.intro,le_refland 26 more26 instances, coercions and auxiliary constants left out.
Tactic trace: 34 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.incidence_count_of_u_diffline 501 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,Membership.mem,Not,Eq,Inter.inter,Fin,Singleton.singleton,LE.le,LT.lt, Imo2025P6.px, Imo2025P6.py, Imo2025P6.incidence_count,OfNat.ofNatProof uses:
Finset.mem_of_mem_inter_right,Eq.mpr,id,congrArg,of_eq_true,Eq.trans,True,eq_self,Finset.mem_of_mem_inter_left, Imo2025P6.u_lower,Exists,And,propext, Imo2025P6.mem_u_lower,Exists.intro,And.intro,le_refl, Imo2025P6.u_upper, Imo2025P6.mem_u_upper,Iffand 38 more39 instances, coercions and auxiliary constants left out.
Tactic trace: 50 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.incidence_count_of_v_diffline 549 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,Membership.mem,Not,Eq,Inter.inter,Fin,Singleton.singleton,LE.le,LT.lt, Imo2025P6.px, Imo2025P6.py, Imo2025P6.incidence_count,OfNat.ofNatProof uses:
Finset.mem_of_mem_inter_right,Eq.mpr,id,congrArg,of_eq_true,Eq.trans,True,eq_self,Finset.mem_of_mem_inter_left, Imo2025P6.v_lower,Exists,And,propext, Imo2025P6.mem_v_lower,Exists.intro,And.intro,le_refl, Imo2025P6.v_upper, Imo2025P6.mem_v_upper,Iffand 38 more39 instances, coercions and auxiliary constants left out.
Tactic trace: 50 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.covering_of_maximal_uline 596 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,Membership.mem,Not,LT.lt, Imo2025P6.px, Imo2025P6.py,False,Or, Imo2025P6.u_lower, Imo2025P6.u_upperProof uses:
Decidable.byContradiction,Fin,And,Eq.mp,Nat.lt_of_not_le,LE.le,Eq.trans,Exists,congrArg,forall_congr,implies_congr,Eq.refl,le_of_lt18 instances, coercions and auxiliary constants left out.
Tactic trace: 14 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.covering_of_maximal_vline 616 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,Membership.mem,Not,LT.lt, Imo2025P6.px, Imo2025P6.py,False,Or, Imo2025P6.v_lower, Imo2025P6.v_upperProof uses:
Decidable.byContradiction,Fin,And,Eq.mp,LE.le,le_of_lt,Nat.lt_of_not_le,Eq.trans,Exists,congrArg,forall_congr,implies_congr,Eq.refl18 instances, coercions and auxiliary constants left out.
Tactic trace: 16 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.incidence_count_of_othersline 638 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,Membership.mem,Not,LT.lt, Imo2025P6.px, Imo2025P6.py,Eq,False, Imo2025P6.incidence_count,OfNat.ofNatProof uses:
Or, Imo2025P6.u_lower, Imo2025P6.u_upper, Imo2025P6.covering_of_maximal_u,And,Eq.mpr,Inter.inter,Fin,id,congrArg,Eq.symm, Imo2025P6.u_parts_intersection_eq_u,Iff.mpr,Finset.mem_inter,And.intro, Imo2025P6.v_lower, Imo2025P6.v_upper, Imo2025P6.covering_of_maximal_v, Imo2025P6.v_parts_intersection_eq_v,HAdd.hAddand 27 more25 instances, coercions and auxiliary constants left out.
Tactic trace: 24 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.px_mk_valline 678 sourceno axioms what this means
Statement uses:
Nat,Fin,Eq, Imo2025P6.px,Prod.mkProof uses:
rfl1 instances, coercions and auxiliary constants left out.
- lemma
Imo2025P6.py_mk_valline 679 sourceno axioms what this means
Statement uses:
Nat,Fin,Eq, Imo2025P6.py,Prod.mkProof uses:
rfl1 instances, coercions and auxiliary constants left out.
- lemma
Imo2025P6.fin_val_sub_one_eqline 683 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero,Fin,LT.lt,OfNat.ofNat,Eq,HSub.hSubProof uses:
Fin.val_sub_one_of_ne_zero,ne_of_gt,Fin.neZero17 instances, coercions and auxiliary constants left out.
Tactic trace: 2 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.fin_val_add_one_eqline 687 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero,Fin,LT.lt,HSub.hSub,OfNat.ofNat,Eq,HAdd.hAddProof uses:
Eq.mpr,HMod.hMod,id,congrArg,Fin.val_add,congrFun',Nat.add_mod_mod,Nat.mod_eq_of_lt,Eq.refl25 instances, coercions and auxiliary constants left out.
Tactic trace: 4 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.source_on_face_Wline 691 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero,Finset, Imo2025P6.Point, Imo2025P6.Matilda,Membership.mem,LT.lt,OfNat.ofNat, Imo2025P6.py, Imo2025P6.Matilda.mem,Prod.mk,Fin,Prod.fst,HSub.hSub,Prod.snd,And,Eq,HAdd.hAdd,Imo2025P6.Matilda.y_max,LE.leand 3 moreProof uses: Imo2025P6.fin_val_sub_one_eq,
id,Not,Imo2025P6.Matilda.y_min,Imo2025P6.Matilda.h_disjoint,Eq.mp,Eq.trans,Mathlib.Tactic.Push.not_and_eq,implies_congr,Eq.refl,And.intro36 instances, coercions and auxiliary constants left out.
Tactic trace: 14 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.source_on_face_Eline 702 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero,Finset, Imo2025P6.Point, Imo2025P6.Matilda,Membership.mem,LT.lt, Imo2025P6.py,HSub.hSub,OfNat.ofNat, Imo2025P6.Matilda.mem,Prod.mk,Fin,Prod.fst,HAdd.hAdd,Prod.snd,And,Eq,Imo2025P6.Matilda.y_min,LE.leand 3 moreProof uses: Imo2025P6.fin_val_add_one_eq,
id,Not,Imo2025P6.Matilda.y_max,Imo2025P6.Matilda.h_disjoint,Decidable.byContradiction,dite,False,absurd,Eq.mp,Eq.trans,Mathlib.Tactic.Push.not_and_eq,implies_congr,Eq.refl40 instances, coercions and auxiliary constants left out.
Tactic trace: 17 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.source_on_face_Nline 716 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero,Finset, Imo2025P6.Point, Imo2025P6.Matilda,Membership.mem,LT.lt,OfNat.ofNat, Imo2025P6.px, Imo2025P6.Matilda.mem,Prod.mk,Fin,HSub.hSub,Prod.fst,Prod.snd,And,Eq,HAdd.hAdd,Imo2025P6.Matilda.x_max,LE.leand 3 moreProof uses: Imo2025P6.fin_val_sub_one_eq,
id,Not,Imo2025P6.Matilda.x_min,Imo2025P6.Matilda.h_disjoint,Decidable.byContradiction,dite,False,absurd,Eq.mp,Eq.trans,Mathlib.Tactic.Push.not_and_eq,implies_congr,Eq.refl39 instances, coercions and auxiliary constants left out.
Tactic trace: 17 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.source_on_face_Sline 729 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero,Finset, Imo2025P6.Point, Imo2025P6.Matilda,Membership.mem,LT.lt, Imo2025P6.px,HSub.hSub,OfNat.ofNat, Imo2025P6.Matilda.mem,Prod.mk,Fin,HAdd.hAdd,Prod.fst,Prod.snd,And,Eq,Imo2025P6.Matilda.x_min,LE.leand 3 moreProof uses: Imo2025P6.fin_val_add_one_eq,
id,Not,Imo2025P6.Matilda.x_max,Imo2025P6.Matilda.h_disjoint,Decidable.byContradiction,dite,False,absurd,Eq.mp,Eq.trans,Mathlib.Tactic.Push.not_and_eq,implies_congr,Eq.refl40 instances, coercions and auxiliary constants left out.
Tactic trace: 17 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.matilda_eq_iff_bounds_eqline 747 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,NeZero, Imo2025P6.Matilda,Iff,Eq,And,Imo2025P6.Matilda.x_min,Imo2025P6.Matilda.x_max,Imo2025P6.Matilda.y_min,Imo2025P6.Matilda.y_maxProof uses:
Iff.intro,Eq.mpr,id,congrArg,of_eq_true,Eq.trans,True,congr,eq_self,and_self,LE.le,LT.lt,Membership.mem,Not, Imo2025P6.px, Imo2025P6.py,Imo2025P6.Matilda.mk,Eq.refl11 instances, coercions and auxiliary constants left out.
Tactic trace: 18 steps
Open to load the checked before-and-after goal states.
- instance
Imo2025P6.(instance at line 760)line 760 source - instance
Imo2025P6.(instance at line 774)line 774 source - inductive
Imo2025P6.LabelTypeline 777 sourceno axioms what this means
Tactic trace: 3 steps
Open to load the checked before-and-after goal states.
- instance
Imo2025P6.(instance at line 781)line 781 source - structure
Imo2025P6.Labelline 785 sourceno axioms what this means
Statement uses:
Nat - lemma
Imo2025P6.Label.source_ne_of_neline 791 source - def
Imo2025P6.Label.embline 796 sourceno axioms what this means
Statement uses:
Nat, Imo2025P6.LabelType,Function.Embedding, Imo2025P6.Point, Imo2025P6.LabelProof uses:
Function.Embedding.mk,Imo2025P6.Label.mk1 instances, coercions and auxiliary constants left out.
Tactic trace: 2 steps
Open to load the checked before-and-after goal states.
- def
Imo2025P6.label_posline 800 sourcestandard axioms: propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.Label,Prod, Imo2025P6.PointProof uses:
Imo2025P6.Label.source,Imo2025P6.label_pos.match_1, Imo2025P6.LabelType,Imo2025P6.Label.type,Unit,Prod.mk,Fin,Prod.fst,HSub.hSub,Prod.snd,OfNat.ofNat,HAdd.hAdd9 instances, coercions and auxiliary constants left out.
- def
Imo2025P6.coversline 810 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,NeZero, Imo2025P6.Matilda, Imo2025P6.LabelProof uses: Imo2025P6.Matilda.mem,
Prod.snd, Imo2025P6.label_pos4 instances, coercions and auxiliary constants left out.
Tactic trace: 5 steps
Open to load the checked before-and-after goal states.
- instance
Imo2025P6.(instance at line 813)line 813 source - lemma
Imo2025P6.matilda_count_ge_label_countline 823 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero,Finset, Imo2025P6.Point, Imo2025P6.Label,Membership.mem,Not,Prod.snd, Imo2025P6.label_pos, Imo2025P6.Matilda,LE.le,Finset.card,Finset.filter, Imo2025P6.covers,OfNat.ofNat,ExistsUnique,And, Imo2025P6.Matilda.memProof uses:
Subtype,Exists.choose,Eq,Subtype.mk,And.left,Exists.choose_spec,Function.Injective,And.right,Eq.mpr,Subtype.property,id,congrArg,Eq.mp,rfl,Subtype.mk.injEq,Subtype.ext,propext,Finset.card_le_one_iff,Iff.mpr,Finset.mem_filterand 2 more17 instances, coercions and auxiliary constants left out.
Tactic trace: 20 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.fin_ne_sub_oneline 854 source - lemma
Imo2025P6.fin_ne_add_oneline 863 source - lemma
Imo2025P6.label_pos_W_absurdline 871 source - lemma
Imo2025P6.label_pos_N_absurdline 879 source - lemma
Imo2025P6.label_pos_E_absurdline 887 source - lemma
Imo2025P6.label_pos_S_absurdline 895 source - lemma
Imo2025P6.am_gm_bound_natline 903 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,LE.le,HMul.hMul,Nat.sqrt,OfNat.ofNat,HAdd.hAddProof uses:
Nat.mul_le_mul_left,Trans.trans,Eq,HPow.hPow,Mathlib.Tactic.Ring.of_eq,Nat.rawCast,Mathlib.Tactic.Ring.Common.mul_congr,Mathlib.Tactic.Ring.cast_pos,Mathlib.Meta.NormNum.isNat_ofNat,Eq.refl,Mathlib.Tactic.Ring.Common.atom_pf,rfl,Eq.mpr,id,congrArg,Eq.symm,Mathlib.Tactic.Ring.Common.add_mul,Mathlib.Tactic.Ring.Common.mul_add,Mathlib.Tactic.Ring.Common.mul_pf_left,Mathlib.Tactic.Ring.Common.mul_pf_rightand 25 more52 instances, coercions and auxiliary constants left out.
Tactic trace: 6 steps
Open to load the checked before-and-after goal states.
- structure
Imo2025P6.BaseSetupline 917 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero2 instances, coercions and auxiliary constants left out.
- lemma
Imo2025P6.BaseSetup.u_mono_leline 948 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.BaseSetup, Imo2025P6.Point,Membership.mem,Finset,Imo2025P6.BaseSetup.u,LE.le, Imo2025P6.px, Imo2025P6.pyProof uses: Imo2025P6.chain_u_mono_le,
Imo2025P6.BaseSetup.h_u_mono,Imo2025P6.BaseSetup.h_u_inj7 instances, coercions and auxiliary constants left out.
- lemma
Imo2025P6.BaseSetup.v_mono_leline 950 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.BaseSetup, Imo2025P6.Point,Membership.mem,Finset,Imo2025P6.BaseSetup.v,LE.le, Imo2025P6.px, Imo2025P6.pyProof uses: Imo2025P6.chain_v_mono_le,
Imo2025P6.BaseSetup.h_v_mono,Imo2025P6.BaseSetup.h_v_inj7 instances, coercions and auxiliary constants left out.
- lemma
Imo2025P6.BaseSetup.u_inj_yline 952 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.BaseSetup, Imo2025P6.Point,Membership.mem,Finset,Imo2025P6.BaseSetup.u,Eq, Imo2025P6.pyProof uses: Imo2025P6.chain_u_inj_y,
Imo2025P6.BaseSetup.h_u_mono,Imo2025P6.BaseSetup.h_u_inj6 instances, coercions and auxiliary constants left out.
- lemma
Imo2025P6.BaseSetup.v_inj_yline 954 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.BaseSetup, Imo2025P6.Point,Membership.mem,Finset,Imo2025P6.BaseSetup.v,Eq, Imo2025P6.pyProof uses: Imo2025P6.chain_v_inj_y,
Imo2025P6.BaseSetup.h_v_mono,Imo2025P6.BaseSetup.h_v_inj6 instances, coercions and auxiliary constants left out.
- lemma
Imo2025P6.BaseSetup.union_subline 957 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.BaseSetup,LE.le,Finset, Imo2025P6.Point,Union.union,Fin,Imo2025P6.BaseSetup.u,Imo2025P6.BaseSetup.v,Imo2025P6.BaseSetup.all_blackProof uses:
Finset.union_subset,Imo2025P6.BaseSetup.hu_sub,Imo2025P6.BaseSetup.hv_sub12 instances, coercions and auxiliary constants left out.
- lemma
Imo2025P6.matilda_covers_at_most_one_coreline 961 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero,Finset, Imo2025P6.Point,Membership.mem,Eq, Imo2025P6.px, Imo2025P6.py,LE.le, Imo2025P6.Matilda, Imo2025P6.Label,Ne, Imo2025P6.Matilda.mem,Prod.snd, Imo2025P6.label_pos,And, Imo2025P6.LabelType,Imo2025P6.Label.type,Imo2025P6.LabelType.W, Imo2025P6.targetsWin and 9 moreProof uses:
And.left,HAdd.hAdd,Imo2025P6.Matilda.y_max,OfNat.ofNat,Imo2025P6.Matilda.x_min,Imo2025P6.Matilda.x_max, Imo2025P6.source_on_face_W, Imo2025P6.regionWExtend,LT.lt,Eq.mp,Eq.trans, Imo2025P6.targetsW,congrFun',congrArg,And.right,Prod.fst,Fin,Imo2025P6.Matilda.y_min,HSub.hSub,congrand 97 more124 instances, coercions and auxiliary constants left out.
Tactic trace: 266 steps (first 200 of 266)
Open to load the checked before-and-after goal states.
- structure
Imo2025P6.IntersectionSetupline 1236 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero2 instances, coercions and auxiliary constants left out.
- lemma
Imo2025P6.IntersectionSetup.pivot_mem_uline 1244 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.IntersectionSetup,Membership.mem, Imo2025P6.Point,Finset,Imo2025P6.BaseSetup.u,Imo2025P6.IntersectionSetup.toBaseSetup,Imo2025P6.IntersectionSetup.pivotProof uses:
Finset.mem_of_mem_inter_left,Fin,Imo2025P6.BaseSetup.v,Eq.mpr,Inter.inter,Singleton.singleton,id,Eq,congrArg,Imo2025P6.IntersectionSetup.h_inter,of_eq_true,Eq.trans,True,eq_self13 instances, coercions and auxiliary constants left out.
Tactic trace: 2 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.IntersectionSetup.pivot_mem_vline 1246 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.IntersectionSetup,Membership.mem, Imo2025P6.Point,Finset,Imo2025P6.BaseSetup.v,Imo2025P6.IntersectionSetup.toBaseSetup,Imo2025P6.IntersectionSetup.pivotProof uses:
Finset.mem_of_mem_inter_right,Fin,Imo2025P6.BaseSetup.u,Eq.mpr,Inter.inter,Singleton.singleton,id,Eq,congrArg,Imo2025P6.IntersectionSetup.h_inter,of_eq_true,Eq.trans,True,eq_self13 instances, coercions and auxiliary constants left out.
Tactic trace: 2 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.IntersectionSetup.a_posline 1249 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.IntersectionSetup,LE.le,OfNat.ofNat,Imo2025P6.BaseSetup.a,Imo2025P6.IntersectionSetup.toBaseSetupProof uses:
Eq.rec,Finset.card, Imo2025P6.Point,Imo2025P6.BaseSetup.u,Eq,Iff.mpr,LT.lt,Finset.Nonempty,Finset.card_pos,Exists.intro,Membership.mem,Finset,Imo2025P6.IntersectionSetup.pivot, Imo2025P6.IntersectionSetup.pivot_mem_u,Imo2025P6.BaseSetup.hu11 instances, coercions and auxiliary constants left out.
- lemma
Imo2025P6.IntersectionSetup.b_posline 1251 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.IntersectionSetup,LE.le,OfNat.ofNat,Imo2025P6.BaseSetup.b,Imo2025P6.IntersectionSetup.toBaseSetupProof uses:
Eq.rec,Finset.card, Imo2025P6.Point,Imo2025P6.BaseSetup.v,Eq,Iff.mpr,LT.lt,Finset.Nonempty,Finset.card_pos,Exists.intro,Membership.mem,Finset,Imo2025P6.IntersectionSetup.pivot, Imo2025P6.IntersectionSetup.pivot_mem_v,Imo2025P6.BaseSetup.hv11 instances, coercions and auxiliary constants left out.
- lemma
Imo2025P6.IntersectionSetup.disj_piv_uline 1254 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.IntersectionSetup,Disjoint,Finset, Imo2025P6.Point,Singleton.singleton,Imo2025P6.IntersectionSetup.pivot,SDiff.sdiff,Fin,Imo2025P6.BaseSetup.u,Imo2025P6.IntersectionSetup.toBaseSetupProof uses:
disjoint_sdiff_self_right14 instances, coercions and auxiliary constants left out.
- lemma
Imo2025P6.IntersectionSetup.disj_piv_vline 1255 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.IntersectionSetup,Disjoint,Finset, Imo2025P6.Point,Singleton.singleton,Imo2025P6.IntersectionSetup.pivot,SDiff.sdiff,Fin,Imo2025P6.BaseSetup.v,Imo2025P6.IntersectionSetup.toBaseSetupProof uses:
disjoint_sdiff_self_right14 instances, coercions and auxiliary constants left out.
- lemma
Imo2025P6.IntersectionSetup.disj_u_v_diffline 1256 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.IntersectionSetup,Disjoint,Finset, Imo2025P6.Point,SDiff.sdiff,Fin,Imo2025P6.BaseSetup.u,Imo2025P6.IntersectionSetup.toBaseSetup,Singleton.singleton,Imo2025P6.IntersectionSetup.pivot,Imo2025P6.BaseSetup.vProof uses:
Eq.mpr,Eq,Inter.inter,EmptyCollection.emptyCollection,id,congrArg,propext,Finset.disjoint_iff_inter_eq_empty,Finset.ext,Iff,Membership.mem,Not,Eq.trans,And,False,congr,congrFun',Finset.sdiff_inter_self_left,Finset.sdiff_inter_self_right,iff_falseand 3 more28 instances, coercions and auxiliary constants left out.
Tactic trace: 4 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.IntersectionSetup.disj_middleline 1258 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.IntersectionSetup,Disjoint,Finset, Imo2025P6.Point,Union.union,Fin,Singleton.singleton,Imo2025P6.IntersectionSetup.pivot,SDiff.sdiff,Imo2025P6.BaseSetup.u,Imo2025P6.IntersectionSetup.toBaseSetup,Imo2025P6.BaseSetup.vProof uses:
Eq.mpr,And,id,Eq,congrArg,propext,Finset.disjoint_union_left,And.intro, Imo2025P6.IntersectionSetup.disj_piv_v, Imo2025P6.IntersectionSetup.disj_u_v_diff18 instances, coercions and auxiliary constants left out.
Tactic trace: 2 steps
Open to load the checked before-and-after goal states.
- def
Imo2025P6.IntersectionSetup.Othersline 1261 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.IntersectionSetup,Finset, Imo2025P6.PointProof uses:
SDiff.sdiff,Fin,Imo2025P6.BaseSetup.all_black,Imo2025P6.IntersectionSetup.toBaseSetup,Union.union,Imo2025P6.BaseSetup.u,Imo2025P6.BaseSetup.v8 instances, coercions and auxiliary constants left out.
- lemma
Imo2025P6.IntersectionSetup.partition_eqline 1263 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.IntersectionSetup,Eq,Finset, Imo2025P6.Point,Imo2025P6.BaseSetup.all_black,Imo2025P6.IntersectionSetup.toBaseSetup,Union.union,Fin,Singleton.singleton,Imo2025P6.IntersectionSetup.pivot,SDiff.sdiff,Imo2025P6.BaseSetup.u,Imo2025P6.BaseSetup.v, Imo2025P6.IntersectionSetup.OthersProof uses:
Eq.mpr,Inter.inter,id,congrArg,Eq.symm,Imo2025P6.IntersectionSetup.h_inter,Finset.ext,Membership.mem,Imo2025P6.BaseSetup.hu_sub,Imo2025P6.BaseSetup.hv_sub,Iff,Or,And,Not,Eq.trans,congr,Decidable.not_or_of_imp,Iff.intro,Iff.mpr,Classical.or_iff_not_imp_leftand 7 more25 instances, coercions and auxiliary constants left out.
Tactic trace: 7 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.IntersectionSetup.disj_othersline 1271 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.IntersectionSetup,Disjoint,Finset, Imo2025P6.Point,Union.union,Fin,Singleton.singleton,Imo2025P6.IntersectionSetup.pivot,SDiff.sdiff,Imo2025P6.BaseSetup.u,Imo2025P6.IntersectionSetup.toBaseSetup,Imo2025P6.BaseSetup.v, Imo2025P6.IntersectionSetup.OthersProof uses:
Eq.mpr,Eq,Inter.inter,EmptyCollection.emptyCollection,id,congrArg,propext,Finset.disjoint_iff_inter_eq_empty,Finset.ext,Iff,Membership.mem,Eq.symm,Imo2025P6.IntersectionSetup.h_inter,Or,And,Not,Imo2025P6.BaseSetup.all_black,Eq.trans,False,congrand 8 more32 instances, coercions and auxiliary constants left out.
Tactic trace: 5 steps
Open to load the checked before-and-after goal states.
- theorem
Imo2025P6.IntersectionSetup.total_labels_eq_sumline 1275 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.IntersectionSetup,Eq,HAdd.hAdd,Finset.card, Imo2025P6.Point, Imo2025P6.targetsW,Imo2025P6.BaseSetup.u,Imo2025P6.IntersectionSetup.toBaseSetup,Imo2025P6.BaseSetup.v,Imo2025P6.BaseSetup.all_black, Imo2025P6.targetsN, Imo2025P6.targetsE, Imo2025P6.targetsS,Imo2025P6.BaseSetup.a,Imo2025P6.BaseSetup.b,OfNat.ofNatProof uses:
Finset,Imo2025P6.IntersectionSetup.pivot,Eq.mpr,Finset.sum, Imo2025P6.incidence_count,id,congrArg, Imo2025P6.sum_card_eq_sum_incidence,Union.union,Fin,Singleton.singleton,SDiff.sdiff, Imo2025P6.IntersectionSetup.Others, Imo2025P6.IntersectionSetup.partition_eq,Finset.sum_union, Imo2025P6.IntersectionSetup.disj_others, Imo2025P6.IntersectionSetup.disj_middle, Imo2025P6.IntersectionSetup.disj_piv_u,Finset.sum_singleton, Imo2025P6.incidence_count_of_pivot and 69 more72 instances, coercions and auxiliary constants left out.
Tactic trace: 69 steps
Open to load the checked before-and-after goal states.
- theorem
Imo2025P6.IntersectionSetup.labels_total_intersectionline 1352 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.IntersectionSetup,GE.ge,HAdd.hAdd,Finset.card, Imo2025P6.Point, Imo2025P6.targetsWin,Imo2025P6.BaseSetup.u,Imo2025P6.IntersectionSetup.toBaseSetup,Imo2025P6.BaseSetup.v,Imo2025P6.BaseSetup.all_black, Imo2025P6.targetsNin, Imo2025P6.targetsEin, Imo2025P6.targetsSin,HSub.hSub,Imo2025P6.BaseSetup.a,Imo2025P6.BaseSetup.b,OfNat.ofNatProof uses:
Eq, Imo2025P6.targetsW, Imo2025P6.targetsN, Imo2025P6.targetsE, Imo2025P6.targetsS, Imo2025P6.IntersectionSetup.total_labels_eq_sum,Nat.le_add_of_sub_le, Imo2025P6.targetsWin_inequality,Imo2025P6.BaseSetup.h_unique_y, Imo2025P6.targetsNin_inequality,Imo2025P6.BaseSetup.h_unique_x, Imo2025P6.targetsSin_inequality, Imo2025P6.targetsEin_inequality,LE.le, Imo2025P6.IntersectionSetup.a_pos, Imo2025P6.IntersectionSetup.b_pos,Trans.trans,Eq.symm,Imo2025P6.BaseSetup.hu,Finset.card_le_cardand 78 more85 instances, coercions and auxiliary constants left out.
Tactic trace: 12 steps
Open to load the checked before-and-after goal states.
- def
Imo2025P6.IntersectionSetup.validLabelsline 1376 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.IntersectionSetup,Finset, Imo2025P6.LabelProof uses:
Union.union,Finset.map, Imo2025P6.Point, Imo2025P6.Label.emb,Imo2025P6.LabelType.W, Imo2025P6.targetsWin,Imo2025P6.BaseSetup.u,Imo2025P6.IntersectionSetup.toBaseSetup,Imo2025P6.BaseSetup.v,Imo2025P6.BaseSetup.all_black,Imo2025P6.LabelType.N, Imo2025P6.targetsNin,Imo2025P6.LabelType.E, Imo2025P6.targetsEin,Imo2025P6.LabelType.S, Imo2025P6.targetsSin6 instances, coercions and auxiliary constants left out.
- lemma
Imo2025P6.IntersectionSetup.card_validLabelsline 1382 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.IntersectionSetup,Eq,Finset.card, Imo2025P6.Label, Imo2025P6.IntersectionSetup.validLabels,HAdd.hAdd, Imo2025P6.Point, Imo2025P6.targetsWin,Imo2025P6.BaseSetup.u,Imo2025P6.IntersectionSetup.toBaseSetup,Imo2025P6.BaseSetup.v,Imo2025P6.BaseSetup.all_black, Imo2025P6.targetsNin, Imo2025P6.targetsEin, Imo2025P6.targetsSinProof uses:
Eq.mpr,Union.union,Finset,Finset.map, Imo2025P6.Label.emb,Imo2025P6.LabelType.W,Imo2025P6.LabelType.N,Imo2025P6.LabelType.E,Imo2025P6.LabelType.S,id,congrArg,Imo2025P6.IntersectionSetup.validLabels.eq_1,Finset.card_union_of_disjoint,Disjoint,Membership.mem,Not,propext,Finset.disjoint_left,Or,Existsand 47 more51 instances, coercions and auxiliary constants left out.
Tactic trace: 12 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.IntersectionSetup.not_valid_label_Xline 1399 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.IntersectionSetup, Imo2025P6.Label,Membership.mem,Finset, Imo2025P6.IntersectionSetup.validLabels,Eq, Imo2025P6.LabelType,Imo2025P6.Label.type,Imo2025P6.LabelType.X,FalseProof uses:
Exists, Imo2025P6.Point,And, Imo2025P6.targetsWin,Imo2025P6.BaseSetup.u,Imo2025P6.IntersectionSetup.toBaseSetup,Imo2025P6.BaseSetup.v,Imo2025P6.BaseSetup.all_black,Function.Embedding, Imo2025P6.Label.emb,Imo2025P6.LabelType.W,Or, Imo2025P6.targetsNin,Imo2025P6.LabelType.N, Imo2025P6.targetsEin,Imo2025P6.LabelType.E, Imo2025P6.targetsSin,Imo2025P6.LabelType.S,Eq.mp,Eq.transand 8 more19 instances, coercions and auxiliary constants left out.
Tactic trace: 3 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.IntersectionSetup.matilda_covers_at_most_oneline 1405 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.IntersectionSetup, Imo2025P6.Matilda,Imo2025P6.BaseSetup.all_black,Imo2025P6.IntersectionSetup.toBaseSetup,LE.le,Finset.card, Imo2025P6.Label,Finset.filter, Imo2025P6.covers, Imo2025P6.IntersectionSetup.validLabels,OfNat.ofNatProof uses:
Eq.mpr,Membership.mem,Finset,Eq,id,congrArg,propext,Finset.card_le_one_iff,And,Eq.mp,Finset.mem_filter,Decidable.byContradiction,Not, Imo2025P6.LabelType,Imo2025P6.Label.type,Imo2025P6.LabelType.W, Imo2025P6.Point, Imo2025P6.targetsWin,Imo2025P6.BaseSetup.u,Imo2025P6.BaseSetup.vand 58 more51 instances, coercions and auxiliary constants left out.
Tactic trace: 16 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.IntersectionSetup.grid_size_ge_two_of_labelline 1428 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.IntersectionSetup, Imo2025P6.Point, Imo2025P6.LabelType,Membership.mem, Imo2025P6.Label,Finset, Imo2025P6.IntersectionSetup.validLabels,Imo2025P6.Label.mk,LE.le,OfNat.ofNatProof uses:
Eq,Imo2025P6.LabelType.W,Eq.mp,Or,Exists,And,Imo2025P6.BaseSetup.all_black,Imo2025P6.IntersectionSetup.toBaseSetup, Imo2025P6.regionWExtend,Imo2025P6.BaseSetup.u,Imo2025P6.BaseSetup.v,LT.lt, Imo2025P6.py,Function.Embedding, Imo2025P6.Label.emb, Imo2025P6.targetsNin,Imo2025P6.LabelType.N, Imo2025P6.targetsEin,Imo2025P6.LabelType.E, Imo2025P6.targetsSin and 43 more54 instances, coercions and auxiliary constants left out.
Tactic trace: 5 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.IntersectionSetup.valid_label_pos_not_blackline 1437 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.IntersectionSetup, Imo2025P6.Label,Membership.mem,Finset, Imo2025P6.IntersectionSetup.validLabels,Not, Imo2025P6.Point,Imo2025P6.BaseSetup.all_black,Imo2025P6.IntersectionSetup.toBaseSetup,Prod.snd, Imo2025P6.label_posProof uses:
False, Imo2025P6.LabelType,Imo2025P6.Label.mk,LE.le,OfNat.ofNat, Imo2025P6.IntersectionSetup.grid_size_ge_two_of_label,Imo2025P6.label_pos.match_1,Prod,Unit,Prod.mk,Fin,Prod.fst,HSub.hSub,HAdd.hAdd,Or,Exists,And, Imo2025P6.regionWExtend,Imo2025P6.BaseSetup.u,Imo2025P6.BaseSetup.vand 99 more116 instances, coercions and auxiliary constants left out.
Tactic trace: 51 steps
Open to load the checked before-and-after goal states.
- theorem
Imo2025P6.IntersectionSetup.matildas_count_ge_intersection_boundline 1477 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.IntersectionSetup,Finset, Imo2025P6.Matilda,Imo2025P6.BaseSetup.all_black,Imo2025P6.IntersectionSetup.toBaseSetup, Imo2025P6.Point,Not,Membership.mem,ExistsUnique,And, Imo2025P6.Matilda.mem,LE.le,HSub.hSub,HAdd.hAdd,Imo2025P6.BaseSetup.a,Imo2025P6.BaseSetup.b,OfNat.ofNat,Finset.cardProof uses: Imo2025P6.Label, Imo2025P6.IntersectionSetup.validLabels, Imo2025P6.matilda_count_ge_label_count, Imo2025P6.IntersectionSetup.valid_label_pos_not_black, Imo2025P6.IntersectionSetup.matilda_covers_at_most_one,
GE.ge, Imo2025P6.targetsWin,Imo2025P6.BaseSetup.u,Imo2025P6.BaseSetup.v, Imo2025P6.targetsNin, Imo2025P6.targetsEin, Imo2025P6.targetsSin, Imo2025P6.IntersectionSetup.labels_total_intersection,Nat.le_trans,Eq.mp,congrArg, Imo2025P6.IntersectionSetup.card_validLabels20 instances, coercions and auxiliary constants left out.
Tactic trace: 4 steps
Open to load the checked before-and-after goal states.
- theorem
Imo2025P6.IntersectionSetup.intersection_case_final_boundline 1490 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.IntersectionSetup,Finset, Imo2025P6.Matilda,Imo2025P6.BaseSetup.all_black,Imo2025P6.IntersectionSetup.toBaseSetup, Imo2025P6.Point,Not,Membership.mem,ExistsUnique,And, Imo2025P6.Matilda.mem,LE.le,HMul.hMul,Imo2025P6.BaseSetup.a,Imo2025P6.BaseSetup.b,HSub.hSub,HAdd.hAdd,Nat.sqrtand 2 moreProof uses: Imo2025P6.IntersectionSetup.matildas_count_ge_intersection_bound, Imo2025P6.am_gm_bound_nat,
Trans.trans,Eq,Nat.sub_le_sub_right,Nat.add_le_add_left,of_eq_true,Eq.trans,True,congrFun',congrArg,HPow.hPow,Nat.rawCast,Mathlib.Tactic.Ring.Common.add_congr,Mathlib.Tactic.Ring.Common.atom_pf,rfl,Eq.mpr,id,Eq.symm,Eq.refland 9 more51 instances, coercions and auxiliary constants left out.
Tactic trace: 4 steps
Open to load the checked before-and-after goal states.
- structure
Imo2025P6.DisjointSetupline 1505 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero2 instances, coercions and auxiliary constants left out.
- lemma
Imo2025P6.DisjointSetup.mem_of_mem_lower_of_mem_upperline 1512 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup, Imo2025P6.Point,Membership.mem,Finset, Imo2025P6.v_lower,Imo2025P6.BaseSetup.v,Imo2025P6.DisjointSetup.toBaseSetup, Imo2025P6.v_upperProof uses:
Eq.mpr,Inter.inter,Fin,id,Eq,congrArg,Eq.symm, Imo2025P6.v_parts_intersection_eq_v,Imo2025P6.BaseSetup.h_v_mono,Imo2025P6.BaseSetup.h_v_inj,And,propext,Finset.mem_inter,And.intro11 instances, coercions and auxiliary constants left out.
Tactic trace: 2 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.DisjointSetup.px_ne_of_mem_disjointline 1517 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup, Imo2025P6.Point,Membership.mem,Finset,Imo2025P6.BaseSetup.u,Imo2025P6.DisjointSetup.toBaseSetup,Imo2025P6.BaseSetup.v,Ne, Imo2025P6.pxProof uses:
Eq,Imo2025P6.BaseSetup.h_unique_x,Imo2025P6.BaseSetup.hu_sub,Imo2025P6.BaseSetup.hv_sub,False,Iff.mp,Disjoint,Not,Finset.disjoint_left,Imo2025P6.DisjointSetup.h_disj11 instances, coercions and auxiliary constants left out.
Tactic trace: 4 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.DisjointSetup.py_ne_of_mem_disjointline 1524 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup, Imo2025P6.Point,Membership.mem,Finset,Imo2025P6.BaseSetup.u,Imo2025P6.DisjointSetup.toBaseSetup,Imo2025P6.BaseSetup.v,Ne, Imo2025P6.pyProof uses:
Eq,Imo2025P6.BaseSetup.h_unique_y,Imo2025P6.BaseSetup.hu_sub,Imo2025P6.BaseSetup.hv_sub,False,Iff.mp,Disjoint,Not,Finset.disjoint_left,Imo2025P6.DisjointSetup.h_disj11 instances, coercions and auxiliary constants left out.
Tactic trace: 4 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.DisjointSetup.u_min_mem_v_lowerline 1531 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup, Imo2025P6.Point,Membership.mem,Finset,Imo2025P6.BaseSetup.u,Imo2025P6.DisjointSetup.toBaseSetup,LE.le, Imo2025P6.px, Imo2025P6.v_lower,Imo2025P6.BaseSetup.vProof uses: Imo2025P6.v_upper,
Or, Imo2025P6.covering_of_maximal_v,Imo2025P6.BaseSetup.all_black,Imo2025P6.BaseSetup.hu_sub,Iff.mp,Disjoint,Not,Finset.disjoint_left,Imo2025P6.DisjointSetup.h_disj,Imo2025P6.BaseSetup.h_v_max,False.elim,And, Imo2025P6.py,Exists,False,Eq.mp,congrArg,propext, Imo2025P6.mem_v_upper and 12 more24 instances, coercions and auxiliary constants left out.
Tactic trace: 17 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.DisjointSetup.u_max_mem_v_upperline 1547 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup, Imo2025P6.Point,Membership.mem,Finset,Imo2025P6.BaseSetup.u,Imo2025P6.DisjointSetup.toBaseSetup,LE.le, Imo2025P6.px, Imo2025P6.v_upper,Imo2025P6.BaseSetup.vProof uses: Imo2025P6.v_lower,
Or, Imo2025P6.covering_of_maximal_v,Imo2025P6.BaseSetup.all_black,Imo2025P6.BaseSetup.hu_sub,Iff.mp,Disjoint,Not,Finset.disjoint_left,Imo2025P6.DisjointSetup.h_disj,Imo2025P6.BaseSetup.h_v_max,False.elim,And, Imo2025P6.py,Exists,False,Eq.mp,congrArg,propext, Imo2025P6.mem_v_lower and 11 more24 instances, coercions and auxiliary constants left out.
Tactic trace: 17 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.DisjointSetup.v_min_mem_u_upperline 1563 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup, Imo2025P6.Point,Membership.mem,Finset,Imo2025P6.BaseSetup.v,Imo2025P6.DisjointSetup.toBaseSetup,LE.le, Imo2025P6.px, Imo2025P6.u_upper,Imo2025P6.BaseSetup.uProof uses: Imo2025P6.u_lower,
Or, Imo2025P6.covering_of_maximal_u,Imo2025P6.BaseSetup.all_black,Imo2025P6.BaseSetup.hv_sub,Iff.mp,Disjoint,Not,Finset.disjoint_right,Imo2025P6.DisjointSetup.h_disj,Imo2025P6.BaseSetup.h_u_max,False.elim,And, Imo2025P6.py,Exists,False,Eq.mp,congrArg,propext, Imo2025P6.mem_u_lower and 12 more24 instances, coercions and auxiliary constants left out.
Tactic trace: 17 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.DisjointSetup.v_max_mem_u_lowerline 1579 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup, Imo2025P6.Point,Membership.mem,Finset,Imo2025P6.BaseSetup.v,Imo2025P6.DisjointSetup.toBaseSetup,LE.le, Imo2025P6.px, Imo2025P6.u_lower,Imo2025P6.BaseSetup.uProof uses: Imo2025P6.u_upper,
Or, Imo2025P6.covering_of_maximal_u,Imo2025P6.BaseSetup.all_black,Imo2025P6.BaseSetup.hv_sub,Iff.mp,Disjoint,Not,Finset.disjoint_right,Imo2025P6.DisjointSetup.h_disj,Imo2025P6.BaseSetup.h_u_max,False.elim,And, Imo2025P6.py,Exists,False,Eq.mp,congrArg,propext, Imo2025P6.mem_u_upper and 12 more24 instances, coercions and auxiliary constants left out.
Tactic trace: 17 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.DisjointSetup.a_ge_twoline 1595 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup,LT.lt,OfNat.ofNat,Imo2025P6.BaseSetup.a,Imo2025P6.DisjointSetup.toBaseSetup,LE.leProof uses:
Decidable.byContradiction,Not, Imo2025P6.Point,Eq,Finset,Imo2025P6.BaseSetup.u,Singleton.singleton,Exists,False,Iff.mp,Finset.card,Finset.card_eq_one,Eq.mpr,id,congrArg,Imo2025P6.BaseSetup.hu,Membership.mem,Finset.mem_singleton_self,Eq.mp,propextand 13 more19 instances, coercions and auxiliary constants left out.
Tactic trace: 12 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.DisjointSetup.exists_crossing_uline 1604 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup,LT.lt,OfNat.ofNat,Imo2025P6.BaseSetup.a,Imo2025P6.DisjointSetup.toBaseSetup,Exists, Imo2025P6.Point,And,Membership.mem,Finset,Imo2025P6.BaseSetup.u, Imo2025P6.px,LE.le, Imo2025P6.v_lower,Imo2025P6.BaseSetup.v, Imo2025P6.v_upperProof uses:
Finset.Nonempty,Iff.mp,Finset.card,Finset.card_pos,Eq.mpr,id,Eq,congrArg,Imo2025P6.BaseSetup.hu,Finset.filter,Fin,Finset.exists_min_image,Exists.intro,Iff.mpr,Finset.mem_filter,And.intro, Imo2025P6.DisjointSetup.u_min_mem_v_lower,Finset.exists_max_image,Eq.mp,propextand 16 more35 instances, coercions and auxiliary constants left out.
Tactic trace: 26 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.DisjointSetup.b_ge_twoline 1635 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup,LT.lt,OfNat.ofNat,Imo2025P6.BaseSetup.b,Imo2025P6.DisjointSetup.toBaseSetup,LE.leProof uses:
Decidable.byContradiction,Not, Imo2025P6.Point,Eq,Finset,Imo2025P6.BaseSetup.v,Singleton.singleton,Exists,False,Iff.mp,Finset.card,Finset.card_eq_one,Eq.mpr,id,congrArg,Imo2025P6.BaseSetup.hv,Membership.mem,Finset.mem_singleton_self,Eq.mp,propextand 21 more22 instances, coercions and auxiliary constants left out.
Tactic trace: 15 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.DisjointSetup.exists_crossing_vline 1647 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup,LT.lt,OfNat.ofNat,Imo2025P6.BaseSetup.b,Imo2025P6.DisjointSetup.toBaseSetup,Exists, Imo2025P6.Point,And,Membership.mem,Finset,Imo2025P6.BaseSetup.v, Imo2025P6.px,LE.le, Imo2025P6.u_upper,Imo2025P6.BaseSetup.u, Imo2025P6.u_lowerProof uses:
Finset.Nonempty,Iff.mp,Finset.card,Finset.card_pos,Eq.mpr,id,Eq,congrArg,Imo2025P6.BaseSetup.hv,Finset.filter,Fin,Finset.exists_min_image,Exists.intro,Iff.mpr,Finset.mem_filter,And.intro, Imo2025P6.DisjointSetup.v_min_mem_u_upper,Finset.exists_max_image,Eq.mp,propextand 20 more36 instances, coercions and auxiliary constants left out.
Tactic trace: 29 steps
Open to load the checked before-and-after goal states.
- structure
Imo2025P6.DisjointSetup.CrossingPointsline 1681 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup2 instances, coercions and auxiliary constants left out.
- def
Imo2025P6.DisjointSetup.getCrossingPointsline 1699 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup,LT.lt,OfNat.ofNat,Imo2025P6.BaseSetup.a,Imo2025P6.DisjointSetup.toBaseSetup,Imo2025P6.BaseSetup.b, Imo2025P6.DisjointSetup.CrossingPointsProof uses:
Classical.choice9 instances, coercions and auxiliary constants left out.
Tactic trace: 3 steps
Open to load the checked before-and-after goal states.
- def
Imo2025P6.DisjointSetup.Pivotline 1711 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup, Imo2025P6.DisjointSetup.CrossingPoints,Finset, Imo2025P6.PointProof uses:
Inter.inter,Finset.Ico, Imo2025P6.px,Imo2025P6.DisjointSetup.CrossingPoints.uk,Imo2025P6.DisjointSetup.CrossingPoints.uk1,Imo2025P6.DisjointSetup.CrossingPoints.vl,Imo2025P6.DisjointSetup.CrossingPoints.vl1, Imo2025P6.py,Finset.filter,And,Membership.mem,Finset.univ,Fin14 instances, coercions and auxiliary constants left out.
- lemma
Imo2025P6.DisjointSetup.pivot_nonemptyline 1716 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup, Imo2025P6.DisjointSetup.CrossingPoints,Finset.Nonempty, Imo2025P6.Point, Imo2025P6.DisjointSetup.PivotProof uses:
Imo2025P6.DisjointSetup.CrossingPoints.uk,Imo2025P6.DisjointSetup.CrossingPoints.uk1,Imo2025P6.DisjointSetup.CrossingPoints.vl,Imo2025P6.DisjointSetup.CrossingPoints.vl1,Decidable.byContradiction,Not,Finset,Inter.inter,Finset.Ico, Imo2025P6.px, Imo2025P6.py,Or,Eq,EmptyCollection.emptyCollection,Membership.mem,False,And.left,Eq.mp,And,Eq.transand 67 more51 instances, coercions and auxiliary constants left out.
Tactic trace: 135 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.DisjointSetup.u_not_between_uk_uk1line 1820 source - lemma
Imo2025P6.DisjointSetup.v_not_between_vl_vl1line 1824 source - lemma
Imo2025P6.DisjointSetup.pivot_no_blackline 1828 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup, Imo2025P6.DisjointSetup.CrossingPoints, Imo2025P6.Point,Membership.mem,Finset, Imo2025P6.DisjointSetup.Pivot,Not,Imo2025P6.BaseSetup.all_black,Imo2025P6.DisjointSetup.toBaseSetupProof uses:
Imo2025P6.DisjointSetup.CrossingPoints.uk,Imo2025P6.DisjointSetup.CrossingPoints.uk1,Imo2025P6.DisjointSetup.CrossingPoints.vl,Imo2025P6.DisjointSetup.CrossingPoints.vl1,Imo2025P6.BaseSetup.u,Imo2025P6.DisjointSetup.CrossingPoints.mem_uk,Imo2025P6.DisjointSetup.CrossingPoints.mem_uk1,Imo2025P6.BaseSetup.v,Imo2025P6.DisjointSetup.CrossingPoints.mem_vl,Imo2025P6.DisjointSetup.CrossingPoints.mem_vl1,Finset.univ,Fin,And,Inter.inter,Finset.Ico, Imo2025P6.px, Imo2025P6.py,False,Eq.mp,Finset.filterand 36 more32 instances, coercions and auxiliary constants left out.
Tactic trace: 83 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.DisjointSetup.incidence_count_of_u_disjointline 1899 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup, Imo2025P6.Point,Membership.mem,Finset,Imo2025P6.BaseSetup.u,Imo2025P6.DisjointSetup.toBaseSetup,Eq, Imo2025P6.incidence_count,Imo2025P6.BaseSetup.v,Imo2025P6.BaseSetup.all_black,OfNat.ofNatProof uses: Imo2025P6.u_lower,
Eq.mpr,Exists,And,LE.le, Imo2025P6.px, Imo2025P6.py,id,congrArg,propext, Imo2025P6.mem_u_lower,Exists.intro,And.intro,le_refl, Imo2025P6.u_upper, Imo2025P6.mem_u_upper,Not,Iff.mp,Disjoint,Finset.disjoint_leftand 40 more32 instances, coercions and auxiliary constants left out.
Tactic trace: 23 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.DisjointSetup.incidence_count_of_v_disjointline 1920 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup, Imo2025P6.Point,Membership.mem,Finset,Imo2025P6.BaseSetup.v,Imo2025P6.DisjointSetup.toBaseSetup,Eq, Imo2025P6.incidence_count,Imo2025P6.BaseSetup.u,Imo2025P6.BaseSetup.all_black,OfNat.ofNatProof uses: Imo2025P6.v_lower,
Eq.mpr,Exists,And,LE.le, Imo2025P6.px, Imo2025P6.py,id,congrArg,propext, Imo2025P6.mem_v_lower,Exists.intro,And.intro,le_refl, Imo2025P6.v_upper, Imo2025P6.mem_v_upper,Not,Iff.mp,Disjoint,Finset.disjoint_rightand 43 more33 instances, coercions and auxiliary constants left out.
Tactic trace: 23 steps
Open to load the checked before-and-after goal states.
- theorem
Imo2025P6.DisjointSetup.total_labels_eq_sum_disjointline 1941 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup,Eq,HAdd.hAdd,Finset.card, Imo2025P6.Point, Imo2025P6.targetsW,Imo2025P6.BaseSetup.u,Imo2025P6.DisjointSetup.toBaseSetup,Imo2025P6.BaseSetup.v,Imo2025P6.BaseSetup.all_black, Imo2025P6.targetsN, Imo2025P6.targetsE, Imo2025P6.targetsS,Imo2025P6.BaseSetup.a,Imo2025P6.BaseSetup.bProof uses:
Eq.mpr,Finset.sum, Imo2025P6.incidence_count,id,congrArg, Imo2025P6.sum_card_eq_sum_incidence,Finset,SDiff.sdiff,Fin,Union.union,Disjoint,Imo2025P6.DisjointSetup.h_disj,disjoint_sdiff_self_right,Eq.symm,Finset.union_sdiff_of_subset, Imo2025P6.BaseSetup.union_sub,Finset.sum_union,HMul.hMul,OfNat.ofNat,Finset.sum_congrand 42 more46 instances, coercions and auxiliary constants left out.
Tactic trace: 34 steps
Open to load the checked before-and-after goal states.
- theorem
Imo2025P6.DisjointSetup.labels_total_disjointline 1984 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup,LT.lt,OfNat.ofNat,Imo2025P6.BaseSetup.a,Imo2025P6.DisjointSetup.toBaseSetup,Imo2025P6.BaseSetup.b,GE.ge,HAdd.hAdd,Finset.card, Imo2025P6.Point, Imo2025P6.targetsWin,Imo2025P6.BaseSetup.u,Imo2025P6.BaseSetup.v,Imo2025P6.BaseSetup.all_black, Imo2025P6.targetsNin, Imo2025P6.targetsEin, Imo2025P6.targetsSin,HSub.hSubProof uses:
Eq, Imo2025P6.targetsW, Imo2025P6.targetsN, Imo2025P6.targetsE, Imo2025P6.targetsS, Imo2025P6.DisjointSetup.total_labels_eq_sum_disjoint,Nat.le_add_of_sub_le, Imo2025P6.targetsWin_inequality,Imo2025P6.BaseSetup.h_unique_y, Imo2025P6.targetsNin_inequality,Imo2025P6.BaseSetup.h_unique_x, Imo2025P6.targetsSin_inequality, Imo2025P6.targetsEin_inequality,Eq.mpr,LE.le,Int,id,Eq.trans,congrArg,Nat.cast_addand 70 more84 instances, coercions and auxiliary constants left out.
Tactic trace: 12 steps
Open to load the checked before-and-after goal states.
- def
Imo2025P6.DisjointSetup.wxline 2005 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup, Imo2025P6.DisjointSetup.CrossingPoints, Imo2025P6.PointProof uses:
Exists.choose,Membership.mem,Finset, Imo2025P6.DisjointSetup.Pivot, Imo2025P6.DisjointSetup.pivot_nonempty6 instances, coercions and auxiliary constants left out.
- lemma
Imo2025P6.DisjointSetup.wx_mem_pivotline 2008 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup, Imo2025P6.DisjointSetup.CrossingPoints,Membership.mem, Imo2025P6.Point,Finset, Imo2025P6.DisjointSetup.Pivot, Imo2025P6.DisjointSetup.wxProof uses:
Exists.choose_spec, Imo2025P6.DisjointSetup.pivot_nonempty8 instances, coercions and auxiliary constants left out.
- lemma
Imo2025P6.DisjointSetup.wx_boundsline 2011 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup, Imo2025P6.DisjointSetup.CrossingPoints, Imo2025P6.Point, Imo2025P6.DisjointSetup.wx,And,LE.le, Imo2025P6.px,Imo2025P6.DisjointSetup.CrossingPoints.uk,LT.lt,Imo2025P6.DisjointSetup.CrossingPoints.uk1,Imo2025P6.DisjointSetup.CrossingPoints.vl,Imo2025P6.DisjointSetup.CrossingPoints.vl1, Imo2025P6.pyProof uses:
Membership.mem,Finset, Imo2025P6.DisjointSetup.Pivot, Imo2025P6.DisjointSetup.wx_mem_pivot,Eq.mp,Finset.Ico,congrArg,propext,Finset.mem_Ico,Inter.inter,Finset.mem_inter,Eq.trans,Finset.filter,Finset.univ,Fin,True,congrFun',true_and,And.intro23 instances, coercions and auxiliary constants left out.
Tactic trace: 6 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.DisjointSetup.wx_not_blackline 2024 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup, Imo2025P6.DisjointSetup.CrossingPoints,Not,Membership.mem, Imo2025P6.Point,Finset,Imo2025P6.BaseSetup.all_black,Imo2025P6.DisjointSetup.toBaseSetup, Imo2025P6.DisjointSetup.wxProof uses: Imo2025P6.DisjointSetup.pivot_no_black, Imo2025P6.DisjointSetup.wx_mem_pivot
6 instances, coercions and auxiliary constants left out.
- def
Imo2025P6.DisjointSetup.validLabelsline 2027 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup, Imo2025P6.DisjointSetup.CrossingPoints,Finset, Imo2025P6.LabelProof uses:
Union.union,Finset.map, Imo2025P6.Point, Imo2025P6.Label.emb,Imo2025P6.LabelType.W, Imo2025P6.targetsWin,Imo2025P6.BaseSetup.u,Imo2025P6.DisjointSetup.toBaseSetup,Imo2025P6.BaseSetup.v,Imo2025P6.BaseSetup.all_black,Imo2025P6.LabelType.N, Imo2025P6.targetsNin,Imo2025P6.LabelType.E, Imo2025P6.targetsEin,Imo2025P6.LabelType.S, Imo2025P6.targetsSin,Imo2025P6.LabelType.X,Singleton.singleton, Imo2025P6.DisjointSetup.wx7 instances, coercions and auxiliary constants left out.
- lemma
Imo2025P6.DisjointSetup.pivot_overlap_xline 2034 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup, Imo2025P6.DisjointSetup.CrossingPoints,LT.lt, Imo2025P6.px,Imo2025P6.DisjointSetup.CrossingPoints.vl,Imo2025P6.DisjointSetup.CrossingPoints.uk1Proof uses: Imo2025P6.Point, Imo2025P6.DisjointSetup.wx,
And,LE.le,Imo2025P6.DisjointSetup.CrossingPoints.uk,Imo2025P6.DisjointSetup.CrossingPoints.vl1, Imo2025P6.py, Imo2025P6.DisjointSetup.wx_bounds,lt_of_not_ge,Mathlib.Tactic.Linarith.lt_irrefl,Int,OfNat.ofNat,Eq.mp,HAdd.hAdd,Neg.neg,HSub.hSub,congrArg,Mathlib.Tactic.Ring.of_eq,Mathlib.Tactic.Ring.Common.add_congr,HMul.hMuland 44 more65 instances, coercions and auxiliary constants left out.
Tactic trace: 2 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.DisjointSetup.u_y_le_uk_of_x_lt_uk1line 2039 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup, Imo2025P6.DisjointSetup.CrossingPoints, Imo2025P6.Point,Membership.mem,Finset,Imo2025P6.BaseSetup.u,Imo2025P6.DisjointSetup.toBaseSetup,LT.lt, Imo2025P6.px,Imo2025P6.DisjointSetup.CrossingPoints.uk1,LE.le, Imo2025P6.py,Imo2025P6.DisjointSetup.CrossingPoints.ukProof uses:
Decidable.byContradiction,Not,Imo2025P6.DisjointSetup.CrossingPoints.h_u_adj,Iff.mp,not_le, Imo2025P6.BaseSetup.u_mono_le,Imo2025P6.DisjointSetup.CrossingPoints.mem_uk19 instances, coercions and auxiliary constants left out.
Tactic trace: 5 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.DisjointSetup.v_y_le_vl1_of_x_ge_uk1line 2047 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup, Imo2025P6.DisjointSetup.CrossingPoints, Imo2025P6.Point,Membership.mem,Finset,Imo2025P6.BaseSetup.v,Imo2025P6.DisjointSetup.toBaseSetup,LE.le, Imo2025P6.px,Imo2025P6.DisjointSetup.CrossingPoints.uk1, Imo2025P6.py,Imo2025P6.DisjointSetup.CrossingPoints.vl1Proof uses: Imo2025P6.BaseSetup.v_mono_le,
Imo2025P6.DisjointSetup.CrossingPoints.mem_vl1,Imo2025P6.DisjointSetup.CrossingPoints.h_v_adj,lt_of_lt_of_le,Imo2025P6.DisjointSetup.CrossingPoints.vl, Imo2025P6.DisjointSetup.pivot_overlap_x11 instances, coercions and auxiliary constants left out.
- lemma
Imo2025P6.DisjointSetup.disjoint_label_X_Wline 2052 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup, Imo2025P6.DisjointSetup.CrossingPoints, Imo2025P6.Matilda,Imo2025P6.BaseSetup.all_black,Imo2025P6.DisjointSetup.toBaseSetup, Imo2025P6.Point,Membership.mem,Finset,LT.lt,OfNat.ofNat, Imo2025P6.py, Imo2025P6.Matilda.mem,Prod.mk,Fin,Prod.fst,HSub.hSub,Prod.snd, Imo2025P6.DisjointSetup.wx and 4 moreProof uses:
And,LE.le, Imo2025P6.px,Imo2025P6.DisjointSetup.CrossingPoints.uk,Imo2025P6.DisjointSetup.CrossingPoints.uk1,Imo2025P6.DisjointSetup.CrossingPoints.vl,Imo2025P6.DisjointSetup.CrossingPoints.vl1, Imo2025P6.DisjointSetup.wx_bounds,Eq,HAdd.hAdd,Imo2025P6.Matilda.y_max,Imo2025P6.Matilda.x_min,Imo2025P6.Matilda.x_max, Imo2025P6.source_on_face_W, Imo2025P6.u_lower, Imo2025P6.v_lower,Eq.mp,congrArg,propext, Imo2025P6.mem_regionWExtend and 67 more86 instances, coercions and auxiliary constants left out.
Tactic trace: 22 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.DisjointSetup.u_x_le_uk_of_y_lt_uk1line 2077 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup, Imo2025P6.DisjointSetup.CrossingPoints, Imo2025P6.Point,Membership.mem,Finset,Imo2025P6.BaseSetup.u,Imo2025P6.DisjointSetup.toBaseSetup,LT.lt, Imo2025P6.py,Imo2025P6.DisjointSetup.CrossingPoints.uk1,LE.le, Imo2025P6.px,Imo2025P6.DisjointSetup.CrossingPoints.ukProof uses:
Decidable.byContradiction,Not,Imo2025P6.DisjointSetup.CrossingPoints.h_u_adj,Iff.mp,not_le, Imo2025P6.BaseSetup.u_mono_le,Imo2025P6.DisjointSetup.CrossingPoints.mem_uk119 instances, coercions and auxiliary constants left out.
Tactic trace: 4 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.DisjointSetup.pivot_overlap_yline 2084 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup, Imo2025P6.DisjointSetup.CrossingPoints,LT.lt, Imo2025P6.py,Imo2025P6.DisjointSetup.CrossingPoints.vl1,Imo2025P6.DisjointSetup.CrossingPoints.uk1Proof uses: Imo2025P6.Point, Imo2025P6.DisjointSetup.wx,
And,LE.le, Imo2025P6.px,Imo2025P6.DisjointSetup.CrossingPoints.uk,Imo2025P6.DisjointSetup.CrossingPoints.vl, Imo2025P6.DisjointSetup.wx_bounds,lt_of_not_ge,Mathlib.Tactic.Linarith.lt_irrefl,Int,OfNat.ofNat,Eq.mp,HAdd.hAdd,Neg.neg,HSub.hSub,congrArg,Mathlib.Tactic.Ring.of_eq,Mathlib.Tactic.Ring.Common.add_congr,HMul.hMuland 44 more65 instances, coercions and auxiliary constants left out.
Tactic trace: 2 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.DisjointSetup.v_x_le_vl_of_y_ge_uk1line 2089 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup, Imo2025P6.DisjointSetup.CrossingPoints, Imo2025P6.Point,Membership.mem,Finset,Imo2025P6.BaseSetup.v,Imo2025P6.DisjointSetup.toBaseSetup,LE.le, Imo2025P6.py,Imo2025P6.DisjointSetup.CrossingPoints.uk1, Imo2025P6.px,Imo2025P6.DisjointSetup.CrossingPoints.vlProof uses:
Decidable.byContradiction,Not,Imo2025P6.DisjointSetup.CrossingPoints.vl1,Imo2025P6.DisjointSetup.CrossingPoints.h_v_adj,Iff.mp,LT.lt,not_le, Imo2025P6.BaseSetup.v_mono_le,Imo2025P6.DisjointSetup.CrossingPoints.mem_vl1, Imo2025P6.DisjointSetup.pivot_overlap_y18 instances, coercions and auxiliary constants left out.
Tactic trace: 5 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.DisjointSetup.disjoint_label_X_Nline 2097 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup, Imo2025P6.DisjointSetup.CrossingPoints, Imo2025P6.Matilda,Imo2025P6.BaseSetup.all_black,Imo2025P6.DisjointSetup.toBaseSetup, Imo2025P6.Point,Membership.mem,Finset,LT.lt,OfNat.ofNat, Imo2025P6.px, Imo2025P6.Matilda.mem,Prod.mk,Fin,HSub.hSub,Prod.fst,Prod.snd, Imo2025P6.DisjointSetup.wx and 4 moreProof uses:
And,LE.le,Imo2025P6.DisjointSetup.CrossingPoints.uk,Imo2025P6.DisjointSetup.CrossingPoints.uk1,Imo2025P6.DisjointSetup.CrossingPoints.vl,Imo2025P6.DisjointSetup.CrossingPoints.vl1, Imo2025P6.py, Imo2025P6.DisjointSetup.wx_bounds,Eq,HAdd.hAdd,Imo2025P6.Matilda.x_max,Imo2025P6.Matilda.y_min,Imo2025P6.Matilda.y_max, Imo2025P6.source_on_face_N, Imo2025P6.u_upper, Imo2025P6.v_lower,Eq.mp,congrArg,propext, Imo2025P6.mem_regionNExtend and 67 more86 instances, coercions and auxiliary constants left out.
Tactic trace: 22 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.DisjointSetup.v_y_ge_vl_of_x_lt_vl1line 2122 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup, Imo2025P6.DisjointSetup.CrossingPoints, Imo2025P6.Point,Membership.mem,Finset,Imo2025P6.BaseSetup.v,Imo2025P6.DisjointSetup.toBaseSetup,LT.lt, Imo2025P6.px,Imo2025P6.DisjointSetup.CrossingPoints.vl1,LE.le, Imo2025P6.py,Imo2025P6.DisjointSetup.CrossingPoints.vlProof uses:
Decidable.byContradiction,Not,Imo2025P6.DisjointSetup.CrossingPoints.h_v_adj,Iff.mp,not_le, Imo2025P6.BaseSetup.v_mono_le,Imo2025P6.DisjointSetup.CrossingPoints.mem_vl19 instances, coercions and auxiliary constants left out.
Tactic trace: 5 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.DisjointSetup.disjoint_label_X_Eline 2130 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup, Imo2025P6.DisjointSetup.CrossingPoints, Imo2025P6.Matilda,Imo2025P6.BaseSetup.all_black,Imo2025P6.DisjointSetup.toBaseSetup, Imo2025P6.Point,Membership.mem,Finset,LT.lt, Imo2025P6.py,HSub.hSub,OfNat.ofNat, Imo2025P6.Matilda.mem, Imo2025P6.DisjointSetup.wx,Prod.mk,Fin,Prod.fst,HAdd.hAddand 5 moreProof uses:
And,LE.le, Imo2025P6.px,Imo2025P6.DisjointSetup.CrossingPoints.uk,Imo2025P6.DisjointSetup.CrossingPoints.uk1,Imo2025P6.DisjointSetup.CrossingPoints.vl,Imo2025P6.DisjointSetup.CrossingPoints.vl1, Imo2025P6.DisjointSetup.wx_bounds,Eq,Imo2025P6.Matilda.y_min,Imo2025P6.Matilda.x_min,Imo2025P6.Matilda.x_max, Imo2025P6.source_on_face_E, Imo2025P6.u_upper, Imo2025P6.v_upper,Eq.mp,congrArg,propext, Imo2025P6.mem_regionEExtend,diteand 81 more98 instances, coercions and auxiliary constants left out.
Tactic trace: 35 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.DisjointSetup.pivot_overlap_y_2line 2168 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup, Imo2025P6.DisjointSetup.CrossingPoints,LT.lt, Imo2025P6.py,Imo2025P6.DisjointSetup.CrossingPoints.uk,Imo2025P6.DisjointSetup.CrossingPoints.vlProof uses: Imo2025P6.Point, Imo2025P6.DisjointSetup.wx,
And,LE.le, Imo2025P6.px,Imo2025P6.DisjointSetup.CrossingPoints.uk1,Imo2025P6.DisjointSetup.CrossingPoints.vl1, Imo2025P6.DisjointSetup.wx_bounds,lt_of_not_ge,Mathlib.Tactic.Linarith.lt_irrefl,Int,OfNat.ofNat,Eq.mp,HAdd.hAdd,Neg.neg,HSub.hSub,congrArg,Mathlib.Tactic.Ring.of_eq,Mathlib.Tactic.Ring.Common.add_congr,Int.rawCastand 44 more65 instances, coercions and auxiliary constants left out.
Tactic trace: 2 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.DisjointSetup.u_x_ge_uk1_of_y_ge_vlline 2173 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup, Imo2025P6.DisjointSetup.CrossingPoints, Imo2025P6.Point,Membership.mem,Finset,Imo2025P6.BaseSetup.u,Imo2025P6.DisjointSetup.toBaseSetup,LE.le, Imo2025P6.py,Imo2025P6.DisjointSetup.CrossingPoints.vl, Imo2025P6.px,Imo2025P6.DisjointSetup.CrossingPoints.uk1Proof uses:
Imo2025P6.DisjointSetup.CrossingPoints.h_u_adj,Decidable.byContradiction,LT.lt,Imo2025P6.DisjointSetup.CrossingPoints.uk,Not, Imo2025P6.BaseSetup.u_mono_le,Imo2025P6.DisjointSetup.CrossingPoints.mem_uk,Iff.mp,not_lt, Imo2025P6.DisjointSetup.pivot_overlap_y_218 instances, coercions and auxiliary constants left out.
Tactic trace: 5 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.DisjointSetup.disjoint_label_X_Sline 2181 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup, Imo2025P6.DisjointSetup.CrossingPoints, Imo2025P6.Matilda,Imo2025P6.BaseSetup.all_black,Imo2025P6.DisjointSetup.toBaseSetup, Imo2025P6.Point,Membership.mem,Finset,LT.lt, Imo2025P6.px,HSub.hSub,OfNat.ofNat, Imo2025P6.Matilda.mem,Prod.mk,Fin,HAdd.hAdd,Prod.fst,Prod.sndand 5 moreProof uses:
And,LE.le,Imo2025P6.DisjointSetup.CrossingPoints.uk,Imo2025P6.DisjointSetup.CrossingPoints.uk1,Imo2025P6.DisjointSetup.CrossingPoints.vl,Imo2025P6.DisjointSetup.CrossingPoints.vl1, Imo2025P6.py, Imo2025P6.DisjointSetup.wx_bounds,Eq,Imo2025P6.Matilda.x_min,Imo2025P6.Matilda.y_min,Imo2025P6.Matilda.y_max, Imo2025P6.source_on_face_S, Imo2025P6.u_lower, Imo2025P6.v_upper,Eq.mp,congrArg,propext, Imo2025P6.mem_regionSExtend,diteand 78 more97 instances, coercions and auxiliary constants left out.
Tactic trace: 23 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.DisjointSetup.covers_X_otherline 2209 source - lemma
Imo2025P6.DisjointSetup.matilda_covers_at_most_oneline 2231 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup, Imo2025P6.DisjointSetup.CrossingPoints, Imo2025P6.Matilda,Imo2025P6.BaseSetup.all_black,Imo2025P6.DisjointSetup.toBaseSetup,LE.le,Finset.card, Imo2025P6.Label,Finset.filter, Imo2025P6.covers, Imo2025P6.DisjointSetup.validLabels,OfNat.ofNatProof uses:
Eq.mpr,Membership.mem,Finset,Eq,id,congrArg,propext,Finset.card_le_one_iff,And,Eq.mp,Finset.mem_filter,Decidable.byContradiction,Not, Imo2025P6.Point,Imo2025P6.Label.source, Imo2025P6.LabelType,Imo2025P6.Label.type,Imo2025P6.LabelType.W, Imo2025P6.targetsWin,Imo2025P6.BaseSetup.uand 77 more66 instances, coercions and auxiliary constants left out.
Tactic trace: 35 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.DisjointSetup.grid_size_ge_two_of_labelline 2272 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup, Imo2025P6.DisjointSetup.CrossingPoints, Imo2025P6.Point, Imo2025P6.LabelType,LT.lt,OfNat.ofNat,Imo2025P6.BaseSetup.a,Imo2025P6.DisjointSetup.toBaseSetup,Imo2025P6.BaseSetup.b,Membership.mem, Imo2025P6.Label,Finset, Imo2025P6.DisjointSetup.validLabels,Imo2025P6.Label.mk,LE.leProof uses:
Exists,And, Imo2025P6.targetsWin,Imo2025P6.BaseSetup.u,Imo2025P6.BaseSetup.v,Imo2025P6.BaseSetup.all_black,Eq,Function.Embedding, Imo2025P6.Label.emb,Imo2025P6.LabelType.W,Or, Imo2025P6.targetsNin,Imo2025P6.LabelType.N, Imo2025P6.targetsEin,Imo2025P6.LabelType.E, Imo2025P6.targetsSin,Imo2025P6.LabelType.S,Singleton.singleton, Imo2025P6.DisjointSetup.wx,Imo2025P6.LabelType.Xand 43 more57 instances, coercions and auxiliary constants left out.
Tactic trace: 23 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.DisjointSetup.valid_label_pos_not_blackline 2289 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup, Imo2025P6.DisjointSetup.CrossingPoints,LT.lt,OfNat.ofNat,Imo2025P6.BaseSetup.a,Imo2025P6.DisjointSetup.toBaseSetup,Imo2025P6.BaseSetup.b, Imo2025P6.Label,Membership.mem,Finset, Imo2025P6.DisjointSetup.validLabels,Not, Imo2025P6.Point,Imo2025P6.BaseSetup.all_black,Prod.snd, Imo2025P6.label_posProof uses:
LE.le, Imo2025P6.DisjointSetup.grid_size_ge_two_of_label,Imo2025P6.Label.source,Imo2025P6.Label.type,False, Imo2025P6.LabelType,Imo2025P6.Label.mk,Exists,And, Imo2025P6.targetsWin,Imo2025P6.BaseSetup.u,Imo2025P6.BaseSetup.v,Eq,Function.Embedding, Imo2025P6.Label.emb,Imo2025P6.LabelType.W,Or, Imo2025P6.targetsNin,Imo2025P6.LabelType.N, Imo2025P6.targetsEin and 39 more45 instances, coercions and auxiliary constants left out.
Tactic trace: 42 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.DisjointSetup.card_validLabels_disjointline 2323 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup, Imo2025P6.DisjointSetup.CrossingPoints,Eq,Finset.card, Imo2025P6.Label, Imo2025P6.DisjointSetup.validLabels,HAdd.hAdd, Imo2025P6.Point, Imo2025P6.targetsWin,Imo2025P6.BaseSetup.u,Imo2025P6.DisjointSetup.toBaseSetup,Imo2025P6.BaseSetup.v,Imo2025P6.BaseSetup.all_black, Imo2025P6.targetsNin, Imo2025P6.targetsEin, Imo2025P6.targetsSin,OfNat.ofNatProof uses:
Eq.mpr,Union.union,Finset,Finset.map, Imo2025P6.Label.emb,Imo2025P6.LabelType.W,Imo2025P6.LabelType.N,Imo2025P6.LabelType.E,Imo2025P6.LabelType.S,Imo2025P6.LabelType.X,Singleton.singleton, Imo2025P6.DisjointSetup.wx,id,congrArg,Imo2025P6.DisjointSetup.validLabels.eq_1,Finset.card_union_of_disjoint,Disjoint,Membership.mem,Not,propextand 49 more54 instances, coercions and auxiliary constants left out.
Tactic trace: 15 steps
Open to load the checked before-and-after goal states.
- theorem
Imo2025P6.DisjointSetup.disjoint_case_final_boundline 2341 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero, Imo2025P6.DisjointSetup,LT.lt,OfNat.ofNat,Imo2025P6.BaseSetup.a,Imo2025P6.DisjointSetup.toBaseSetup,Imo2025P6.BaseSetup.b, Imo2025P6.DisjointSetup.CrossingPoints,Finset, Imo2025P6.Matilda,Imo2025P6.BaseSetup.all_black, Imo2025P6.Point,Not,Membership.mem,ExistsUnique,And, Imo2025P6.Matilda.mem,LE.le,HMul.hMuland 4 moreProof uses:
GE.ge, Imo2025P6.Label, Imo2025P6.DisjointSetup.validLabels,Eq.mpr, Imo2025P6.targetsWin,Imo2025P6.BaseSetup.u,Imo2025P6.BaseSetup.v, Imo2025P6.targetsNin, Imo2025P6.targetsEin, Imo2025P6.targetsSin,id,Eq,congrArg, Imo2025P6.DisjointSetup.card_validLabels_disjoint, Imo2025P6.DisjointSetup.labels_total_disjoint, Imo2025P6.matilda_count_ge_label_count, Imo2025P6.DisjointSetup.valid_label_pos_not_black, Imo2025P6.DisjointSetup.matilda_covers_at_most_one, Imo2025P6.am_gm_bound_nat,Trans.transand 22 more53 instances, coercions and auxiliary constants left out.
Tactic trace: 7 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.exists_y_for_xline 2373 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,NeZero,Eq,Finset.card,Membership.mem, Imo2025P6.px,Fin,Exists,Prod,Prod.mkProof uses:
Decidable.byContradiction,Not,Finset.image,Prod.fst,Finset.erase,Finset.univ,LE.le,And,Eq.mp,congrArg,propext,Finset.mem_image,Eq.mpr,Ne,id,Finset.mem_erase,And.intro,Prod.snd,Prod.ext,Fin.extand 17 more34 instances, coercions and auxiliary constants left out.
Tactic trace: 32 steps
Open to load the checked before-and-after goal states.
- def
Imo2025P6.blackPermline 2406 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,Eq,Finset.card,Membership.mem, Imo2025P6.px,NeZero,FinProof uses:
Exists.choose,Prod,Prod.mk, Imo2025P6.exists_y_for_x8 instances, coercions and auxiliary constants left out.
- lemma
Imo2025P6.blackPerm_specline 2409 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,Eq,Finset.card,Membership.mem, Imo2025P6.px,NeZero,Fin,Prod,Prod.mk, Imo2025P6.blackPermProof uses:
Exists.choose_spec, Imo2025P6.exists_y_for_x8 instances, coercions and auxiliary constants left out.
- lemma
Imo2025P6.blackPerm_injectiveline 2412 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,Eq,Finset.card,Membership.mem, Imo2025P6.px,NeZero, Imo2025P6.py,Function.Injective,Fin, Imo2025P6.blackPermProof uses:
Prod.mk,Prod, Imo2025P6.blackPerm_spec,id,Eq.mpr,congrArg,Eq.refl,HEq,eq_of_heq10 instances, coercions and auxiliary constants left out.
Tactic trace: 10 steps
Open to load the checked before-and-after goal states.
- def
Imo2025P6.IsChainline 2426 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.PointProof uses:
Membership.mem,LT.lt, Imo2025P6.px, Imo2025P6.py3 instances, coercions and auxiliary constants left out.
- def
Imo2025P6.IsAntiChainline 2428 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.PointProof uses:
Membership.mem,LT.lt, Imo2025P6.px, Imo2025P6.py3 instances, coercions and auxiliary constants left out.
- lemma
Imo2025P6.exists_maximal_subsetline 2431 source - lemma
Imo2025P6.exists_maximal_chainline 2455 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,LE.le, Imo2025P6.IsChain,Exists,And,Not,Membership.mem,Insert.insert,Fin12 instances, coercions and auxiliary constants left out.
- lemma
Imo2025P6.exists_maximal_antichainline 2460 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,LE.le, Imo2025P6.IsAntiChain,Exists,And,Not,Membership.mem,Insert.insert,Fin12 instances, coercions and auxiliary constants left out.
- def
Imo2025P6.incSubsetsline 2466 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Fin,FinsetProof uses:
Finset.filter,StrictMonoOn,Membership.mem,Set,LT.lt,Finset.powerset,Finset.univ13 instances, coercions and auxiliary constants left out.
- def
Imo2025P6.decSubsetsline 2468 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Fin,FinsetProof uses:
Finset.filter,StrictAntiOn,Membership.mem,Set,LT.lt,Finset.powerset,Finset.univ13 instances, coercions and auxiliary constants left out.
- lemma
Imo2025P6.mem_incSubsetsline 2472 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Fin,Finset,Iff,Membership.mem, Imo2025P6.incSubsets,StrictMonoOnProof uses:
of_eq_true,Eq.trans,True,congrFun',congrArg,And,Finset.univ,Finset.filter,Set,LT.lt,Finset.filter.congr_simp,Eq.refl,Finset.powerset,Finset.powerset_univ,true_and,iff_self22 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.mem_decSubsetsline 2476 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Fin,Finset,Iff,Membership.mem, Imo2025P6.decSubsets,StrictAntiOnProof uses:
of_eq_true,Eq.trans,True,congrFun',congrArg,And,Finset.univ,Finset.filter,Set,LT.lt,Finset.filter.congr_simp,Eq.refl,Finset.powerset,Finset.powerset_univ,true_and,iff_self22 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.incSubsets_nonemptyline 2480 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Fin,Finset.Nonempty,Finset, Imo2025P6.incSubsetsProof uses:
Exists.intro,Membership.mem,EmptyCollection.emptyCollection,of_eq_true,Eq.trans,And,Finset.univ,LT.lt,True,Finset.filter,congrFun',congrArg,Finset.filter.congr_simp,StrictMonoOn,funext,Set,forall_congr,implies_congr,Eq.refl,Finset.powersetand 5 more23 instances, coercions and auxiliary constants left out.
Tactic trace: 2 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.decSubsets_nonemptyline 2483 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Fin,Finset.Nonempty,Finset, Imo2025P6.decSubsetsProof uses:
Exists.intro,Membership.mem,EmptyCollection.emptyCollection,of_eq_true,Eq.trans,And,Finset.univ,LT.lt,True,Finset.filter,congrFun',congrArg,Finset.filter.congr_simp,StrictAntiOn,funext,Set,forall_congr,implies_congr,Eq.refl,Finset.powersetand 5 more23 instances, coercions and auxiliary constants left out.
Tactic trace: 2 steps
Open to load the checked before-and-after goal states.
- def
Imo2025P6.lisLengthline 2486 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,FinProof uses:
Finset.sup,Finset, Imo2025P6.incSubsets,Finset.card3 instances, coercions and auxiliary constants left out.
- def
Imo2025P6.ldsLengthline 2488 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,FinProof uses:
Finset.sup,Finset, Imo2025P6.decSubsets,Finset.card3 instances, coercions and auxiliary constants left out.
- theorem
Imo2025P6.erdos_szekeres_directline 2491 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Fin,Function.Injective,LE.le,HMul.hMul, Imo2025P6.lisLength, Imo2025P6.ldsLengthProof uses:
Decidable.byContradiction,Not,LT.lt,Fintype.card,Eq.mpr,id,Eq,congrArg,Fintype.card_fin,Eq.mp,propext,not_le,Or,Exists,Finset,And,Finset.card,StrictMonoOn,StrictAntiOn,Falseand 63 more93 instances, coercions and auxiliary constants left out.
Tactic trace: 20 steps
Open to load the checked before-and-after goal states.
- def
Imo2025P6.toGridSubsetline 2511 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Fin,Finset, Imo2025P6.PointProof uses:
Finset.image,Prod.mk2 instances, coercions and auxiliary constants left out.
- lemma
Imo2025P6.card_toGridSubsetline 2515 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Fin,Finset,Eq,Finset.card, Imo2025P6.Point, Imo2025P6.toGridSubsetProof uses:
Finset.card_image_of_injective,Prod.mk,HEq,eq_of_heq3 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.is_chain_of_strict_monoline 2519 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Fin,Finset,StrictMonoOn, Imo2025P6.IsChain, Imo2025P6.toGridSubsetProof uses: Imo2025P6.Point,
Membership.mem,LT.lt, Imo2025P6.px,And,Eq,Prod.mk,Exists, Imo2025P6.py,Eq.mp,Iff.mp,Prod.snd,Fin.lt_def18 instances, coercions and auxiliary constants left out.
Tactic trace: 6 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.is_antichain_of_strict_antiline 2528 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Fin,Finset,StrictAntiOn, Imo2025P6.IsAntiChain, Imo2025P6.toGridSubsetProof uses: Imo2025P6.Point,
Membership.mem,LT.lt, Imo2025P6.px,And,Eq,Prod.mk,Exists, Imo2025P6.py,Eq.mp,Iff.mp,Prod.snd,Fin.lt_def18 instances, coercions and auxiliary constants left out.
Tactic trace: 6 steps
Open to load the checked before-and-after goal states.
- theorem
Imo2025P6.exists_optimal_u_vline 2537 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,NeZero,Eq,Finset.card,Membership.mem, Imo2025P6.px, Imo2025P6.py,Exists,And,LE.le,HMul.hMul,LT.lt,Not,FalseProof uses:
Fin, Imo2025P6.blackPerm,Function.Injective, Imo2025P6.blackPerm_injective, Imo2025P6.lisLength, Imo2025P6.ldsLength, Imo2025P6.erdos_szekeres_direct, Imo2025P6.incSubsets,Finset.sup,Finset.exists_mem_eq_sup, Imo2025P6.incSubsets_nonempty, Imo2025P6.decSubsets, Imo2025P6.decSubsets_nonempty, Imo2025P6.toGridSubset,Prod.mk,Eq.mp,Eq.trans,Finset.image,congrFun',congrArgand 71 more93 instances, coercions and auxiliary constants left out.
Tactic trace: 83 steps
Open to load the checked before-and-after goal states.
- theorem
Imo2025P6.matilda_lower_boundline 2622 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,NeZero,Eq,Finset.card,Membership.mem, Imo2025P6.px, Imo2025P6.py, Imo2025P6.Matilda,Not,ExistsUnique,And, Imo2025P6.Matilda.mem,LE.le,HSub.hSub,HAdd.hAdd,Nat.sqrt,HMul.hMul,OfNat.ofNatProof uses:
Exists,LT.lt,False, Imo2025P6.exists_optimal_u_v,lt_of_lt_of_le,NeZero.pos,pos_of_mul_pos_left,Nat.zero_le,pos_of_mul_pos_right, Imo2025P6.BaseSetup,Imo2025P6.BaseSetup.mk,rfl,dite,Finset.Nonempty,Inter.inter,Fin,Exists.choose,Exists.choose_spec,Singleton.singleton, Imo2025P6.inter_card_le_one and 19 more51 instances, coercions and auxiliary constants left out.
Tactic trace: 27 steps
Open to load the checked before-and-after goal states.
- abbrev
Imo2025P6.mod_baseline 2687 sourcestandard axioms: propext what this means
Statement uses:
Nat,IntProof uses:
HAdd.hAdd,HPow.hPow,OfNat.ofNat10 instances, coercions and auxiliary constants left out.
- lemma
Imo2025P6.mod_base_posline 2689 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,LT.lt,Int,OfNat.ofNat, Imo2025P6.mod_baseProof uses:
Right.add_pos_of_nonneg_of_pos,HPow.hPow,Even.pow_nonneg,HMul.hMul,even_two_mul,Mathlib.Meta.Positivity.pos_of_isNat,Mathlib.Meta.NormNum.isNat_ofNat,Eq.refl,Bool,Nat.ble48 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
- abbrev
Imo2025P6.val_sline 2691 sourceno axioms what this means
Statement uses:
Nat, Imo2025P6.Point,HMul.hMul,IntProof uses:
HAdd.hAdd,Prod.fst,Fin,Prod.snd,OfNat.ofNat11 instances, coercions and auxiliary constants left out.
- abbrev
Imo2025P6.val_tline 2692 sourcestandard axioms: propext what this means
Statement uses:
Nat, Imo2025P6.Point,HMul.hMul,IntProof uses:
HAdd.hAdd,HSub.hSub,Prod.fst,Fin,Prod.snd,HPow.hPow,OfNat.ofNat17 instances, coercions and auxiliary constants left out.
- def
Imo2025P6.calc_sline 2694 sourcestandard axioms: propext what this means
Statement uses:
Nat, Imo2025P6.Point,HMul.hMul,IntProof uses:
HDiv.hDiv, Imo2025P6.val_s, Imo2025P6.mod_base6 instances, coercions and auxiliary constants left out.
- def
Imo2025P6.calc_tline 2695 sourcestandard axioms: propext what this means
Statement uses:
Nat, Imo2025P6.Point,HMul.hMul,IntProof uses:
HDiv.hDiv, Imo2025P6.val_t, Imo2025P6.mod_base6 instances, coercions and auxiliary constants left out.
- def
Imo2025P6.all_black_kline 2696 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Finset, Imo2025P6.Point,HMul.hMulProof uses:
Finset.filter,And,Eq,Bool,BEq.beq,Int,HMod.hMod, Imo2025P6.val_s, Imo2025P6.mod_base,OfNat.ofNat,Bool.true, Imo2025P6.val_t,Finset.univ,Fin13 instances, coercions and auxiliary constants left out.
- def
Imo2025P6.b_st_coordsline 2701 sourceno axioms what this means
Statement uses:
Nat,Int,ProdProof uses:
Prod.mk,HAdd.hAdd,HSub.hSub,OfNat.ofNat,HMul.hMul9 instances, coercions and auxiliary constants left out.
- def
Imo2025P6.make_b_pointline 2702 sourcestandard axioms: propext what this means
Statement uses:
Nat,Int,Prod, Imo2025P6.b_st_coords,And,LE.le,OfNat.ofNat,Prod.fst,LT.lt,HMul.hMul,Prod.snd, Imo2025P6.PointProof uses:
Prod.mk,Fin,Fin.mk,Int.toNat18 instances, coercions and auxiliary constants left out.
Tactic trace: 6 steps
Open to load the checked before-and-after goal states.
- def
Imo2025P6.M_stline 2710 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Int,Finset, Imo2025P6.Point,HMul.hMulProof uses:
Finset.filter,And,Not,Membership.mem, Imo2025P6.all_black_k,Eq, Imo2025P6.calc_s, Imo2025P6.calc_t,Fin,Finset.univ14 instances, coercions and auxiliary constants left out.
- def
Imo2025P6.in_white_rectline 2712 sourceno axioms what this means
Statement uses:
Nat,Int, Imo2025P6.Point,HMul.hMulProof uses:
And,LE.le,HAdd.hAdd,HSub.hSub,OfNat.ofNat,Prod.fst,Fin,Prod.snd14 instances, coercions and auxiliary constants left out.
- structure
Imo2025P6.BlackPointPropsline 2716 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Int, Imo2025P6.Point,HMul.hMul2 instances, coercions and auxiliary constants left out.
- lemma
Imo2025P6.b_st_propsline 2721 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Int,Prod, Imo2025P6.b_st_coords,And,LE.le,OfNat.ofNat,Prod.fst,LT.lt,HMul.hMul,Prod.snd, Imo2025P6.BlackPointProps, Imo2025P6.make_b_pointProof uses: Imo2025P6.Point, Imo2025P6.mod_base,
Int.add_pos_of_nonneg_of_pos,HPow.hPow,sq_nonneg,of_decide_eq_true,id,Eq,Bool,Decidable.decide,Bool.true,Eq.refl,Fin,And.intro,Int.toNat,HAdd.hAdd,HSub.hSub,Int.toNat_of_nonneg,And.left,And.rightand 78 more83 instances, coercions and auxiliary constants left out.
Tactic trace: 24 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.M_subset_rectline 2741 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Int, Imo2025P6.Point,HMul.hMul,LE.le,OfNat.ofNat,Membership.mem,Finset, Imo2025P6.M_st, Imo2025P6.in_white_rectProof uses:
Finset.univ,Fin,And,Not, Imo2025P6.all_black_k,Eq, Imo2025P6.calc_s, Imo2025P6.calc_t,Eq.mp,Finset.filter,congrArg,propext,Finset.mem_filter,Imo2025P6.M_st.eq_1,LT.lt, Imo2025P6.mod_base, Imo2025P6.mod_base_pos,HSub.hSub, Imo2025P6.val_s, Imo2025P6.val_t and 113 more118 instances, coercions and auxiliary constants left out.
Tactic trace: 75 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.rect_subset_Mline 2797 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Int, Imo2025P6.Point,HMul.hMul,LE.le,OfNat.ofNat, Imo2025P6.in_white_rect,Membership.mem,Finset, Imo2025P6.M_stProof uses: Imo2025P6.mod_base,
LT.lt, Imo2025P6.mod_base_pos,And,HAdd.hAdd,HSub.hSub,Prod.fst,Fin,Prod.snd, Imo2025P6.val_s,And.intro,Trans.trans,Eq,rfl,id,Mathlib.Tactic.Ring.of_eq,HPow.hPow,Nat.rawCast,Mathlib.Tactic.Ring.Common.mul_congr,Mathlib.Tactic.Ring.Common.atom_pfand 111 more146 instances, coercions and auxiliary constants left out.
Tactic trace: 75 steps
Open to load the checked before-and-after goal states.
- instance
Imo2025P6.(instance at line 2858)line 2858 source - def
Imo2025P6.rect_finsetline 2861 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Int,Finset, Imo2025P6.Point,HMul.hMulProof uses:
Finset.filter, Imo2025P6.in_white_rect,Finset.univ,Fin7 instances, coercions and auxiliary constants left out.
- lemma
Imo2025P6.M_st_eq_rectline 2864 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Int,LE.le,OfNat.ofNat,Eq,Finset, Imo2025P6.Point,HMul.hMul, Imo2025P6.M_st, Imo2025P6.rect_finsetProof uses:
Finset.ext,Eq.mpr,Iff,Membership.mem, Imo2025P6.in_white_rect,id,congrArg,Eq.trans,Finset.filter,Finset.univ,Fin,And,True,congrFun',true_and,Iff.intro, Imo2025P6.M_subset_rect, Imo2025P6.rect_subset_M15 instances, coercions and auxiliary constants left out.
Tactic trace: 3 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.mem_rect_iff_idx_eqline 2870 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat, Imo2025P6.Point,HMul.hMul,Int,LE.le,OfNat.ofNat,Iff,Membership.mem,Finset, Imo2025P6.rect_finset,And,Not, Imo2025P6.all_black_k,Eq, Imo2025P6.calc_s, Imo2025P6.calc_tProof uses:
Eq.mpr, Imo2025P6.M_st,id,congrArg,Eq.symm, Imo2025P6.M_st_eq_rect,of_eq_true,Eq.trans,True,congrFun',Finset.filter,Fin,Finset.univ,true_and,iff_self22 instances, coercions and auxiliary constants left out.
Tactic trace: 2 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.s_t_rangeline 2875 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,LE.le,OfNat.ofNat, Imo2025P6.Point,HMul.hMul,And,Int, Imo2025P6.calc_s, Imo2025P6.calc_tProof uses: Imo2025P6.mod_base,
LT.lt, Imo2025P6.mod_base_pos,Prod.fst,Fin,HSub.hSub,HPow.hPow,And.intro,Int.natCast_nonneg,Fin.isLt,le_of_not_gt,Mathlib.Tactic.Linarith.lt_irrefl,Eq.mp,HAdd.hAdd,Neg.neg,congrArg,Mathlib.Tactic.Ring.of_eq,Mathlib.Tactic.Ring.Common.add_congr,Nat.rawCast,Int.rawCastand 97 more134 instances, coercions and auxiliary constants left out.
Tactic trace: 60 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.M_00_emptyline 2923 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,LE.le,OfNat.ofNat,Eq,Finset, Imo2025P6.Point,HMul.hMul, Imo2025P6.M_st,Int,EmptyCollection.emptyCollectionProof uses:
Eq.mpr,Not,Membership.mem,id,congrArg,propext,Finset.eq_empty_iff_forall_notMem,Finset.univ,Fin,And, Imo2025P6.all_black_k, Imo2025P6.calc_s, Imo2025P6.calc_t,False,Eq.mp,Finset.filter,Finset.mem_filter,Imo2025P6.M_st.eq_1, Imo2025P6.mod_base,LT.ltand 105 more119 instances, coercions and auxiliary constants left out.
Tactic trace: 24 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.M_k0_emptyline 2948 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,Eq,Finset, Imo2025P6.Point,HMul.hMul, Imo2025P6.M_st,Int,OfNat.ofNat,EmptyCollection.emptyCollectionProof uses:
Eq.mpr,Not,Membership.mem,id,congrArg,propext,Finset.eq_empty_iff_forall_notMem, Imo2025P6.all_black_k,And, Imo2025P6.calc_s, Imo2025P6.calc_t,False,Eq.mp,Eq.trans,Finset.filter,Fin,Finset.univ,True,congrFun',true_andand 93 more117 instances, coercions and auxiliary constants left out.
Tactic trace: 21 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.M_0k_emptyline 2969 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,LE.le,OfNat.ofNat,Eq,Finset, Imo2025P6.Point,HMul.hMul, Imo2025P6.M_st,Int,EmptyCollection.emptyCollectionProof uses:
Eq.mpr,Not,Membership.mem,id,congrArg,propext,Finset.eq_empty_iff_forall_notMem, Imo2025P6.all_black_k,And, Imo2025P6.calc_s, Imo2025P6.calc_t,False,Eq.mp,Eq.trans,Finset.filter,Fin,Finset.univ,True,congrFun',true_andand 95 more120 instances, coercions and auxiliary constants left out.
Tactic trace: 17 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.M_kk_emptyline 2988 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,LE.le,OfNat.ofNat,Eq,Finset, Imo2025P6.Point,HMul.hMul, Imo2025P6.M_st,Int,EmptyCollection.emptyCollectionProof uses:
Eq.mpr,Not,Membership.mem,id,congrArg,propext,Finset.eq_empty_iff_forall_notMem, Imo2025P6.all_black_k,And, Imo2025P6.calc_s, Imo2025P6.calc_t,False,Eq.mp,Eq.trans,Finset.filter,Fin,Finset.univ,True,congrFun',true_andand 100 more124 instances, coercions and auxiliary constants left out.
Tactic trace: 60 steps
Open to load the checked before-and-after goal states.
- def
Imo2025P6.clipped_rectline 3039 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,NeZero,LE.le,OfNat.ofNat,Int,Option, Imo2025P6.Matilda,HMul.hMul, Imo2025P6.all_black_kProof uses:
HAdd.hAdd,HSub.hSub,Max.max,Min.min,dite,And,Option.some,Imo2025P6.Matilda.mk,Int.toNat,Not,Option.none32 instances, coercions and auxiliary constants left out.
Tactic trace: 41 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.matilda_upper_bound_sumline 3089 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,LE.le,OfNat.ofNat,Int,Finset,Prod,SProd.sprod,Finset.Icc,Insert.insert,Prod.mk,Singleton.singleton,SDiff.sdiff,Eq,Finset.card,HSub.hSub,HAdd.hAdd,HPow.hPow,HMul.hMulProof uses:
id,Eq.mpr,congrArg,Finset.card_product,Int.toNat,congrFun',congr,Int.card_Icc,of_eq_true,Eq.trans,True,sub_zero,eq_self,Eq.refl,Ne,Finset.card_insert_of_notMem,Not,Membership.mem,Or,Andand 47 more89 instances, coercions and auxiliary constants left out.
Tactic trace: 37 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.eq_of_modEq_finline 3121 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,LE.le,OfNat.ofNat,Fin,HMul.hMul,Int.ModEq, Imo2025P6.mod_base,Int,EqProof uses:
HSub.hSub,id,Dvd.dvd,Decidable.byContradiction,Not,LT.lt,abs,Eq.mpr,And,congrArg,propext,abs_sub_lt_iff,HPow.hPow,pow_two,Iff.mpr,Int.ofNat_lt,Fin.isLt,And.intro,Trans.trans,rfland 64 more98 instances, coercions and auxiliary constants left out.
Tactic trace: 29 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.unique_row_all_blackline 3146 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,LE.le,OfNat.ofNat, Imo2025P6.Point,HMul.hMul,Membership.mem,Finset, Imo2025P6.all_black_k,Eq, Imo2025P6.pxProof uses:
Finset.univ,Fin,And,Int,HMod.hMod, Imo2025P6.val_s, Imo2025P6.mod_base, Imo2025P6.val_t,Eq.mp,Eq.trans,Finset.filter,congrFun',congrArg,Finset.filter_congr,Bool,BEq.beq,Bool.true,Iff.of_eq,congr,GT.gtand 63 more69 instances, coercions and auxiliary constants left out.
Tactic trace: 26 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.unique_col_all_blackline 3171 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,LE.le,OfNat.ofNat, Imo2025P6.Point,HMul.hMul,Membership.mem,Finset, Imo2025P6.all_black_k,Eq, Imo2025P6.pyProof uses:
Finset.univ,Fin,And,Int,HMod.hMod, Imo2025P6.val_s, Imo2025P6.mod_base, Imo2025P6.val_t,Eq.mp,Eq.trans,Finset.filter,congrFun',congrArg,Finset.filter_congr,Bool,BEq.beq,Bool.true,Iff.of_eq,congr,GT.gtand 38 more51 instances, coercions and auxiliary constants left out.
Tactic trace: 24 steps
Open to load the checked before-and-after goal states.
- theorem
Imo2025P6.card_all_black_leline 3192 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,LE.le,OfNat.ofNat,Finset.card, Imo2025P6.Point,HMul.hMul, Imo2025P6.all_black_kProof uses:
Eq.mpr,Fintype.card,Fin,id,Eq,congrArg,Eq.symm,Fintype.card_fin,Finset.univ,Finset.card_univ,Finset.card_le_card_of_injOn,Prod.fst,Membership.mem,Set,Finset,Finset.mem_univ, Imo2025P6.unique_row_all_black13 instances, coercions and auxiliary constants left out.
Tactic trace: 9 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.b_st_bounds_validline 3201 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,LE.le,OfNat.ofNat,And,Prod,Int, Imo2025P6.b_st_coords,Prod.fst,LT.lt,HMul.hMul,Prod.sndProof uses:
id,And.intro,HAdd.hAdd,HSub.hSub,add_nonneg,le_of_not_gt,Mathlib.Tactic.Linarith.lt_irrefl,Eq.mp,Neg.neg,congrArg,Mathlib.Tactic.Ring.of_eq,Mathlib.Tactic.Ring.Common.add_congr,HPow.hPow,Nat.rawCast,Int.rawCast,inferInstance,Ring,Int.negOfNat,Mathlib.Tactic.Ring.Common.neg_congr,Mathlib.Tactic.Ring.cast_posand 76 more96 instances, coercions and auxiliary constants left out.
Tactic trace: 26 steps
Open to load the checked before-and-after goal states.
- theorem
Imo2025P6.card_all_black_geline 3222 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,LE.le,OfNat.ofNat,HMul.hMul,Finset.card, Imo2025P6.Point, Imo2025P6.all_black_kProof uses:
Finset,Prod,Fin,Finset.univ,Int,HAdd.hAdd,And,Decidable.byContradiction,Not, Imo2025P6.make_b_point, Imo2025P6.b_st_bounds_valid,And.intro,le_of_not_gt,LT.lt,Mathlib.Tactic.Linarith.lt_irrefl,Eq.mp,Neg.neg,HSub.hSub,congrArg,Mathlib.Tactic.Ring.of_eqand 72 more97 instances, coercions and auxiliary constants left out.
Tactic trace: 64 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.card_all_black_k_eq_nline 3273 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,LE.le,OfNat.ofNat,Eq,Finset.card, Imo2025P6.Point,HMul.hMul, Imo2025P6.all_black_kProof uses:
le_antisymm, Imo2025P6.card_all_black_le, Imo2025P6.card_all_black_ge9 instances, coercions and auxiliary constants left out.
- def
Imo2025P6.construct_partitionline 3277 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,LE.le,OfNat.ofNat,NeZero,DecidableEq, Imo2025P6.Matilda,HMul.hMul, Imo2025P6.all_black_k,FinsetProof uses:
Int,Prod,SDiff.sdiff,SProd.sprod,Finset.Icc,Insert.insert,Prod.mk,Singleton.singleton,List,List.filterMap,Imo2025P6.construct_partition.match_1,Option, Imo2025P6.clipped_rect,Prod.fst,Prod.snd,Option.some,cast,Unit,Option.none,Finset.toListand 1 more27 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
- def
Imo2025P6.fline 3293 sourcestandard axioms: propext what this means
Statement uses:
Nat, Imo2025P6.Point,HMul.hMul,Prod,IntProof uses:
Prod.mk, Imo2025P6.calc_s, Imo2025P6.calc_t4 instances, coercions and auxiliary constants left out.
- lemma
Imo2025P6.mem_M_st_iff_fiberline 3295 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat, Imo2025P6.Point,HMul.hMul,Int,Iff,Membership.mem,Finset, Imo2025P6.M_st,And,Eq,Prod, Imo2025P6.f,Prod.mk,Not, Imo2025P6.all_black_kProof uses:
Eq.mpr, Imo2025P6.calc_s, Imo2025P6.calc_t,id,congr,congrArg,Eq.trans,Finset.filter,Fin,Finset.univ,True,congrFun',true_and,Prod.mk.injEq,Iff.intro,And.intro19 instances, coercions and auxiliary constants left out.
Tactic trace: 2 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.mem_matilda_iff_mem_M_stline 3299 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,LE.le,OfNat.ofNat,NeZero,Prod,Int, Imo2025P6.Matilda,HMul.hMul, Imo2025P6.all_black_k,Eq,Option, Imo2025P6.clipped_rect,Prod.fst,Prod.snd,Option.some, Imo2025P6.Point,Iff, Imo2025P6.Matilda.mem,Membership.mem,Finsetand 1 moreProof uses:
Eq.mpr,And,Imo2025P6.Matilda.x_min, Imo2025P6.px,Imo2025P6.Matilda.x_max,Imo2025P6.Matilda.y_min, Imo2025P6.py,Imo2025P6.Matilda.y_max,Not, Imo2025P6.calc_s, Imo2025P6.calc_t,id,congrArg,Eq.trans,Finset.filter,Fin,Finset.univ,True,congrFun',true_andand 97 more178 instances, coercions and auxiliary constants left out.
Tactic trace: 79 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.construction_is_valid_partitionline 3350 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,LE.le,OfNat.ofNat,NeZero,DecidableEq, Imo2025P6.Matilda,HMul.hMul, Imo2025P6.all_black_k, Imo2025P6.Point,Not,Membership.mem,Finset,ExistsUnique,And, Imo2025P6.construct_partition, Imo2025P6.Matilda.memProof uses:
Int, Imo2025P6.calc_s, Imo2025P6.calc_t, Imo2025P6.s_t_range, Imo2025P6.M_st,Eq.mpr,Eq,id,Eq.trans,Finset.filter,Fin,Finset.univ,True,congrFun',congrArg,true_and,And.intro,rfl,LT.lt,HSub.hSuband 145 more160 instances, coercions and auxiliary constants left out.
Tactic trace: 111 steps
Open to load the checked before-and-after goal states.
- lemma
Imo2025P6.sqrt_kkline 3431 source - theorem
Imo2025P6.matilda_solution_generalline 3438 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Nat,LE.le,OfNat.ofNat,HMul.hMul,NeZero,NeZero.mk, Imo2025P6.IsMinMatildaCount,HSub.hSub,HAdd.hAdd,HPow.hPowProof uses:
ne_of_gt,mul_pos,lt_of_lt_of_le,Mathlib.Meta.Positivity.pos_of_isNat,Mathlib.Meta.NormNum.isNat_ofNat,Eq.refl,Bool,Nat.ble,id,And.intro,Finset, Imo2025P6.Point, Imo2025P6.Matilda, Imo2025P6.IsValidConfiguration,Finset.card,Exists,And,Eq,Membership.mem, Imo2025P6.px and 49 more59 instances, coercions and auxiliary constants left out.
Tactic trace: 45 steps
Open to load the checked before-and-after goal states.
- determine
Imo2025P6.solution_valueline 3483 sourceno axioms what this means
Statement uses:
NatProof uses:
OfNat.ofNat1 instances, coercions and auxiliary constants left out.
- problem
Imo2025P6.imo2025_p6line 3485 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses: Imo2025P6.IsMinMatildaCount,
OfNat.ofNat,Nat, Imo2025P6.solution_valueProof uses:
id, Imo2025P6.matilda_solution_general,Mathlib.Meta.NormNum.isNat_le_true,Mathlib.Meta.NormNum.isNat_ofNat,Eq.refl,Bool,Bool.true9 instances, coercions and auxiliary constants left out.
Tactic trace: 2 steps
Open to load the checked before-and-after goal states.