Metamath Proof Explorer Home Metamath Proof Explorer
Most Recent Proofs
 
Mirrors  >  Home  >  MPE Home  >  Th. List  >  Recent ILE Most Recent             Other  >  MM 100

Most recent proofs    These are the 100 (Unicode, GIF) or 1000 (Unicode, GIF) most recent proofs in the set.mm database for the Metamath Proof Explorer (and the Hilbert Space Explorer). The set.mm database is maintained on GitHub with master (stable) and develop (development) versions. This page was created from develop commit 212ee7d9, also available here: set.mm (43MB) or set.mm.bz2 (compressed, 13MB).

The original proofs of theorems with recently shortened proofs can often be found by appending "OLD" to the theorem name, for example 19.43OLD for 19.43. The "OLD" versions are usually deleted after a year.

Other links    Email: Norm Megill.    Mailing list: Metamath Google Group Updated 7-Dec-2021 .    Contributing: How can I contribute to Metamath?    Syndication: RSS feed (courtesy of Dan Getz)    Related wikis: Ghilbert site; Ghilbert Google Group.

Recent news items    (7-Aug-2021) Version 0.198 of the metamath program fixes a bug in "write source ... /rewrap" that prevented end-of-sentence punctuation from appearing in column 79, causing some rewrapped lines to be shorter than necessary. Because this affects about 2000 lines in set.mm, you should use version 0.198 or later for rewrapping before submitting to GitHub.

(7-May-2021) Mario Carneiro has written a Metamath verifier in Lean.

(5-May-2021) Marnix Klooster has written a Metamath verifier in Zig.

(24-Mar-2021) Metamath was mentioned in a couple of articles about OpenAI: Researchers find that large language models struggle with math and What Is GPT-F?.

(26-Dec-2020) Version 0.194 of the metamath program adds the keyword "htmlexturl" to the $t comment to specify external versions of theorem pages. This keyward has been added to set.mm, and you must update your local copy of set.mm for "verify markup" to pass with the new program version.

(19-Dec-2020) Aleksandr A. Adamov has translated the Wikipedia Metamath page into Russian.

(19-Nov-2020) Eric Schmidt's checkmm.cpp was used as a test case for C'est, "a non-standard version of the C++20 standard library, with enhanced support for compile-time evaluation." See C++20 Compile-time Metamath Proof Verification using C'est.

(10-Nov-2020) Filip Cernatescu has updated the XPuzzle (Android app) to version 1.2. XPuzzle is a puzzle with math formulas derived from the Metamath system. At the bottom of the web page is a link to the Google Play Store, where the app can be found.

(7-Nov-2020) Richard Penner created a cross-reference guide between Frege's logic notation and the notation used by set.mm.

(4-Sep-2020) Version 0.192 of the metamath program adds the qualifier '/extract' to 'write source'. See 'help write source' and also this Google Group post.

(23-Aug-2020) Version 0.188 of the metamath program adds keywords Conclusion, Fact, Introduction, Paragraph, Scolia, Scolion, Subsection, and Table to bibliographic references. See 'help write bibliography' for the complete current list.

   Older news...

Color key:   Metamath Proof Explorer  Metamath Proof Explorer   Hilbert Space Explorer  Hilbert Space Explorer   User Mathboxes  User Mathboxes  

Last updated on 20-Jun-2026 at 5:34 AM ET.
Recent Additions to the Metamath Proof Explorer   Notes (last updated 7-Dec-2020 )
DateLabelDescription
Theorem
 
16-Jun-2026resdmdfsn 6016 Restricting a class to its domain without a set is the same as restricting the class to the universe without this set. (Contributed by AV, 2-Dec-2018.) Remove antecedent. (Revised by Eric Schmidt, 16-Jun-2026.)
(𝑅 ↾ (V ∖ {𝑋})) = (𝑅 ↾ (dom 𝑅 ∖ {𝑋}))
 
16-Jun-2026resindm 6014 When restricting a class, intersecting with the domain of the class has no effect. (Contributed by FL, 6-Oct-2008.) Remove antecedent. (Revised by Eric Schmidt, 16-Jun-2026.)
(𝐴 ↾ (𝐵 ∩ dom 𝐴)) = (𝐴𝐵)
 
16-Jun-20263jaao 1452 Inference conjoining and disjoining the antecedents of three implications. (Contributed by Jeff Hankins, 15-Aug-2009.) (Proof shortened by Andrew Salmon, 13-May-2011.) (Proof shortened by Garrett Katz, 16-Jun-2026.)
(𝜑 → (𝜓𝜒))    &   (𝜃 → (𝜏𝜒))    &   (𝜂 → (𝜁𝜒))       ((𝜑𝜃𝜂) → ((𝜓𝜏𝜁) → 𝜒))
 
16-Jun-20263jaoi 1446 Disjunction of three antecedents (inference). (Contributed by NM, 12-Sep-1995.) (Proof shortened by Garrett Katz, 16-Jun-2026.)
(𝜑𝜓)    &   (𝜒𝜓)    &   (𝜃𝜓)       ((𝜑𝜒𝜃) → 𝜓)
 
15-Jun-2026anbiim 650 Adding biconditional when antecedents are conjuncted. (Contributed by metakunt, 16-Apr-2024.) (Proof shortened by Wolf Lammen, 7-May-2025.) (Proof shortened by Garrett Katz, 15-Jun-2026.)
(𝜑 → (𝜒𝜃))    &   (𝜓 → (𝜃𝜒))       ((𝜑𝜓) → (𝜒𝜃))
 
15-Jun-2026imbibi 394 The antecedent of one side of a biconditional can be moved out of the biconditional to become the antecedent of the remaining biconditional. (Contributed by BJ, 1-Jan-2025.) (Proof shortened by Wolf Lammen, 5-Jan-2025.) (Proof shortened by Garrett Katz, 15-Jun-2026.)
(((𝜑𝜓) ↔ 𝜒) → (𝜑 → (𝜓𝜒)))
 
13-Jun-2026ad5ant135 1385 Deduction adding conjuncts to antecedent. (Contributed by Alan Sare, 17-Oct-2017.) (Proof shortened by Wolf Lammen, 23-Jun-2022.) (Proof shortened by Garrett Katz, 13-Jun-2026.)
((𝜑𝜓𝜒) → 𝜃)       (((((𝜑𝜏) ∧ 𝜓) ∧ 𝜂) ∧ 𝜒) → 𝜃)
 
13-Jun-2026ad5ant134 1383 Deduction adding conjuncts to antecedent. (Contributed by Alan Sare, 17-Oct-2017.) (Proof shortened by Wolf Lammen, 23-Jun-2022.) (Proof shortened by Garrett Katz, 13-Jun-2026.)
((𝜑𝜓𝜒) → 𝜃)       (((((𝜑𝜏) ∧ 𝜓) ∧ 𝜒) ∧ 𝜂) → 𝜃)
 
13-Jun-2026ad5ant125 1381 Deduction adding conjuncts to antecedent. (Contributed by Alan Sare, 17-Oct-2017.) (Proof shortened by Wolf Lammen, 23-Jun-2022.) (Proof shortened by Garrett Katz, 13-Jun-2026.)
((𝜑𝜓𝜒) → 𝜃)       (((((𝜑𝜓) ∧ 𝜏) ∧ 𝜂) ∧ 𝜒) → 𝜃)
 
13-Jun-2026ad5ant124 1379 Deduction adding conjuncts to antecedent. (Contributed by Alan Sare, 17-Oct-2017.) (Proof shortened by Wolf Lammen, 23-Jun-2022.) (Proof shortened by Garrett Katz, 13-Jun-2026.)
((𝜑𝜓𝜒) → 𝜃)       (((((𝜑𝜓) ∧ 𝜏) ∧ 𝜒) ∧ 𝜂) → 𝜃)
 
12-Jun-2026nmulcld 36507 Closure law for natrual multiplication. Deduction form. (Contributed by Scott Fenton, 12-Jun-2026.)
(𝜑𝐴 ∈ On)    &   (𝜑𝐵 ∈ On)       (𝜑 → (𝐴 ·no 𝐵) ∈ On)
 
12-Jun-2026onvfowev 35423 If 𝐹 maps the ordinals onto the universe, then 𝑅 well-orders the universe. This is the ZFC version of (8 3) in https://tinyurl.com/hamkins-gblac. Note that in NBG set theory the antecedent would be something like 𝑋(𝑋 ≠ ∅ → ∃𝐹𝐹:On–onto𝑋), but since we cannot quantify over classes, we instead consider only the case 𝑋 = V which is sufficient for this proof. (Contributed by BTernaryTau, 12-Jun-2026.)
𝑅 = {⟨𝑥, 𝑦⟩ ∣ (𝐻𝑥) ∈ (𝐻𝑦)}    &   𝐻 = (𝑧 ∈ V ↦ (𝐹 “ {𝑧}))       (𝐹:On–onto→V → 𝑅 We V)
 
12-Jun-2026justify-df 2084 Metamath handles substitution uniformly. Any expression may replace a variable provided that their types are compatible and that no substituting expression contains a set variable prohibited by a distinct variable condition.

The axioms are formulated so that every such substitution is valid when the side conditions are satisfied. Consequently, every theorem derived from the axioms inherits the same substitution property. This agrees with standard mathematical practice, where substitution is unrestricted apart from type and freshness requirements.

Definitions introduce abbreviations for expressions represented by their definiens, usually the right-hand side of a defining biconditional. When a definition contains dummy variables, however, the definiens is not uniquely determined by the definiendum, since the names of fresh bound variables do not appear in the definiendum. Definitions of this kind are meaningful only if the particular names chosen for dummy variables are irrelevant.

In ordinary logic and mathematics, renaming fresh bound variables (alpha-renaming) is regarded as insignificant. Metamath's substitution mechanism reflects this principle, and therefore definitions must also respect it. Early versions of this database relied on this convention implicitly. Beginning in 2023, definitions involving dummy variables were accompanied by justification theorems (for example, rename-sb 2088) showing that alpha-renaming the definiens yields an equivalent expression. Consequently, different choices of dummy variable names cannot produce equivalences that are not already derivable within the formal system.

Metamath records not only proofs but also the list of axioms on which they depend. Since definitions are intended merely as abbreviations, their use should not affect these dependency lists. Unfortunately, the simple form of definition used before 2026 did not preserve this invariance. Two instances of a definition differing only in the names of dummy variables could be used to reprove the corresponding justification theorem with unusually low axiom usage, unattainable by proofs using axioms alone. Thus the recorded dependencies could depend on whether the definition was used or expanded away.

Beginning in February 2026, definitions involving dummy variables were therefore modified to incorporate alpha-renaming explicitly. In the intermediate scheme, the corresponding justification theorem was added as a hypothesis of the definition, ensuring that every use of the definition inherited the axioms needed to establish the renaming property. This eliminated artificial reductions in dependency lists.

Using the alpha-renaming property as an external hypothesis is, however, not ideal. A better approach is to encode the property directly in the definiens itself. This preserves the invariance of axiom dependencies while allowing reductions that are impossible with the hypothesis-based form.

Formal justifications for this improved definition scheme are given in just1-df 2085, just2-df 2086, and just3-df 2087. An implementation is provided by definition df-sb 2090 and the theorems that follow, where the underlying techniques may be studied in greater detail. (Contributed by Wolf Lammen, 12-Jun-2026.) (Proof modification is discouraged.) (New usage is discouraged.)

𝜑       𝜑
 
11-Jun-2026vonf1oonfo 35422 If 𝐹 is a bijection from the ordinals to the universe and 𝐴 is non-empty, then 𝐻 maps the ordinals onto 𝐴. This is the ZFC version of (5 8) in https://tinyurl.com/hamkins-gblac, though it neglects to specify that 𝐴 must be non-empty. Note that in NBG set theory the antecedent would be something like 𝑋𝑋 ∈ V → ∃𝐹𝐹:𝑋1-1-onto→On), but since we cannot quantify over classes, we instead consider only the case 𝑋 = V which is sufficient for this proof. This theorem can also be viewed as (2 8). (Contributed by BTernaryTau, 11-Jun-2026.)
𝐻 = (𝑥 ∈ On ↦ if((𝐹𝑥) ∈ 𝐴, (𝐹𝑥), 𝐷))    &   𝐷 = (𝐹 {𝑦 ∈ On ∣ (𝐹𝑦) ∈ 𝐴})       ((𝐹:On–1-1-onto→V ∧ 𝐴 ≠ ∅) → 𝐻:On–onto𝐴)
 
11-Jun-2026vonf1owev 35416 If 𝐹 is a bijection from the universe to the ordinals, then 𝑅 well-orders the universe. This is the ZFC version of (2 3) in https://tinyurl.com/hamkins-gblac. (Contributed by BTernaryTau, 6-Dec-2025.) (Proof shortened by BTernaryTau, 11-Jun-2026.)
𝑅 = {⟨𝑥, 𝑦⟩ ∣ (𝐹𝑥) ∈ (𝐹𝑦)}       (𝐹:V–1-1-onto→On → 𝑅 We V)
 
11-Jun-2026vonf1wev 35415 If 𝐹 maps the universe one-to-one into the ordinals, then 𝑅 well-orders the universe. This is the ZFC version of (6 3) which is used in place of (7 3) in https://tinyurl.com/hamkins-gblac. Note that in NBG set theory the antecedent would be something like 𝑋𝐹𝐹:𝑋1-1→On, but since we cannot quantify over classes, we instead consider only the case 𝑋 = V which is sufficient for this proof. (Contributed by BTernaryTau, 11-Jun-2026.)
𝑅 = {⟨𝑥, 𝑦⟩ ∣ (𝐹𝑥) ∈ (𝐹𝑦)}       (𝐹:V–1-1→On → 𝑅 We V)
 
10-Jun-2026nmull0 36510 Natural multiplication by zero. (Contributed by Scott Fenton, 10-Jun-2026.)
(𝐴 ∈ On → (∅ ·no 𝐴) = ∅)
 
10-Jun-2026nmulr0 36509 Natural multiplication by zero. (Contributed by Scott Fenton, 10-Jun-2026.)
(𝐴 ∈ On → (𝐴 ·no ∅) = ∅)
 
10-Jun-2026nmulcom 36508 Natural multiplication commutes. (Contributed by Scott Fenton, 10-Jun-2026.)
((𝐴 ∈ On ∧ 𝐵 ∈ On) → (𝐴 ·no 𝐵) = (𝐵 ·no 𝐴))
 
10-Jun-2026nmulval 36506 Show the value of natural multiplication. (Contributed by Scott Fenton, 10-Jun-2026.)
((𝐴 ∈ On ∧ 𝐵 ∈ On) → (𝐴 ·no 𝐵) = {𝑥 ∈ On ∣ ∀𝑎𝐴𝑏𝐵 ((𝑎 ·no 𝐵) +no (𝐴 ·no 𝑏)) ∈ (𝑥 +no (𝑎 ·no 𝑏))})
 
10-Jun-2026nmulcl 36505 Closure law for natural multiplication. (Contributed by Scott Fenton, 10-Jun-2026.)
((𝐴 ∈ On ∧ 𝐵 ∈ On) → (𝐴 ·no 𝐵) ∈ On)
 
10-Jun-2026vonf1oonf1 35421 If 𝐹 is a bijection from the universe to the ordinals, then 𝐻 maps 𝐴 one-to-one into the ordinals. This is the ZFC version of (5 6) in https://tinyurl.com/hamkins-gblac. Note that in NBG set theory the antecedent would be something like 𝑋𝑋 ∈ V → ∃𝐹𝐹:𝑋1-1-onto→On), but since we cannot quantify over classes, we instead consider only the case 𝑋 = V which is sufficient for this proof. This theorem can also be viewed as (2 6). (Contributed by BTernaryTau, 10-Jun-2026.)
𝐻 = (𝐹𝐴)       (𝐹:V–1-1-onto→On → 𝐻:𝐴1-1→On)
 
10-Jun-2026bdaydm 27819 The birthday function's domain is No . (Contributed by Scott Fenton, 14-Jun-2011.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.)
dom bday = No
 
10-Jun-2026pige0 26501 π is nonnegative. (Contributed by Umit Teoman Dogan, 10-Jun-2026.)
0 ≤ π
 
10-Jun-20262picn 26499 (2 · π) is a complex number. (Contributed by Umit Teoman Dogan, 10-Jun-2026.)
(2 · π) ∈ ℂ
 
10-Jun-20262pire 26497 (2 · π) is a real number. (Contributed by Umit Teoman Dogan, 10-Jun-2026.)
(2 · π) ∈ ℝ
 
10-Jun-202610nprm 17132 10 is not a prime number. (Contributed by Mario Carneiro, 18-Feb-2014.) (Revised by AV, 6-Sep-2021.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.)
¬ 10 ∈ ℙ
 
10-Jun-20261lt10 12830 1 is less than 10. (Contributed by NM, 7-Nov-2012.) (Revised by Mario Carneiro, 9-Mar-2015.) (Revised by AV, 8-Sep-2021.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.)
1 < 10
 
10-Jun-20262lt10 12829 2 is less than 10. (Contributed by Mario Carneiro, 10-Mar-2015.) (Revised by AV, 8-Sep-2021.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.)
2 < 10
 
10-Jun-20263lt10 12828 3 is less than 10. (Contributed by Mario Carneiro, 10-Mar-2015.) (Revised by AV, 8-Sep-2021.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.)
3 < 10
 
10-Jun-20264lt10 12827 4 is less than 10. (Contributed by Mario Carneiro, 10-Mar-2015.) (Revised by AV, 8-Sep-2021.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.)
4 < 10
 
10-Jun-20265lt10 12826 5 is less than 10. (Contributed by Mario Carneiro, 10-Mar-2015.) (Revised by AV, 8-Sep-2021.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.)
5 < 10
 
10-Jun-20266lt10 12825 6 is less than 10. (Contributed by Mario Carneiro, 10-Mar-2015.) (Revised by AV, 8-Sep-2021.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.)
6 < 10
 
10-Jun-20267lt10 12824 7 is less than 10. (Contributed by Mario Carneiro, 10-Mar-2015.) (Revised by AV, 8-Sep-2021.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.)
7 < 10
 
10-Jun-20268lt10 12823 8 is less than 10. (Contributed by Mario Carneiro, 8-Feb-2015.) (Revised by AV, 8-Sep-2021.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.)
8 < 10
 
10-Jun-20269t11e99 12820 9 times 11 equals 99. (Contributed by AV, 14-Jun-2021.) (Revised by AV, 6-Sep-2021.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.)
(9 · 11) = 99
 
10-Jun-202611nn 12710 11 is a positive integer. (Contributed by Umit Teoman Dogan, 10-Jun-2026.)
11 ∈ ℕ
 
10-Jun-202625nn0 12704 25 is a nonnegative integer. (Contributed by Umit Teoman Dogan, 10-Jun-2026.)
25 ∈ ℕ0
 
10-Jun-202616nn0 12703 16 is a nonnegative integer. (Contributed by Umit Teoman Dogan, 10-Jun-2026.)
16 ∈ ℕ0
 
10-Jun-202612nn0 12702 12 is a nonnegative integer. (Contributed by Umit Teoman Dogan, 10-Jun-2026.)
12 ∈ ℕ0
 
10-Jun-202611nn0 12701 11 is a nonnegative integer. (Contributed by Umit Teoman Dogan, 10-Jun-2026.)
11 ∈ ℕ0
 
10-Jun-20262le3 12389 2 is less than or equal to 3. (Contributed by Umit Teoman Dogan, 10-Jun-2026.)
2 ≤ 3
 
10-Jun-20262t4e8 12384 2 times 4 equals 8. (Contributed by Umit Teoman Dogan, 10-Jun-2026.)
(2 · 4) = 8
 
10-Jun-20262t3e6 12381 2 times 3 equals 6. (Contributed by Umit Teoman Dogan, 10-Jun-2026.)
(2 · 3) = 6
 
10-Jun-20262m1e1 12339 2 - 1 = 1. The result is on the right-hand-side to be consistent with similar proofs like 4p4e8 12369. (Contributed by David A. Wheeler, 4-Jan-2017.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.)
(2 − 1) = 1
 
10-Jun-20269pos 12331 The number 9 is positive. (Contributed by NM, 27-May-1999.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.)
0 < 9
 
10-Jun-20268pos 12330 The number 8 is positive. (Contributed by NM, 27-May-1999.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.)
0 < 8
 
10-Jun-20267pos 12329 The number 7 is positive. (Contributed by NM, 27-May-1999.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.)
0 < 7
 
10-Jun-20266pos 12328 The number 6 is positive. (Contributed by NM, 27-May-1999.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.)
0 < 6
 
10-Jun-20265pos 12327 The number 5 is positive. (Contributed by NM, 27-May-1999.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.)
0 < 5
 
10-Jun-20264pos 12325 The number 4 is positive. (Contributed by NM, 27-May-1999.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.)
0 < 4
 
10-Jun-20263pos 12323 The number 3 is positive. (Contributed by NM, 27-May-1999.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.)
0 < 3
 
10-Jun-20262thalfe1 12322 2 times one half equals 1. (Contributed by Umit Teoman Dogan, 10-Jun-2026.)
(2 · (1 / 2)) = 1
 
10-Jun-20262pos 12319 The number 2 is positive. (Contributed by NM, 27-May-1999.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.)
0 < 2
 
10-Jun-20260le2 12317 The number 0 is less than or equal to 2. (Contributed by David A. Wheeler, 7-Dec-2018.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.)
0 ≤ 2
 
10-Jun-20261eltp012 12285 1 is an element of {0, 1, 2}. (Contributed by Umit Teoman Dogan, 10-Jun-2026.)
1 ∈ {0, 1, 2}
 
10-Jun-20261elpr01 11174 1 is an element of {0, 1}. (Contributed by Umit Teoman Dogan, 10-Jun-2026.)
1 ∈ {0, 1}
 
10-Jun-20260elpr01 11171 0 is an element of {0, 1}. (Contributed by Umit Teoman Dogan, 10-Jun-2026.)
0 ∈ {0, 1}
 
10-Jun-2026cfon 10208 The cofinality of any set is an ordinal (although it only makes sense when 𝐴 is an ordinal). (Contributed by Mario Carneiro, 9-Mar-2013.) Avoid ax-pow 5321 and ax-un 7714. (Revised by Umit Teoman Dogan, 10-Jun-2026.)
(cf‘𝐴) ∈ On
 
10-Jun-20261n0 8451 Ordinal one is not equal to ordinal zero. (Contributed by NM, 26-Dec-2004.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.)
1o ≠ ∅
 
10-Jun-20261oelpr 8443 1o is an element of {∅, 1o}. (Contributed by Umit Teoman Dogan, 10-Jun-2026.)
1o ∈ {∅, 1o}
 
10-Jun-2026tfrlem6 8347 Lemma for transfinite recursion. The union of all acceptable functions is a relation. (Contributed by NM, 8-Aug-1994.) (Revised by Mario Carneiro, 9-May-2015.) Avoid ax-10 2174, ax-nul 5255, ax-pr 5389, ax-sep 5245 and ax-un 7714. (Revised by Umit Teoman Dogan, 10-Jun-2026.)
𝐴 = {𝑓 ∣ ∃𝑥 ∈ On (𝑓 Fn 𝑥 ∧ ∀𝑦𝑥 (𝑓𝑦) = (𝐹‘(𝑓𝑦)))}       Rel recs(𝐹)
 
10-Jun-2026pwuninel 8250 The powerclass of the union of a class does not belong to that class. This theorem provides a way of constructing a new set that does not belong to a given set. See also pwuninel2 8249. (Contributed by NM, 27-Jun-2008.) (Proof shortened by Mario Carneiro, 23-Dec-2016.) Avoid ax-pr 5389 and ax-un 7714. (Revised by Umit Teoman Dogan, 10-Jun-2026.)
¬ 𝒫 𝐴𝐴
 
10-Jun-2026peano3 7867 The successor of any natural number is not zero. One of Peano's five postulates for arithmetic. Proposition 7.30(3) of [TakeutiZaring] p. 42. (Contributed by NM, 3-Sep-2003.) Avoid ax-nul 5255. (Revised by Umit Teoman Dogan, 10-Jun-2026.)
(𝐴 ∈ ω → suc 𝐴 ≠ ∅)
 
10-Jun-2026f1odm 6806 The domain of a one-to-one onto mapping. (Contributed by NM, 8-Mar-2014.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.)
(𝐹:𝐴1-1-onto𝐵 → dom 𝐹 = 𝐴)
 
10-Jun-2026f1rel 6760 A one-to-one onto mapping is a relation. (Contributed by NM, 8-Mar-2014.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.)
(𝐹:𝐴1-1𝐵 → Rel 𝐹)
 
10-Jun-2026f1fun 6758 A one-to-one mapping is a function. (Contributed by NM, 8-Mar-2014.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.)
(𝐹:𝐴1-1𝐵 → Fun 𝐹)
 
10-Jun-2026ffun 6690 A mapping is a function. (Contributed by NM, 3-Aug-1994.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.)
(𝐹:𝐴𝐵 → Fun 𝐹)
 
10-Jun-2026cnvcnvss 6176 The double converse of a class is a subclass. Exercise 2 of [TakeutiZaring] p. 25. (Contributed by NM, 23-Jul-2004.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.)
𝐴𝐴
 
10-Jun-2026rnin 6127 The range of an intersection belongs the intersection of ranges. Theorem 9 of [Suppes] p. 60. (Contributed by NM, 15-Sep-2004.) Avoid ax-pr 5389 and ax-sep 5245. (Revised by Umit Teoman Dogan, 10-Jun-2026.)
ran (𝐴𝐵) ⊆ (ran 𝐴 ∩ ran 𝐵)
 
10-Jun-2026nrelv 5770 The universal class is not a relation. (Contributed by Thierry Arnoux, 23-Jan-2022.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.)
¬ Rel V
 
10-Jun-2026uniin 4888 The class union of the intersection of two classes. Exercise 4.12(n) of [Mendelson] p. 235. See uniinqs 8774 for a condition where equality holds. (Contributed by NM, 4-Dec-2003.) (Proof shortened by Andrew Salmon, 29-Jun-2011.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.)
(𝐴𝐵) ⊆ ( 𝐴 𝐵)
 
10-Jun-2026pwidg 4574 A set is an element of its power set. (Contributed by Stefan O'Rear, 1-Feb-2015.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.)
(𝐴𝑉𝐴 ∈ 𝒫 𝐴)
 
10-Jun-2026rab0 4338 Any restricted class abstraction restricted to the empty set is empty. (Contributed by NM, 15-Oct-2003.) (Proof shortened by Andrew Salmon, 26-Jun-2011.) (Proof shortened by JJ, 14-Jul-2021.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.)
{𝑥 ∈ ∅ ∣ 𝜑} = ∅
 
10-Jun-2026ssinss1 4197 Intersection preserves subclass relationship. (Contributed by NM, 14-Sep-1999.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.)
(𝐴𝐶 → (𝐴𝐵) ⊆ 𝐶)
 
10-Jun-2026pssirr 4056 Proper subclass is irreflexive. Theorem 7 of [Suppes] p. 23. (Contributed by NM, 7-Feb-1996.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.)
¬ 𝐴𝐴
 
10-Jun-2026nbbn 385 Move negation outside of biconditional. Compare Theorem *5.18 of [WhiteheadRussell] p. 124. (Contributed by NM, 27-Jun-2002.) (Proof shortened by Wolf Lammen, 20-Sep-2013.) (Proof shortened by Umit Teoman Dogan, 10-Jun-2026.)
((¬ 𝜑𝜓) ↔ ¬ (𝜑𝜓))
 
9-Jun-2026wevonprcf1o 35420 If 𝑅 is a set-like well-ordering of the universe and 𝐴 is a proper class, then 𝐹 is a bijection from the ordinals to 𝐴. This is the ZFC version of (4 5) in https://tinyurl.com/hamkins-gblac. (Contributed by BTernaryTau, 9-Jun-2026.)
𝐹 = OrdIso(𝑅, 𝐴)       ((𝑅 We V ∧ 𝑅 Se V ∧ ¬ 𝐴 ∈ V) → 𝐹:On–1-1-onto𝐴)
 
9-Jun-2026ordtypeon 35350 A proper class with a set-like well-ordering is isomorphic to the proper class of all ordinal numbers. (Contributed by BTernaryTau, 9-Jun-2026.)
𝐹 = OrdIso(𝑅, 𝐴)       ((𝑅 We 𝐴𝑅 Se 𝐴 ∧ ¬ 𝐴 ∈ V) → 𝐹 Isom E , 𝑅 (On, 𝐴))
 
9-Jun-2026ordprcon 35347 If an ordinal class is not a set, then it must be the proper class of all ordinals. (Contributed by BTernaryTau, 9-Jun-2026.)
((Ord 𝐴 ∧ ¬ 𝐴 ∈ V) → 𝐴 = On)
 
8-Jun-2026vonf1osev 35419 If 𝐹 is a bijection from the universe to the ordinals, then 𝑅 is a set-like well-ordering of the universe. This is the ZFC version of (2 4) which is used in place of (3 4) in https://tinyurl.com/hamkins-gblac. This proof takes advantage of the fact that the well-order constructed in (2 3) is also set-like. (Contributed by BTernaryTau, 8-Jun-2026.)
𝑅 = {⟨𝑥, 𝑦⟩ ∣ (𝐹𝑥) ∈ (𝐹𝑦)}       (𝐹:V–1-1-onto→On → (𝑅 We V ∧ 𝑅 Se V))
 
7-Jun-2026pm2.65i 195 Inference for proof by contradiction. (Contributed by NM, 18-May-1994.) (Proof shortened by Wolf Lammen, 11-Sep-2013.) (Proof shortened by Garrett Katz, 7-Jun-2026.)
(𝜑𝜓)    &   (𝜑 → ¬ 𝜓)        ¬ 𝜑
 
6-Jun-2026prmidlsubm 33607 The complement of a prime ideal is multiplicatively closed. Converse of ssdifidlprm 33606. (Contributed by Thierry Arnoux, 6-Jun-2026.)
𝐵 = (Base‘𝑅)    &   (𝜑𝑅 ∈ CRing)    &   (𝜑𝑃 ∈ (PrmIdeal‘𝑅))       (𝜑 → (𝐵𝑃) ∈ (SubMnd‘(mulGrp‘𝑅)))
 
6-Jun-2026prmidlprop 33596 Property of prime ideals. (Contributed by Thierry Arnoux, 6-Jun-2026.)
𝐵 = (Base‘𝑅)    &    · = (.r𝑅)    &   (𝜑𝑅 ∈ CRing)    &   (𝜑𝑃 ∈ (PrmIdeal‘𝑅))    &   (𝜑𝑋𝐵)    &   (𝜑𝑌𝐵)    &   (𝜑 → (𝑋 · 𝑌) ∈ 𝑃)       (𝜑 → (𝑋𝑃𝑌𝑃))
 
6-Jun-2026rlocisunit 33418 Characterize the units of the localization 𝐿 of a ring 𝑅 at 𝑆 as the elements with a "numerator" 𝑃 in the saturation 𝑇 of 𝑆. (Contributed by Thierry Arnoux, 6-Jun-2026.)
𝐵 = (Base‘𝑅)    &    · = (.r𝑅)    &   𝐿 = (𝑅 RLocal 𝑆)    &   𝑊 = (Unit‘𝐿)    &   (𝜑𝑅 ∈ CRing)    &   (𝜑𝑆 ∈ (SubMnd‘(mulGrp‘𝑅)))    &    = (𝑅 ~RL 𝑆)    &   (𝜑𝑃𝐵)    &   (𝜑𝑄𝑆)    &   𝑇 = {𝑟𝐵 ∣ ∃𝑠𝐵 (𝑟 · 𝑠) ∈ 𝑆}       (𝜑 → ([⟨𝑃, 𝑄⟩] 𝑊𝑃𝑇))
 
6-Jun-2026rlocinvunit 33417 In the localization of a ring 𝑅 at 𝑆, inverses of elements of 𝑆 are units. (Contributed by Thierry Arnoux, 6-Jun-2026.)
𝐵 = (Base‘𝑅)    &    1 = (1r𝑅)    &    = (𝑅 ~RL 𝑆)    &   𝐿 = (𝑅 RLocal 𝑆)    &   𝑊 = (Unit‘𝐿)    &   (𝜑𝑅 ∈ CRing)    &   (𝜑𝑆 ∈ (SubMnd‘(mulGrp‘𝑅)))    &   (𝜑𝑄𝑆)       (𝜑 → [⟨ 1 , 𝑄⟩] 𝑊)
 
6-Jun-2026isunitc 33383 Characterize units in a commutative ring. (Contributed by Thierry Arnoux, 6-Jun-2026.)
𝐵 = (Base‘𝑅)    &   𝑈 = (Unit‘𝑅)    &    · = (.r𝑅)    &    1 = (1r𝑅)    &   (𝜑𝑋𝐵)    &   (𝜑𝑅 ∈ CRing)       (𝜑 → (𝑋𝑈 ↔ ∃𝑦𝐵 (𝑋 · 𝑦) = 1 ))
 
6-Jun-2026just3-df 2087 Third justification theorem for definitions whose definiens is a conjunction, as in df-sb 2090. In addition to the defining equivalence, the second hypothesis requires the conjuncts of the definiens to be equivalent.

When the conjuncts are quantified and differ only by a bound-variable renaming, this equivalence is usually obtained from an implicit substitution between the underlying expressions. In some cases, however, it can be proved more directly and with fewer axioms.

Under these assumptions, either conjunct implies the definiendum. Together with just1-df 2085, the definiendum is therefore equivalent to either conjunct. (Contributed by Wolf Lammen, 6-Jun-2026.)

(𝜑 ↔ (𝜓𝜒))    &   (𝜓𝜒)       (𝜓𝜑)
 
6-Jun-2026just2-df 2086 Second justification theorem for definitions whose definiens is a conjunction, as in df-sb 2090. If 𝜑 is equivalent to (𝜓𝜒), then it implies (𝜓𝜒). In the case of df-sb 2090, this expresses the invariance of the definition under alpha-renaming of the bound variable. (Contributed by Wolf Lammen, 6-Jun-2026.)
(𝜑 ↔ (𝜓𝜒))       (𝜑 → (𝜓𝜒))
 
6-Jun-2026just1-df 2085 First justification theorem for definitions whose definiens is a conjunction, as in df-sb 2090. Here 𝜑 denotes the definiendum, while 𝜓 and 𝜒 represent the two components of the definiens. The theorem shows that the definiendum implies either component separately. (Contributed by Wolf Lammen, 6-Jun-2026.) (New usage is discouraged.)
(𝜑 ↔ (𝜓𝜒))       (𝜑𝜓)
 
5-Jun-2026sbrimvw 2123 Substitution in an implication with a variable not free in the antecedent affects only the consequent. Version of sbrim 2337 based on fewer axioms, but with more disjoint variable conditions. (Contributed by Wolf Lammen, 29-Jan-2024.) Remove DV condition. (Revised by Wolf Lammen, 5-Jun-2026.)
([𝑦 / 𝑥](𝜑𝜓) ↔ (𝜑 → [𝑦 / 𝑥]𝜓))
 
5-Jun-2026sbi1 2102 Distribute substitution over implication. (Contributed by NM, 14-May-1993.) Remove dependencies on axioms. (Revised by Steven Nguyen, 24-Jul-2023.) Definition df-sb 2090 changed. (Revised by Wolf Lammen, 5-Jun-2026.)
([𝑦 / 𝑥](𝜑𝜓) → ([𝑦 / 𝑥]𝜑 → [𝑦 / 𝑥]𝜓))
 
5-Jun-2026sbi1lem 2101 Lemma for sbi1 2102. The core of the proof was extracted from a proof of SN. (Contributed by Wolf Lammen, 5-Jun-2026.)
(([𝑡 / 𝑥](𝜑𝜓) ∧ [𝑡 / 𝑥]𝜑) → ∀𝑦(𝑦 = 𝑡 → ∀𝑥(𝑥 = 𝑦𝜓)))
 
5-Jun-2026stdpc4ALT 2098 Alternate proof of stdpc4 2097, shorter but using additional axioms. (Contributed by WL, 5-Jun-2026.) (Proof modification is discouraged.) (New usage is discouraged.)
(∀𝑥𝜑 → [𝑡 / 𝑥]𝜑)
 
4-Jun-2026morleylemrneab 34929 Lemma for morley . (Contributed by TA and SS, 4-Jun-2026.)
𝑆 = (Base‘𝐺)    &   𝐿 = (LineG‘𝐺)    &    = (cgrA‘𝐺)    &   (𝜑𝐺 ∈ TarskiG)    &   (𝜑𝐴𝑆)    &   (𝜑𝐵𝑆)    &   (𝜑𝐶𝑆)    &   (𝜑𝑃𝑆)    &   (𝜑𝑄𝑆)    &   (𝜑𝑅𝑆)    &   (𝜑 → ¬ (𝐶 ∈ (𝐴𝐿𝐵) ∨ 𝐴 = 𝐵))    &   (𝜑 → ⟨“𝐶𝐴𝑄”⟩ ⟨“𝑄𝐴𝑅”⟩)    &   (𝜑 → ⟨“𝑅𝐴𝐵”⟩ ⟨“𝑄𝐴𝑅”⟩)    &   (𝜑 → ⟨“𝐴𝐵𝑅”⟩ ⟨“𝑅𝐵𝑃”⟩)    &   (𝜑 → ⟨“𝑃𝐵𝐶”⟩ ⟨“𝑅𝐵𝑃”⟩)    &   (𝜑 → ⟨“𝐵𝐶𝑃”⟩ ⟨“𝑃𝐶𝑄”⟩)    &   (𝜑 → ⟨“𝑄𝐶𝐴”⟩ ⟨“𝑃𝐶𝑄”⟩)       (𝜑 → ¬ 𝑅 ∈ (𝐴𝐿𝐵))
 
4-Jun-2026btwnlng13 34928 If 𝑍 is between 𝑋 and 𝑌, or 𝑌 is between 𝑋 and 𝑍, then 𝑍 lies on the line 𝑋𝑌. (Contributed by SS, 4-Jun-2026.)
𝑃 = (Base‘𝐺)    &   𝐼 = (Itv‘𝐺)    &   𝐿 = (LineG‘𝐺)    &   (𝜑𝐺 ∈ TarskiG)    &   (𝜑𝑋𝑃)    &   (𝜑𝑌𝑃)    &   (𝜑𝑍𝑃)    &   (𝜑𝑋𝑌)    &   (𝜑 → (𝑍 ∈ (𝑋𝐼𝑌) ∨ 𝑌 ∈ (𝑋𝐼𝑍)))       (𝜑𝑍 ∈ (𝑋𝐿𝑌))
 
4-Jun-2026cgranbtwn 34927 Null angle implies betweenness. (Contributed by SS, 4-Jun-2026.)
𝑃 = (Base‘𝐺)    &   𝐼 = (Itv‘𝐺)    &   (𝜑𝐺 ∈ TarskiG)    &   (𝜑𝐴𝑃)    &   (𝜑𝐵𝑃)    &   (𝜑𝐶𝑃)    &   (𝜑𝐷𝑃)    &   (𝜑𝐸𝑃)    &   (𝜑𝐹𝑃)    &   (𝜑 → ⟨“𝐴𝐵𝐶”⟩(cgrA‘𝐺)⟨“𝐷𝐸𝐹”⟩)    &   (𝜑𝐴 ∈ (𝐵𝐼𝐶))       (𝜑 → (𝐷 ∈ (𝐸𝐼𝐹) ∨ 𝐹 ∈ (𝐸𝐼𝐷)))
 
4-Jun-2026csbcnv 5856 Move class substitution in and out of the converse of a relation. (Contributed by Thierry Arnoux, 8-Feb-2017.) (Revised by NM, 23-Aug-2018.) Remove dependency on ax-sep 5245 and ax-pr 5389. (Revised by Eric Schmidt, 4-Jun-2026.)
𝐴 / 𝑥𝐹 = 𝐴 / 𝑥𝐹
 
4-Jun-2026spsbe 2114 Existential generalization: if a proposition is true for a specific instance, then there exists an instance where it is true. (Contributed by NM, 29-Jun-1993.) (Proof shortened by Wolf Lammen, 3-May-2018.) Revise df-sb 2090. (Revised by BJ, 22-Dec-2020.) (Proof shortened by Steven Nguyen, 11-Jul-2023.) Revise df-sb 2090. (Revised by Wolf Lammen, 4-Jun-2026.)
([𝑡 / 𝑥]𝜑 → ∃𝑥𝜑)
 
4-Jun-2026stdpc4 2097 The specialization axiom of standard predicate calculus. It states that if a statement 𝜑 holds for all 𝑥, then it also holds for the specific case of 𝑡 (properly) substituted for 𝑥. Translated to traditional notation, it can be read: "𝑥𝜑(𝑥) → 𝜑(𝑡), provided that 𝑡 is free for 𝑥 in 𝜑(𝑥)". Axiom 4 of [Mendelson] p. 69. See also spsbc 3757 and rspsbc 3832. (Contributed by NM, 14-May-1993.) Revise df-sb 2090. (Revised by BJ, 22-Dec-2020.) Revise df-sb again. (Revised by Wolf Lammen, 4-Jun-2026.)
(∀𝑥𝜑 → [𝑡 / 𝑥]𝜑)
 
4-Jun-2026stdpc4lem 2096 In the case of stdpc4 2097, rename-sb 2088 is derivable from fewer axioms than dfsb 2092. The essential proof step is presented in this lemma. Based on a proof of BJ, 22-Dec-2020. (Contributed by Wolf Lammen, 4-Jun-2026.)
(∀𝑥𝜑 → ∀𝑦(𝑦 = 𝑡 → ∀𝑥(𝑥 = 𝑦𝜑)))
 
4-Jun-2026sbt 2094 A substitution into a theorem yields a theorem. See sbtALT 2099 for a shorter proof requiring more axioms. See chvar 2425 and chvarv 2426 for versions using implicit substitution. (Contributed by NM, 21-Jan-2004.) (Proof shortened by Andrew Salmon, 25-May-2011.) (Proof shortened by Wolf Lammen, 20-Jul-2018.) Revise df-sb 2090. (Revised by Steven Nguyen, 6-Jul-2023.) Revise df-sb 2090 again. (Revised by Wolf Lammen, 4-Jun-2026.)
𝜑       [𝑡 / 𝑥]𝜑
 
4-Jun-2026dfsb 2092 Simplify definition df-sb 2090 by proving the renaming independency. (Contributed by Wolf Lammen, 5-Feb-2026.) df-sb 2090 changed. (Revised by Wolf Lammen, 4-Jun-2026.)
([𝑡 / 𝑥]𝜑 ↔ ∀𝑦(𝑦 = 𝑡 → ∀𝑥(𝑥 = 𝑦𝜑)))
 
4-Jun-2026dfsbimp 2091 A simple consequence of df-sb 2090. (Contributed by Wolf Lammen, 4-Jun-2026.)
([𝑡 / 𝑥]𝜑 → ∀𝑦(𝑦 = 𝑡 → ∀𝑥(𝑥 = 𝑦𝜑)))
 
4-Jun-2026df-sb 2090 Define proper substitution. We write [𝑡 / 𝑥]𝜑 for "the wff obtained by properly substituting 𝑡 for 𝑥 in the wff 𝜑". Thus, 𝑡 properly replaces 𝑥. For example, [𝑡 / 𝑥]𝑧𝑥 is 𝑧𝑡 (when 𝑥 and 𝑧 are distinct), as shown in elsb2 2158.

In practice, the definiens reduces to "𝑦(𝑦 = 𝑡 → ∀𝑥(𝑥 = 𝑦𝜑)) " (see just3-df 2087). Here it is followed by the same expression with a fresh dummy variable 𝑧, making explicit the independence of the dummy variable's name (see just2-df 2086). This is a necessity of Metamath supporting axiom dependency lists. See justify-df 2084 for more information about this technique.

The added conjunct will make some proofs appear duplicated. Alternately, one may first prove as a lemma the same theorem under a disjoint variable condition on the substituted and the substituting variables, then obtain the original theorem by applying that lemma twice.

Our notation, without the alpha-renamed repetition, was introduced in Haskell B. Curry's Foundations of Mathematical Logic (1977), p. 316 and is frequently used in textbooks of lambda calculus and combinatory logic. This notation improves the common but ambiguous notation, "𝜑(𝑡) is the wff obtained by properly substituting 𝑡 for 𝑥 in 𝜑(𝑥)". For example, if the original 𝜑(𝑥) is 𝑥 = 𝑡, then 𝜑(𝑡) is 𝑡 = 𝑡, from which we obtain that 𝜑(𝑥) is 𝑥 = 𝑥. So what exactly does 𝜑(𝑥) mean? Curry's notation avoids this problem.

A closely related notation, (𝑦𝑥)𝜑, was introduced in Bourbaki's Set Theory (Chapter 1, Description of Formal Mathematic, 1953).

Most textbooks define proper substitution recursively by considering various cases involving free and bound variables. Instead, we use a single formula that is exactly equivalent and serves as a direct definition. We later prove that this definition has the expected properties of proper substitution; see sbequ 2115, sbcom2 2205, and sbid2v 2539.

This definition remains valid when 𝑥 and 𝑡 are replaced with the same variable, as shown by sbid 2289. This is achieved by applying Tarski's definition sb6 2117 twice, which is valid for disjoint variables, and introducing a dummy variable 𝑦 that isolates 𝑥 from 𝑡, as in dfsb7 2312 relative to sb5 2309. We can also achieve this by having 𝑥 free in the first conjunct and bound in the second, as the alternate definition dfsb1 2511 shows. Another version that mixes free and bound variables is dfsb3 2524. When 𝑥 and 𝑡 are distinct, proper substitution can be expressed more simply using sb5 2309 and sb6 2117.

Note that each variable in the definiens is either entirely bound (𝑥, 𝑦) or entirely free (𝑡). The definiens also uses only primitive symbols.

Prefer the more general form dfsb 2092 when axiom usage is unimportant. It provides a simpler right hand side together with a proof of its alpha-renaming. (Contributed by NM, 10-May-1993.) Revised from the original definition dfsb1 2511. (Revised by BJ, 22-Dec-2020.) Support alpha-renaming. (Revised by Wolf Lammen, 4-Jun-2026.)

([𝑡 / 𝑥]𝜑 ↔ (∀𝑦(𝑦 = 𝑡 → ∀𝑥(𝑥 = 𝑦𝜑)) ∧ ∀𝑧(𝑧 = 𝑡 → ∀𝑥(𝑥 = 𝑧𝜑))))
 
4-Jun-2026abab 837 Introduce one conjunct as equivalent to the other. "abab" stands for "and, biconditional, and, biconditional". (Contributed by Wolf Lammen, 4-Jun-2026.)
((𝜑𝜓) ↔ (𝜑 ∧ (𝜑𝜓)))
 
3-Jun-2026fldlring 33656 A field is a local ring. (Contributed by Thierry Arnoux, 3-Jun-2026.) (Proof modification is discouraged.)
(𝜑𝐹 ∈ Field)       (𝜑𝐹 ∈ LRing)
 
2-Jun-2026nmulprop 36504 Show closure and value of natural multiplication. (Contributed by Scott Fenton, 2-Jun-2026.)
((𝐴 ∈ On ∧ 𝐵 ∈ On) → ((𝐴 ·no 𝐵) ∈ On ∧ (𝐴 ·no 𝐵) = {𝑥 ∈ On ∣ ∀𝑎𝐴𝑏𝐵 ((𝑎 ·no 𝐵) +no (𝐴 ·no 𝑏)) ∈ (𝑥 +no (𝑎 ·no 𝑏))}))
 
2-Jun-2026nmulfn 36503 Natural multiplication is a function over pairs of ordinals. (Contributed by Scott Fenton, 2-Jun-2026.)
·no Fn (On × On)
 
2-Jun-2026df-nmul 36502 Define natural ordinal multiplication. This is the corresponding operation to df-nadd 8631. (Contributed by Scott Fenton, 2-Jun-2026.)
·no = frecs({⟨𝑥, 𝑦⟩ ∣ (𝑥 ∈ (On × On) ∧ 𝑦 ∈ (On × On) ∧ (((1st𝑥) E (1st𝑦) ∨ (1st𝑥) = (1st𝑦)) ∧ ((2nd𝑥) E (2nd𝑦) ∨ (2nd𝑥) = (2nd𝑦)) ∧ 𝑥𝑦))}, (On × On), (𝑝 ∈ V, 𝑚 ∈ V ↦ (1st𝑝) / 𝑎(2nd𝑝) / 𝑏 {𝑧 ∈ On ∣ ∀𝑐𝑎𝑑𝑏 ((𝑐𝑚𝑏) +no (𝑎𝑚𝑑)) ∈ (𝑧 +no (𝑐𝑚𝑑))}))
 
2-Jun-2026dflring4 33655 Alternate definition of a local ring: the set (𝐵𝑈) of non-units is an ideal. (Contributed by Thierry Arnoux, 2-Jun-2026.)
𝐵 = (Base‘𝑅)    &   𝑈 = (Unit‘𝑅)       (𝑅 ∈ CRing → (𝑅 ∈ LRing ↔ (𝐵𝑈) ∈ (LIdeal‘𝑅)))
 
2-Jun-2026dflring3 33654 Alternate definition of a local ring: local rings have a single maximal ideal. (Contributed by Thierry Arnoux, 2-Jun-2026.)
(𝑅 ∈ CRing → (𝑅 ∈ LRing ↔ (MaxIdeal‘𝑅) ≈ 1o))
 
2-Jun-2026dflringlem3 33653 Lemma for dflring3 33654. In a commutative local ring 𝑅, the set (𝐵𝑈) of non-units is a maximal ideal. (Contributed by Thierry Arnoux, 2-Jun-2026.)
𝐵 = (Base‘𝑅)    &   𝑈 = (Unit‘𝑅)    &   (𝜑𝑅 ∈ CRing)    &   (𝜑𝑅 ∈ LRing)       (𝜑 → (𝐵𝑈) ∈ (MaxIdeal‘𝑅))
 
2-Jun-2026dflringlem2 33652 Lemma for dflring3 33654. In a commutative local ring 𝑅, the set (𝐵𝑈) of non-units is an ideal. (Contributed by Thierry Arnoux, 2-Jun-2026.)
𝐵 = (Base‘𝑅)    &   𝑈 = (Unit‘𝑅)    &   (𝜑𝑅 ∈ CRing)    &   (𝜑𝑅 ∈ LRing)       (𝜑 → (𝐵𝑈) ∈ (LIdeal‘𝑅))
 
2-Jun-2026dflringlem 33651 Lemma for dflring3 33654. If a ring 𝑅 has a single maximal ideal 𝑀, then any element 𝑋 outside of 𝑀 is a unit. (Contributed by Thierry Arnoux, 2-Jun-2026.)
𝐵 = (Base‘𝑅)    &   𝑈 = (Unit‘𝑅)    &   (𝜑𝑅 ∈ CRing)    &   (𝜑𝑀 ∈ (MaxIdeal‘𝑅))    &   (𝜑 → (MaxIdeal‘𝑅) = {𝑀})    &   (𝜑𝑋 ∈ (𝐵𝑀))       (𝜑𝑋𝑈)
 
2-Jun-2026dflring2 33650 Alternate definition of a local ring. (Contributed by Thierry Arnoux, 2-Jun-2026.)
𝐵 = (Base‘𝑅)    &   𝑈 = (Unit‘𝑅)    &    1 = (1r𝑅)    &    = (-g𝑅)       (𝑅 ∈ LRing ↔ (𝑅 ∈ NzRing ∧ ∀𝑥𝐵 (𝑥𝑈 ∨ ( 1 𝑥) ∈ 𝑈)))
 
2-Jun-2026drnglring 33649 A division ring is a local ring. (Contributed by Thierry Arnoux, 2-Jun-2026.)
(𝜑𝐹 ∈ DivRing)       (𝜑𝐹 ∈ LRing)
 
26-May-2026axpowg3 35408 A generalization of ax-pow 5321 that combines axpowg 35406 and axpowg2 35407 into a single theorem scheme. Unlike ax-pow 5321, this scheme lacks a distinct variable condition for 𝑦 and 𝑤 as well as for 𝑥 and 𝑤. Usage of this theorem is discouraged because it depends on ax-13 2402. (Contributed by BTernaryTau, 26-May-2026.) (New usage is discouraged.)
𝑦𝑧(∀𝑤(𝑤𝑧𝑤𝑥) → 𝑧𝑦)
 
26-May-2026axpowg2 35407 A generalization of ax-pow 5321 in which 𝑥 and 𝑤 need not be distinct. This theorem scheme bundles ax-pow 5321 with the degenerate instance 𝑦𝑧(∀𝑥(𝑥𝑧𝑥𝑥) → 𝑧𝑦) which is satisfied by the existence of a set that contains all empty sets (see axprlem1 5379). Usage of this theorem is discouraged because it depends on ax-13 2402. (Contributed by BTernaryTau, 26-May-2026.) (New usage is discouraged.)
𝑦𝑧(∀𝑤(𝑤𝑧𝑤𝑥) → 𝑧𝑦)
 
26-May-2026axpowg 35406 A generalization of ax-pow 5321 that combines it and zfpow 5322 into a single theorem scheme. Unlike ax-pow 5321, this scheme lacks a distinct variable condition for 𝑦 and 𝑤. (Contributed by BTernaryTau, 26-May-2026.)
𝑦𝑧(∀𝑤(𝑤𝑧𝑤𝑥) → 𝑧𝑦)
 
25-May-2026expt 177 Exportation theorem pm3.3 452 (closed form of ex 416) expressed with primitive connectives. (Contributed by NM, 28-Dec-1992.) (Proof shortened by Garrett Katz, 25-May-2026.)
((¬ (𝜑 → ¬ 𝜓) → 𝜒) → (𝜑 → (𝜓𝜒)))
 
24-May-2026axsepg5 35404 A generalization of ax-sep 5245 that combines axsepg 5246, axsepg2 35400, and axsepg3 35401 into a single theorem scheme. Unlike ax-sep 5245, this scheme lacks a distinct variable condition for 𝜑 and 𝑧, for 𝑥 and 𝑧, and for 𝑦 and 𝑧. Usage of this theorem is discouraged because it depends on ax-13 2402. (Contributed by BTernaryTau, 24-May-2026.) (New usage is discouraged.)
𝑦𝑥(𝑥𝑦 ↔ (𝑥𝑧𝜑))
 
24-May-2026axsepg4 35403 A generalization of ax-sep 5245 that combines axsepg 5246 and axsepg2 35400 into a single theorem scheme. Unlike ax-sep 5245, this scheme lacks a distinct variable condition for 𝜑 and 𝑧 as well as for 𝑥 and 𝑧. Usage of this theorem is discouraged because it depends on ax-13 2402. (Contributed by BTernaryTau, 24-May-2026.) (New usage is discouraged.)
𝑦𝑥(𝑥𝑦 ↔ (𝑥𝑧𝜑))
 
23-May-2026elirrv 9542 The membership relation is irreflexive: no set is a member of itself. Theorem 105 of [Suppes] p. 54. This is trivial to prove from zfregfr 9556 and efrirr 5625 (see elirrvALT 9557), but this proof is direct from ax-reg 9537. (Contributed by NM, 19-Aug-1993.) Reduce axiom dependencies and make use of ax-reg 9537 directly. (Revised by BTernaryTau, 27-Dec-2025.) Avoid ax-pr 5389. (Revised by BTernaryTau, 21-May-2026.) (Proof shortened by Matthew House, 23-May-2026.)
¬ 𝑥𝑥
 
22-May-2026bilanri 510 Inference adding a conjunct to the right-hand side of a biconditional. (Contributed by Matthew House, 22-May-2026.)
(𝜑𝜓)       ((𝜒𝜓) → 𝜑)
 
22-May-2026biranri 509 Inference adding a conjunct to the right-hand side of a biconditional. (Contributed by Matthew House, 22-May-2026.)
(𝜑𝜓)       ((𝜓𝜒) → 𝜑)
 
22-May-2026bilani 508 Inference adding a conjunct to the left-hand side of a biconditional. (Contributed by Matthew House, 22-May-2026.)
(𝜑𝜓)       ((𝜒𝜑) → 𝜓)
 
22-May-2026birani 507 Inference adding a conjunct to the left-hand side of a biconditional. (Contributed by Matthew House, 22-May-2026.)
(𝜑𝜓)       ((𝜑𝜒) → 𝜓)
 
21-May-2026axsepg2 35400 A generalization of ax-sep 5245 in which 𝑥 and 𝑧 need not be distinct. This theorem scheme bundles ax-sep 5245 with the degenerate instance 𝑦𝑧(𝑧𝑦 ↔ (𝑧𝑧𝜑)) which is satisfied by the existence of the empty set. Usage of this theorem is discouraged because it depends on ax-13 2402. (Contributed by BTernaryTau, 21-May-2026.) (New usage is discouraged.)
𝑦𝑥(𝑥𝑦 ↔ (𝑥𝑧𝜑))
 
9-May-2026goldratmolem2 47444 Lemma 2 for determining the value of golden ratio. (Contributed by Ender Ting, 9-May-2026.)
𝐹 = (2 · (cos‘(π / 5)))       -1 = ((((𝐹↑5) / 2) − (5 · ((𝐹↑3) / 2))) + (5 · (𝐹 / 2)))
 
9-May-2026goldracos5teq 47443 Lemma 1 for determining the value of golden ratio. (Contributed by Ender Ting, 9-May-2026.)
𝐹 = (2 · (cos‘(π / 5)))       (cos‘π) = (((16 · ((𝐹 / 2)↑5)) − (20 · ((𝐹 / 2)↑3))) + (5 · (𝐹 / 2)))
 
9-May-2026cos5teq 47438 Five-times-angle formula for cosine, substitution helper. (Contributed by Ender Ting, 9-May-2026.)
((𝐴 ∈ ℂ ∧ 𝐵 = (5 · 𝐴) ∧ 𝐶 = (cos‘𝐴)) → (cos‘𝐵) = (((16 · (𝐶↑5)) − (20 · (𝐶↑3))) + (5 · 𝐶)))
 
9-May-2026quantgodel 47412 There can be no formula asserting its own non-universality, in parallel to bj-babygodel 37010; proof path is shorter but relying on a property of specialization which provability predicates do not have. For a matching proof, see quantgodelALT 47413. (Contributed by Ender Ting, 9-May-2026.)
(𝜑 ↔ ¬ ∀𝑥𝜑)       
 
9-May-2026funopsn 7126 If a function is an ordered pair then it is a singleton of an ordered pair. (Contributed by AV, 20-Sep-2020.) (Proof shortened by AV, 15-Jul-2021.) (Proof shortened by Eric Schmidt, 9-May-2026.) A function is a class of ordered pairs, so the fact that an ordered pair may sometimes be itself a function is an "accident" depending on the specific encoding of ordered pairs as classes (in set.mm, the Kuratowski encoding). A more meaningful statement is funsng 6568, as relsnopg 5774 is to relop 5820. (New usage is discouraged.)
𝑋 ∈ V    &   𝑌 ∈ V       ((Fun 𝐹𝐹 = ⟨𝑋, 𝑌⟩) → ∃𝑎(𝑋 = {𝑎} ∧ 𝐹 = {⟨𝑎, 𝑎⟩}))
 
9-May-2026iunopeqop 5489 Implication of an ordered pair being equal to an indexed union of singletons of ordered pairs. (Contributed by AV, 20-Sep-2020.) Remove antecedent. (Revised by Eric Schmidt, 9-May-2026.) (Avoid depending on this detail.)
𝐵 ∈ V    &   𝐶 ∈ V    &   𝐷 ∈ V       ( 𝑥𝐴 {⟨𝑥, 𝐵⟩} = ⟨𝐶, 𝐷⟩ → ∃𝑧 𝐴 = {𝑧})
 
7-May-2026quantgodelALT 47413 There can be no formula asserting its own non-universality; follows the steps of bj-babygodel 37010. (Contributed by Ender Ting, 7-May-2026.) (New usage is discouraged.) (Proof modification is discouraged.)
(𝜑 ↔ ¬ ∀𝑥𝜑)       
 
4-May-2026mplidom 33786 The multivariate polynomials over an integral domain form an integral domain. See ply1idom 26165. (Contributed by Thierry Arnoux, 4-May-2026.)
𝑃 = (𝐼 mPoly 𝑅)    &   (𝜑𝐼 ∈ Fin)    &   (𝜑𝑅 ∈ IDomn)       (𝜑𝑃 ∈ IDomn)
 
4-May-2026mplidomlem 33785 Lemma for mplidom 33786. (Contributed by Thierry Arnoux, 4-May-2026.)
𝑃 = (𝐼 mPoly 𝑅)    &   (𝜑𝐼 ∈ Fin)    &   (𝜑𝑅 ∈ IDomn)    &   𝐻 = (𝑓𝐶 ↦ (𝑛 ∈ (ℕ0m 1o) ↦ (((((𝑗 ∪ {𝑥}) selectVars 𝑅)‘{𝑥})‘𝑓)‘{⟨𝑥, (𝑛‘∅)⟩})))    &   𝐶 = (Base‘𝑆)    &   𝑆 = ((𝑗 ∪ {𝑥}) mPoly 𝑅)    &   𝑈 = (((𝑗 ∪ {𝑥}) ∖ {𝑥}) mPoly 𝑅)    &   𝑄 = (Poly1𝑈)       (𝜑𝑃 ∈ IDomn)
 
4-May-2026selvply1rhm0 33784 The ring homomorphism 𝐻 built in selvply1rhm 33783 is injective. (Contributed by Thierry Arnoux, 4-May-2026.)
𝐵 = (Base‘𝑃)    &   𝑃 = (𝐼 mPoly 𝑅)    &   𝑈 = ((𝐼 ∖ {𝑋}) mPoly 𝑅)    &   𝑄 = (Poly1𝑈)    &   𝐻 = (𝑓𝐵 ↦ (𝑛 ∈ (ℕ0m 1o) ↦ ((((𝐼 selectVars 𝑅)‘{𝑋})‘𝑓)‘{⟨𝑋, (𝑛‘∅)⟩})))    &   (𝜑𝐼𝑉)    &   (𝜑𝑋𝐼)    &   (𝜑𝑅 ∈ CRing)    &    0 = (0g𝑄)    &   𝑍 = (0g𝑃)    &   (𝜑𝐹𝐵)    &   (𝜑 → (𝐻𝐹) = 0 )       (𝜑𝐹 = 𝑍)
 
4-May-2026selvply1rhm 33783 Build a ring homomorphism 𝐻 between the multivariate polynomials 𝑃 with variables in 𝐼 and the univariate polynomials 𝑄 in a single variable 𝑋 element of 𝐼. (Contributed by Thierry Arnoux, 4-May-2026.)
𝐵 = (Base‘𝑃)    &   𝑃 = (𝐼 mPoly 𝑅)    &   𝑈 = ((𝐼 ∖ {𝑋}) mPoly 𝑅)    &   𝑄 = (Poly1𝑈)    &   𝐻 = (𝑓𝐵 ↦ (𝑛 ∈ (ℕ0m 1o) ↦ ((((𝐼 selectVars 𝑅)‘{𝑋})‘𝑓)‘{⟨𝑋, (𝑛‘∅)⟩})))    &   (𝜑𝐼𝑉)    &   (𝜑𝑋𝐼)    &   (𝜑𝑅 ∈ CRing)       (𝜑𝐻 ∈ (𝑃 RingHom 𝑄))
 
4-May-2026selvply1rhmlem5 33782 Lemma for selvply1rhm 33783. (Contributed by Thierry Arnoux, 4-May-2026.)
𝐵 = (Base‘𝑃)    &   𝑃 = (𝐼 mPoly 𝑅)    &   𝑈 = ((𝐼 ∖ {𝑋}) mPoly 𝑅)    &   𝑄 = (Poly1𝑈)    &   𝐻 = (𝑓𝐵 ↦ (𝑛 ∈ (ℕ0m 1o) ↦ ((((𝐼 selectVars 𝑅)‘{𝑋})‘𝑓)‘{⟨𝑋, (𝑛‘∅)⟩})))    &   (𝜑𝐼𝑉)    &   (𝜑𝑋𝐼)    &   (𝜑𝑅 ∈ CRing)    &   (𝜑𝐹𝐵)    &   𝑀 = (𝑞 ∈ (Base‘({𝑋} mPoly 𝑈)) ↦ (𝑠 ∈ (ℕ0m 1o) ↦ (𝑞‘{⟨𝑋, (𝑠‘∅)⟩})))       (𝜑 → (𝐻𝐹) = (𝑀‘(((𝐼 selectVars 𝑅)‘{𝑋})‘𝐹)))
 
4-May-2026selvply1rhmlem4 33781 Lemma for selvply1rhm 33783: The mapping 𝐻 is linear. (Contributed by Thierry Arnoux, 4-May-2026.)
𝐵 = (Base‘𝑃)    &   𝑃 = (𝐼 mPoly 𝑅)    &   𝑈 = ((𝐼 ∖ {𝑋}) mPoly 𝑅)    &   𝑄 = (Poly1𝑈)    &   𝐻 = (𝑓𝐵 ↦ (𝑛 ∈ (ℕ0m 1o) ↦ ((((𝐼 selectVars 𝑅)‘{𝑋})‘𝑓)‘{⟨𝑋, (𝑛‘∅)⟩})))    &   (𝜑𝐼𝑉)    &   (𝜑𝑋𝐼)    &   (𝜑𝑅 ∈ CRing)    &   (𝜑𝐹𝐵)    &   (𝜑𝐺𝐵)       (𝜑 → (𝐻‘(𝐹(+g𝑃)𝐺)) = ((𝐻𝐹)(+g𝑄)(𝐻𝐺)))
 
4-May-2026selvply1rhmlem3 33780 Lemma for selvply1rhm 33783. (Contributed by Thierry Arnoux, 4-May-2026.)
𝐵 = (Base‘𝑃)    &   𝑃 = (𝐼 mPoly 𝑅)    &   𝑈 = ((𝐼 ∖ {𝑋}) mPoly 𝑅)    &   𝑄 = (Poly1𝑈)    &   𝐻 = (𝑓𝐵 ↦ (𝑛 ∈ (ℕ0m 1o) ↦ ((((𝐼 selectVars 𝑅)‘{𝑋})‘𝑓)‘{⟨𝑋, (𝑛‘∅)⟩})))    &   (𝜑𝐼𝑉)    &   (𝜑𝑋𝐼)    &   (𝜑𝑅 ∈ CRing)    &   (𝜑𝐹𝐵)    &   (𝜑𝑁 ∈ (ℕ0m 1o))       (𝜑 → ((𝐻𝐹)‘𝑁) = ((((𝐼 selectVars 𝑅)‘{𝑋})‘𝐹)‘{⟨𝑋, (𝑁‘∅)⟩}))
 
4-May-2026selvply1rhmlem2 33779 Lemma for selvply1rhm 33783: Image of the ring unit by the mapping 𝐻 (Contributed by Thierry Arnoux, 4-May-2026.)
𝐵 = (Base‘𝑃)    &   𝑃 = (𝐼 mPoly 𝑅)    &   𝑈 = ((𝐼 ∖ {𝑋}) mPoly 𝑅)    &   𝑄 = (Poly1𝑈)    &   𝐻 = (𝑓𝐵 ↦ (𝑛 ∈ (ℕ0m 1o) ↦ ((((𝐼 selectVars 𝑅)‘{𝑋})‘𝑓)‘{⟨𝑋, (𝑛‘∅)⟩})))    &   (𝜑𝐼𝑉)    &   (𝜑𝑋𝐼)    &   (𝜑𝑅 ∈ CRing)       (𝜑 → (𝐻‘(1r𝑃)) = (1r𝑄))
 
4-May-2026selvply1rhmlem1 33778 Lemma for selvply1rhm 33783. (Contributed by Thierry Arnoux, 4-May-2026.)
𝐵 = (Base‘𝑃)    &   𝑃 = (𝐼 mPoly 𝑅)    &   𝑈 = ((𝐼 ∖ {𝑋}) mPoly 𝑅)    &   𝑄 = (Poly1𝑈)    &   𝐻 = (𝑓𝐵 ↦ (𝑛 ∈ (ℕ0m 1o) ↦ ((((𝐼 selectVars 𝑅)‘{𝑋})‘𝑓)‘{⟨𝑋, (𝑛‘∅)⟩})))    &   (𝜑𝐼𝑉)    &   (𝜑𝑋𝐼)    &   (𝜑𝑅 ∈ CRing)       (𝜑𝐻:𝐵⟶(Base‘𝑄))
 
4-May-2026selvply1rhmlemb 33777 Lemma for selvply1rhm 33783. (Contributed by Thierry Arnoux, 4-May-2026.)
𝐵 = (Base‘𝑃)    &   𝑃 = ({𝑋} mPoly 𝑅)    &    · = (.r𝑃)    &    × = (.r𝑄)    &   𝑄 = (Poly1𝑅)    &   𝑀 = (𝑓𝐵 ↦ (𝑛 ∈ (ℕ0m 1o) ↦ (𝑓‘{⟨𝑋, (𝑛‘∅)⟩})))    &   (𝜑𝑋𝑉)    &   (𝜑𝑅 ∈ Ring)    &   (𝜑𝐹𝐵)    &   (𝜑𝐺𝐵)       (𝜑 → (𝑀‘(𝐹 · 𝐺)) = ((𝑀𝐹) × (𝑀𝐺)))
 
4-May-2026selvply1rhmlema 33776 Lemma for selvply1rhm 33783. (Contributed by Thierry Arnoux, 4-May-2026.)
𝐵 = (Base‘𝑃)    &   𝑃 = ({𝑋} mPoly 𝑅)    &    · = (.r𝑃)    &    × = (.r𝑄)    &   𝑄 = (Poly1𝑅)    &   𝑀 = (𝑓𝐵 ↦ (𝑛 ∈ (ℕ0m 1o) ↦ (𝑓‘{⟨𝑋, (𝑛‘∅)⟩})))    &   (𝜑𝑋𝑉)    &   (𝜑𝑅 ∈ Ring)    &   (𝜑𝐹𝐵)       (𝜑 → (𝑀𝐹) ∈ (Base‘𝑄))
 
4-May-2026selvascl 33775 The "variable selection" function evaluated at a scalar. (Contributed by Thierry Arnoux, 4-May-2026.)
𝐵 = (Base‘𝑅)    &   𝑃 = (𝐼 mPoly 𝑅)    &   𝐴 = (algSc‘𝑃)    &   𝐶 = (algSc‘𝑇)    &   (𝜑𝐼𝑉)    &   (𝜑𝑋𝐵)    &   𝑈 = ((𝐼𝐽) mPoly 𝑅)    &   𝑇 = (𝐽 mPoly 𝑈)    &   𝐷 = (𝐶 ∘ (algSc‘𝑈))    &   (𝜑𝑅 ∈ CRing)    &   (𝜑𝐽𝐼)       (𝜑 → (((𝐼 selectVars 𝑅)‘𝐽)‘(𝐴𝑋)) = (𝐷𝑋))
 
4-May-2026mplasclco 33774 Case where composing an algebra scalar lifting functions with a scalar leads to a scalar. This is useful when working with selectVars. (Contributed by Thierry Arnoux, 4-May-2026.)
𝑆 = (Base‘𝑅)    &   𝑂 = (𝐽 mPoly 𝑅)    &   𝑃 = (𝐼 mPoly 𝑅)    &   𝑄 = (𝐼 mPoly 𝑂)    &   𝐴 = (algSc‘𝑂)    &   𝐵 = (algSc‘𝑃)    &   𝐶 = (algSc‘𝑄)    &   𝐷 = { ∈ (ℕ0m 𝐼) ∣ ( “ ℕ) ∈ Fin}    &   𝐸 = {𝑗 ∈ (ℕ0m 𝐽) ∣ (𝑗 “ ℕ) ∈ Fin}    &   (𝜑𝐼𝑉)    &   (𝜑𝐽𝐼)    &   (𝜑𝑅 ∈ CRing)    &   (𝜑𝑋𝑆)       (𝜑 → (𝐴 ∘ (𝐵𝑋)) = (𝐶‘(𝐴𝑋)))
 
4-May-20260mplric 33773 Multivariate polynomials with no variables are isomorphic with the underlying ring. (Contributed by Thierry Arnoux, 4-May-2026.)
𝐵 = (Base‘𝑃)    &   𝑃 = (∅ mPoly 𝑅)    &   (𝜑𝑅 ∈ Ring)       (𝜑𝑃𝑟 𝑅)
 
4-May-20260mplrim 33772 Build a ring isomorphism between multivariate polynomials with no variables and the underlying ring. (Contributed by Thierry Arnoux, 4-May-2026.)
𝐵 = (Base‘𝑃)    &   𝑃 = (∅ mPoly 𝑅)    &   (𝜑𝑅 ∈ Ring)    &   𝐹 = (𝑝𝐵 ↦ (𝑝‘∅))       (𝜑𝐹 ∈ (𝑃 RingIso 𝑅))
 
4-May-2026mplnzr 33771 The multivariate polynomials over a nonzero ring form a nonzero ring. (Contributed by Thierry Arnoux, 4-May-2026.)
𝑃 = (𝐼 mPoly 𝑅)    &   (𝜑𝐼𝑉)    &   (𝜑𝑅 ∈ NzRing)       (𝜑𝑃 ∈ NzRing)
 
4-May-2026psrnzr 33770 The ring of power series over a nonzero ring form a nonzero ring. (Contributed by Thierry Arnoux, 4-May-2026.)
𝑆 = (𝐼 mPwSer 𝑅)    &   (𝜑𝐼𝑉)    &   (𝜑𝑅 ∈ NzRing)       (𝜑𝑆 ∈ NzRing)
 
4-May-2026ricdomn 33435 A ring is a domain if and only if an isomorphic ring is a domain. (Contributed by Thierry Arnoux, 4-May-2026.)
(𝑅𝑟 𝑆 → (𝑅 ∈ Domn ↔ 𝑆 ∈ Domn))
 
4-May-2026ricdomn1 33434 A ring isomorphism maps a domain to a domain. (Contributed by Thierry Arnoux, 4-May-2026.)
((𝑅𝑟 𝑆𝑅 ∈ Domn) → 𝑆 ∈ Domn)
 
4-May-2026ricnzr1 33433 A ring isomorphism maps a nonzero ring to a nonzero ring. (Contributed by Thierry Arnoux, 4-May-2026.)
((𝑅𝑟 𝑆𝑅 ∈ NzRing) → 𝑆 ∈ NzRing)
 
4-May-2026grpidcld 33179 The identity element of a group belongs to the group. (Contributed by Thierry Arnoux, 4-May-2026.)
𝐵 = (Base‘𝐺)    &    0 = (0g𝐺)    &   (𝜑𝐺 ∈ Grp)       (𝜑0𝐵)
 
4-May-2026ififcom 32698 Commute two nested conditionals. (Contributed by Thierry Arnoux, 4-May-2026.)
if(𝜑, if(𝜓, 𝐴, 𝐵), 𝐵) = if(𝜓, if(𝜑, 𝐴, 𝐵), 𝐵)
 
2-May-2026copsexgw 5457 Version of copsexg 5459 with a disjoint variable condition, which does not require ax-13 2402. (Contributed by GG, 26-Jan-2024.) Shorten proof and remove dependency on ax-10 2174. (Revised by Eric Schmidt, 2-May-2026.)
(𝐴 = ⟨𝑥, 𝑦⟩ → (𝜑 ↔ ∃𝑥𝑦(𝐴 = ⟨𝑥, 𝑦⟩ ∧ 𝜑)))
 
1-May-2026vprc 5269 The universal class is not a member of itself (and thus is not a set). Proposition 5.21 of [TakeutiZaring] p. 21; our proof, however, does not depend on the Axiom of Regularity. (Contributed by NM, 23-Aug-1993.) (Proof shortened by BJ, 1-May-2026.)
¬ V ∈ V
 
1-May-2026nvel 5268 The universal class does not belong to any class. (Contributed by FL, 31-Dec-2006.) Prove it without using vprc 5269, which is then proved as an instance of it. (Revised by BJ, 1-May-2026.)
¬ V ∈ 𝐴
 
27-Apr-2026qdiffALT 37784 Alternate proof of qdiff 37783. This is a proof from irrdiff 37782 using excluded middle in a variety of places. (Contributed by Jim Kingdon, 27-Apr-2026.) (Proof modification is discouraged.) (New usage is discouraged.)
(𝐴 ∈ ℝ → (𝐴 ∈ ℚ ↔ ∃𝑞 ∈ ℚ ∃𝑟 ∈ ℚ (𝑞𝑟 ∧ (abs‘(𝐴𝑞)) = (abs‘(𝐴𝑟)))))
 
25-Apr-2026unidif0 5315 The removal of the empty set from a class does not affect its union. (Contributed by NM, 22-Mar-2004.) (Proof shortened by Eric Schmidt, 25-Apr-2026.)
(𝐴 ∖ {∅}) = 𝐴
 
25-Apr-2026vnex 5266 The universal class does not exist as a set. (Contributed by NM, 4-Jul-2005.) (Proof shortened by BJ, 25-Apr-2026.)
¬ ∃𝑥 𝑥 = V
 
25-Apr-2026vneqv 5265 The universal class is not equal to any setvar. (Contributed by NM, 4-Jul-2005.) Extract from vnex 5266 and shorten proof. (Revised by BJ, 25-Apr-2026.)
¬ 𝑥 = V
 
24-Apr-2026qdiff 37783 The rationals are exactly those reals for which there exist two distinct rationals that are the same distance from the original number. Similar to irrdiff 37782 but here proved with a proof which would also work in constructive mathematics. From an online post by Ingo Blechschmidt. For a proof using irrdiff 37782, see qdiffALT 37784. (Contributed by Jim Kingdon, 24-Apr-2026.)
(𝐴 ∈ ℝ → (𝐴 ∈ ℚ ↔ ∃𝑞 ∈ ℚ ∃𝑟 ∈ ℚ (𝑞𝑟 ∧ (abs‘(𝐴𝑞)) = (abs‘(𝐴𝑟)))))
 
22-Apr-2026sucprcreg 9551 A class is equal to its successor iff it is a proper class (assuming the Axiom of Regularity). (Contributed by NM, 9-Jul-2004.) (Proof shortened by BJ, 16-Apr-2019.) (Proof shortened by SN, 22-Apr-2026.)
𝐴 ∈ V ↔ suc 𝐴 = 𝐴)
 
22-Apr-2026nelaneq 9547 A class is not an element of and equal to a class at the same time. Variant of elneq 9546 analogously to elnotel 9562 and en2lp 9558. (Proposed by BJ, 18-Jun-2022.) (Contributed by AV, 18-Jun-2022.) (Proof shortened by TM, 31-Dec-2025.) (Proof shortened by SN, 22-Apr-2026.)
¬ (𝐴𝐵𝐴 = 𝐵)
 
20-Apr-2026cos5t 47437 Five-times-angle formula for cosine, in pure cosine form. (Contributed by Ender Ting, 20-Apr-2026.)
(𝐴 ∈ ℂ → (cos‘(5 · 𝐴)) = (((16 · ((cos‘𝐴)↑5)) − (20 · ((cos‘𝐴)↑3))) + (5 · (cos‘𝐴))))
 
19-Apr-2026trun 5217 The union of transitive classes is transitive. (Contributed by Eric Schmidt, 19-Apr-2026.)
((Tr 𝐴 ∧ Tr 𝐵) → Tr (𝐴𝐵))
 
17-Apr-2026sin5t 47436 Five-times-angle formula for sine, in pure sine form. (Contributed by Ender Ting, 17-Apr-2026.)
(𝐴 ∈ ℂ → (sin‘(5 · 𝐴)) = (((16 · ((sin‘𝐴)↑5)) − (20 · ((sin‘𝐴)↑3))) + (5 · (sin‘𝐴))))
 
17-Apr-2026sin5tlem5 47435 Lemma 5 for quintupled angle sine calculation: sine of triple-angle and double-angle sum, as a polynomial in sine straight. (Contributed by Ender Ting, 17-Apr-2026.)
((𝑁 ∈ ℂ ∧ 𝑀 ∈ ℂ ∧ (𝑁↑2) = (1 − (𝑀↑2))) → ((((3 · 𝑀) − (4 · (𝑀↑3))) · (1 − (2 · (𝑀↑2)))) + (((4 · (𝑁↑3)) − (3 · 𝑁)) · (2 · (𝑀 · 𝑁)))) = (((16 · (𝑀↑5)) − (20 · (𝑀↑3))) + (5 · 𝑀)))
 
17-Apr-2026sin5tlem4 47434 Lemma 4 for quintupled angle sine calculation: expanding lemma 3 result to difference of polynomials. (Contributed by Ender Ting, 17-Apr-2026.)
((𝑁 ∈ ℂ ∧ 𝑀 ∈ ℂ ∧ (𝑁↑2) = (1 − (𝑀↑2))) → (((4 · (𝑁↑3)) − (3 · 𝑁)) · (2 · (𝑀 · 𝑁))) = ((((8 · (𝑀↑5)) − (16 · (𝑀↑3))) + (8 · 𝑀)) − ((6 · 𝑀) − (6 · (𝑀↑3)))))
 
16-Apr-2026goldrarp 47442 The golden ratio is a positive real. (Contributed by Ender Ting, 16-Apr-2026.)
𝐹 = (2 · (cos‘(π / 5)))       𝐹 ∈ ℝ+
 
16-Apr-2026goldrapos 47441 Golden ratio is positive. (Contributed by Ender Ting, 16-Apr-2026.)
𝐹 = (2 · (cos‘(π / 5)))       0 < 𝐹
 
16-Apr-2026sin5tlem3 47433 Lemma 3 for quintupled angle sine calculation, multiplicating triple angle cosine by double angle sine. (Contributed by Ender Ting, 16-Apr-2026.)
((𝑁 ∈ ℂ ∧ 𝑀 ∈ ℂ ∧ (𝑁↑2) = (1 − (𝑀↑2))) → (((4 · (𝑁↑3)) − (3 · 𝑁)) · (2 · (𝑀 · 𝑁))) = (((4 · ((1 − (2 · (𝑀↑2))) + (𝑀↑4))) − (3 · (1 − (𝑀↑2)))) · (2 · 𝑀)))
 
16-Apr-2026sin5tlem2 47432 Lemma 2 for quintupled angle sine calculation, multiplicating triple angle cosine by cosine straight and converting into sine. (Contributed by Ender Ting, 16-Apr-2026.)
((𝑁 ∈ ℂ ∧ 𝑀 ∈ ℂ ∧ (𝑁↑2) = (1 − (𝑀↑2))) → (((4 · (𝑁↑3)) − (3 · 𝑁)) · 𝑁) = ((4 · ((1 − (2 · (𝑀↑2))) + (𝑀↑4))) − (3 · (1 − (𝑀↑2)))))
 
13-Apr-2026wl-dfclel 37973 The defining characterization of class membership. Unlike the forms on which it is based, it is unrestricted. Proven in Tarski's FOL, from the axiom of (set) extensionality (ax-ext 2733), the definitions df-clel 2836 and df-cleq . (Contributed by BJ, 27-Jun-2019.) Base on wl-dfclel.just 37971. (Revised by Wolf Lammen, 13-Apr-2026.)
(𝐴𝐵 ↔ ∃𝑥(𝑥 = 𝐴𝑥𝐵))
 
13-Apr-2026mh-infprim3bi 36872 An axiom of infinity in primitive symbols not requiring ax-reg 9537. This version of the axiom was designed by Stefan O'Rear for his zf2.nql program, see https://github.com/sorear/metamath-turing-machines 9537. It directly implies ax-inf 9590, but deriving ax-inf2 9593 requires ax-ext 2733 and ax-rep 5226, see mh-inf3sn 36866. (Contributed by Matthew House, 13-Apr-2026.)
(∃𝑦(𝑥𝑦 ∧ ∀𝑧𝑦 {𝑧} ∈ 𝑦) ↔ ¬ ∀𝑦 ¬ ¬ (𝑥𝑦 → ¬ ∀𝑥(𝑥𝑦 → ¬ ∀𝑧 ¬ ¬ (𝑧𝑦 → ¬ ∀𝑦 ¬ ((𝑦𝑧𝑦 = 𝑥) → ¬ (𝑦 = 𝑥𝑦𝑧))))))
 
13-Apr-2026mh-infprim2bi 36871 Shortest possible axiom of infinity in primitive symbols not requiring ax-reg 9537. Deriving ax-inf 9590 or ax-inf2 9593 from this axiom requires ax-ext 2733 and ax-rep 5226, see mh-inf3sn 36866 and inf0 9573. (Contributed by Matthew House, 13-Apr-2026.)
(∃𝑥(∅ ∈ 𝑥 ∧ ∀𝑦𝑥 {𝑦} ∈ 𝑥) ↔ ¬ ∀𝑥 ¬ ∀𝑦𝑧(∀𝑤(𝑤𝑦 → ¬ (𝑤𝑥 → ¬ 𝑤 = 𝑧)) → 𝑦𝑥))
 
13-Apr-2026mh-infprim1bi 36870 Shortest possible axiom of infinity in primitive symbols. Deriving ax-inf 9590 or ax-inf2 9593 from this axiom requires ax-ext 2733, ax-rep 5226, and ax-reg 9537, see inf3 9587 and inf0 9573. (Contributed by Matthew House, 13-Apr-2026.)
(∃𝑥(𝑥 ≠ ∅ ∧ 𝑥 𝑥) ↔ ¬ ∀𝑥 ¬ ∀𝑦 ¬ ∀𝑧((𝑦𝑥𝑦𝑧) → ¬ 𝑧𝑥))
 
13-Apr-2026mh-regprimbi 36869 Shortest possible version of ax-reg 9537 in primitive symbols. The equivalence is nontrivial, but it still follows solely from the axioms of predicate calculus. (Contributed by Matthew House, 13-Apr-2026.)
((∃𝑦 𝑦𝑥 → ∃𝑦(𝑦𝑥 ∧ ∀𝑧(𝑧𝑦 → ¬ 𝑧𝑥))) ↔ ¬ ∀𝑦 ¬ ∀𝑧((𝑦𝑥𝑧𝑦) → ¬ 𝑧𝑥))
 
13-Apr-2026mh-unprimbi 36868 Shortest possible version of ax-un 7714 in primitive symbols. (Contributed by Matthew House, 13-Apr-2026.)
(∃𝑦𝑧(∃𝑤(𝑧𝑤𝑤𝑥) → 𝑧𝑦) ↔ ¬ ∀𝑦 ¬ ∀𝑧(𝑧𝑥 → ∀𝑤(𝑤𝑧𝑤𝑦)))
 
13-Apr-2026mh-prprimbi 36867 Shortest possible version of ax-pr 5389 in primitive symbols. (Contributed by Matthew House, 13-Apr-2026.)
(∃𝑧𝑤((𝑤 = 𝑥𝑤 = 𝑦) → 𝑤𝑧) ↔ ¬ ∀𝑧(𝑥𝑧 → ¬ 𝑦𝑧))
 
13-Apr-2026mh-inf3sn 36866 Version of inf3 9587 for the set of Zermelo ordinals , {∅}, {{∅}}, {{{∅}}}, etc., where the successor of 𝑦 is {𝑦}. Unlike inf3 9587, the proof does not require ax-reg 9537, since the singleton properties snnz 4734 and sneqr 4797 are sufficient to guarantee that all elements of the sequence are distinct. (Contributed by Matthew House, 13-Apr-2026.)
𝑥(∅ ∈ 𝑥 ∧ ∀𝑦𝑥 {𝑦} ∈ 𝑥)       ω ∈ V
 
13-Apr-2026mh-inf3f1 36865 A variant of inf3 9587. If 𝐹 is a one-to-one function from 𝐴 into itself, and there exists an element 𝐵 not in its range, then (rec(𝐹, 𝐵) ↾ ω) is an infinite sequence of distinct elements from 𝐴. If 𝐴 is a set, we can use this theorem to prove ω ∈ V via f1dmex 7934. (Contributed by Matthew House, 13-Apr-2026.)
(𝜑𝐹:𝐴1-1𝐴)    &   (𝜑𝐵 ∈ (𝐴 ∖ ran 𝐹))       (𝜑 → (rec(𝐹, 𝐵) ↾ ω):ω–1-1𝐴)
 
12-Apr-2026nalset 5263 No set contains all sets. Theorem 41 of [Suppes] p. 30. (Contributed by NM, 23-Aug-1993.) Extract exnelv 5262. (Revised by Matthew House, 12-Apr-2026.)
¬ ∃𝑥𝑦 𝑦𝑥
 
12-Apr-2026exnelv 5262 For any set 𝑥, there is a set not contained in 𝑥. The proof is based on Russell's paradox. (Contributed by NM, 23-Aug-1993.) Remove use of ax-12 2211 and ax-13 2402. (Revised by BJ, 31-May-2019.) Extract from nalset 5263. (Revised by Matthew House, 12-Apr-2026.)
𝑦 ¬ 𝑦𝑥
 
11-Apr-2026indsum 15839 Finite sum of a product with the indicator function / Cartesian product with the indicator function. Note: this theorem cannot be efficiently shortened using sumss2 15736, unless there are some additional auxiliary theorems like (if(𝑥𝐴, 1, 0) · 𝐵) = if(𝑥𝐴, 𝐵, 0). (Contributed by Thierry Arnoux, 14-Aug-2017.) (Proof shortened by AV, 11-Apr-2026.)
(𝜑𝑂 ∈ Fin)    &   (𝜑𝐴𝑂)    &   ((𝜑𝑥𝑂) → 𝐵 ∈ ℂ)       (𝜑 → Σ𝑥𝑂 ((((𝟭‘𝑂)‘𝐴)‘𝑥) · 𝐵) = Σ𝑥𝐴 𝐵)
 
11-Apr-2026indval0 12196 The indicator function generator does not generate a (meaningful) indicator function for a class which is not a subset of the domain. (Contributed by AV, 11-Apr-2026.)
𝐴𝑂 → ((𝟭‘𝑂)‘𝐴) = ∅)
 
10-Apr-2026ppivalnn 48205 Value of the prime-counting function pi for positive integers, according to Ján Mináč, see statement in [Ribenboim], p. 181. (Contributed by AV, 10-Apr-2026.)
(𝑁 ∈ ℕ → (π𝑁) = Σ𝑘 ∈ (2...𝑁)(⌊‘((((!‘(𝑘 − 1)) + 1) / 𝑘) − (⌊‘((!‘(𝑘 − 1)) / 𝑘)))))
 
10-Apr-2026ppivalnnprm 48198 Value of a term of the prime-counting function pi for positive integers, according to Ján Mináč, for a prime number. (Contributed by AV, 10-Apr-2026.)
(𝑃 ∈ ℙ → (⌊‘((((!‘(𝑃 − 1)) + 1) / 𝑃) − (⌊‘((!‘(𝑃 − 1)) / 𝑃)))) = 1)
 
10-Apr-2026flmrecm1 47901 The floor of an integer minus the reciprocal of a positive integer is the integer minus 1. (Contributed by AV, 10-Apr-2026.)
((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℕ) → (⌊‘(𝑀 − (1 / 𝑁))) = (𝑀 − 1))
 
10-Apr-2026nnge2recfl0 47900 The floor of the reciprocal of an integer greater than 1 is 0. (Contributed by AV, 10-Apr-2026.)
(𝑁 ∈ (ℤ‘2) → (⌊‘(1 / 𝑁)) = 0)
 
10-Apr-2026prmssuz2 16714 The primes are integers greater than 1. (Contributed by AV, 10-Apr-2026.)
ℙ ⊆ (ℤ‘2)
 
10-Apr-2026indsumhash 15840 The finite sum of the indicator function is the number of elements of the corresponding subset. (Contributed by AV, 10-Apr-2026.)
1 = ((𝟭‘𝑂)‘𝐴)       ((𝑂 ∈ Fin ∧ 𝐴𝑂) → Σ𝑘𝑂 ( 1𝑘) = (♯‘𝐴))
 
10-Apr-2026fsumconst1 15801 The sum of 1 over a finite set equals the size of the set. (Contributed by AV, 10-Apr-2026.)
(𝐴 ∈ Fin → Σ𝑘𝐴 1 = (♯‘𝐴))
 
10-Apr-2026nnge2recico01 13508 The reciprocal of an integer greater than 1 is in the right open interval between 0 and 1. (Contributed by AV, 10-Apr-2026.)
(𝑁 ∈ (ℤ‘2) → (1 / 𝑁) ∈ (0[,)1))
 
10-Apr-2026fvindre 12200 The range of the indicator function is a subset of . (Contributed by AV, 10-Apr-2026.)
(((𝑂 ∈ Fin ∧ 𝐴𝑂) ∧ 𝑋𝑂) → (((𝟭‘𝑂)‘𝐴)‘𝑋) ∈ ℝ)
 
9-Apr-2026rediv11d 43036 One-to-one relationship for division. (Contributed by SN, 9-Apr-2026.)
(𝜑𝐴 ∈ ℝ)    &   (𝜑𝐵 ∈ ℝ)    &   (𝜑𝐶 ∈ ℝ)    &   (𝜑𝐶 ≠ 0)       (𝜑 → ((𝐴 / 𝐶) = (𝐵 / 𝐶) ↔ 𝐴 = 𝐵))
 
9-Apr-2026redivdird 43035 Distribution of division over addition. (Contributed by SN, 9-Apr-2026.)
(𝜑𝐴 ∈ ℝ)    &   (𝜑𝐵 ∈ ℝ)    &   (𝜑𝐶 ∈ ℝ)    &   (𝜑𝐶 ≠ 0)       (𝜑 → ((𝐴 + 𝐵) / 𝐶) = ((𝐴 / 𝐶) + (𝐵 / 𝐶)))
 
9-Apr-2026rediv23d 43034 A "commutative"/associative law for division. (Contributed by SN, 9-Apr-2026.)
(𝜑𝐴 ∈ ℝ)    &   (𝜑𝐵 ∈ ℝ)    &   (𝜑𝐶 ∈ ℝ)    &   (𝜑𝐶 ≠ 0)       (𝜑 → ((𝐴 · 𝐵) / 𝐶) = ((𝐴 / 𝐶) · 𝐵))
 
9-Apr-2026redivrec2d 43033 Relationship between division and reciprocal. (Contributed by SN, 9-Apr-2026.)
(𝜑𝐴 ∈ ℝ)    &   (𝜑𝐵 ∈ ℝ)    &   (𝜑𝐵 ≠ 0)       (𝜑 → (𝐴 / 𝐵) = ((1 / 𝐵) · 𝐴))
 
8-Apr-2026ppivalnnnprm 48201 Value of a term of the prime-counting function pi for positive integers, according to Ján Miná&ccaron, for a non-prime number greater than 1. (Contributed by AV, 8-Apr-2026.)
((𝑁 ∈ (ℤ‘2) ∧ 𝑁 ∉ ℙ) → (⌊‘((((!‘(𝑁 − 1)) + 1) / 𝑁) − (⌊‘((!‘(𝑁 − 1)) / 𝑁)))) = 0)
 
8-Apr-2026ppivalnn4 48200 Value of the term of the prime-counting function pi for positive integers, according to Ján Mináč, for 4. (Contributed by AV, 8-Apr-2026.)
(⌊‘((((!‘(4 − 1)) + 1) / 4) − (⌊‘((!‘(4 − 1)) / 4)))) = 0
 
7-Apr-2026nprmdvdsfacm1 48197 A non-prime integer greater than 5 divides the factorial of the integer decreased by 1 (see remark in [Ribenboim] p. 181). Note: not valid for 𝑁 = 4, but for 𝑁 = 1! (Contributed by AV, 7-Apr-2026.)
((𝑁 ∈ (ℤ‘6) ∧ 𝑁 ∉ ℙ) → 𝑁 ∥ (!‘(𝑁 − 1)))
 
7-Apr-2026nprmdvdsfacm1lem4 48196 Lemma 4 for nprmdvdsfacm1 48197. (Contributed by AV, 7-Apr-2026.)
((𝑁 ∈ (ℤ‘6) ∧ 𝐴 ∈ (2..^𝑁) ∧ 𝑁 = (𝐴↑2)) → 𝑁 ∥ (!‘(𝑁 − 1)))
 
7-Apr-2026nprmdvdsfacm1lem3 48195 Lemma 3 for nprmdvdsfacm1 48197. (Contributed by AV, 7-Apr-2026.)
((𝑁 ∈ (ℤ‘6) ∧ 𝐴 ∈ (2..^𝑁) ∧ 𝑁 = (𝐴↑2)) → (2 · 𝐴) < (𝑁 − 1))
 
7-Apr-2026nprmdvdsfacm1lem2 48194 Lemma 2 for nprmdvdsfacm1 48197. (Contributed by AV, 7-Apr-2026.)
((𝑁 ∈ (ℤ‘6) ∧ 𝐴 ∈ (2..^𝑁) ∧ 𝑁 = (𝐴↑2)) → 3 ≤ 𝐴)
 
7-Apr-2026nprmdvdsfacm1lem1 48193 Lemma 1 for nprmdvdsfacm1 48197. (Contributed by AV, 7-Apr-2026.)
((𝑁 ∈ (ℤ‘6) ∧ 𝐴 ∈ (2..^𝑁) ∧ 𝑁 = (𝐴↑2)) → 𝑁 ∥ (𝐴 · (2 · 𝐴)))
 
7-Apr-20262timesltsqm1 47937 Two times an integer greater than 2 is less than the square of the integer minus 1. (Contributed by AV, 7-Apr-2026.)
(𝐴 ∈ (ℤ‘3) → (2 · 𝐴) < ((𝐴↑2) − 1))
 
7-Apr-2026wl-dfcleq 37972 The defining characterization of class equality. This version of df-cleq 2753 has no restrictions, unlike the forms on which it is based. It is proved in Tarski's FOL from the axiom of extensionality (ax-ext 2733), the definition of class equality (df-cleq 2753), and the definition of class membership (df-clel 2836).

Its forward implication is known as "class extensionality". (Contributed by NM, 15-Sep-1993.) (Revised by BJ, 24-Jun-2019.) Base on wl-dfcleq.just 37968. (Revised by Wolf Lammen, 7-Apr-2026.)

(𝐴 = 𝐵 ↔ ∀𝑥(𝑥𝐴𝑥𝐵))
 
7-Apr-2026wl-dfclel.just 37971 Add a hypothesis to wl-dfclel.basic 37970, that permits alpha-renaming. (Contributed by Wolf Lammen, 7-Apr-2026.)
(∃𝑥(𝑥 = 𝐴𝑥𝐵) ↔ ∃𝑦(𝑦 = 𝐴𝑦𝐵))       (𝐴𝐵 ↔ ∃𝑥(𝑥 = 𝐴𝑥𝐵))
 
7-Apr-2026wl-dfcleq.just 37968 The hypotheses added to this version of df-cleq 2753 address the following:

1. Equality of classes is an equivalence relation, as expected of equality.

2. Equality of classes obeys the Law of Indiscernibles (Leibniz's Law), and is compatible with class membership.

3. Alpha-renaming is explicitly permitted.

(Contributed by Wolf Lammen, 7-Apr-2026.)

(∀𝑥(𝑥𝐴𝑥𝐵) ↔ ∀𝑦(𝑦𝐴𝑦𝐵))    &   𝐴 = 𝐴    &   (𝐴 = 𝐵 → (𝐵 = 𝐶𝐶 = 𝐴))    &   (𝐴 = 𝐵 → (𝐴𝐶𝐵𝐶))    &   (𝐴 = 𝐵 → (𝐶𝐴𝐶𝐵))       (𝐴 = 𝐵 ↔ ∀𝑥(𝑥𝐴𝑥𝐵))
 
7-Apr-2026elALTtco 36805 Derivation of el 5404 from ax-tco 36796. Use el 5404 instead. (Contributed by Matthew House, 7-Apr-2026.) (Proof modification is discouraged.) (New usage is discouraged.)
𝑦 𝑥𝑦
 
7-Apr-2026axnulregtco 36804 Derivation of ax-nul 5255 from ax-reg 9537 and ax-tco 36796. Use ax-nul 5255 instead. (Contributed by Matthew House, 7-Apr-2026.) (Proof modification is discouraged.) (New usage is discouraged.)
𝑥𝑦 ¬ 𝑦𝑥
 
7-Apr-2026axtco1 36797 Strong form of the Axiom of Transitive Containment. See ax-tco 36796 for more information. In particular, this theorem generalizes the statement of ax-tco 36796, allowing it to be written with only three variables, since 𝑥 need not be distinct from both 𝑧 and 𝑤. (Contributed by Matthew House, 7-Apr-2026.)
𝑦(𝑥𝑦 ∧ ∀𝑧(𝑧𝑦 → ∀𝑤(𝑤𝑧𝑤𝑦)))
 
6-Apr-2026nprmmul2 48098 Special factorization of a non-prime integer greater than 3. (Contributed by AV, 6-Apr-2026.)
(𝑁 ∈ (ℤ‘4) → (𝑁 ∉ ℙ ↔ ∃𝑎 ∈ (2..^𝑁)∃𝑏 ∈ (2..^𝑁)(𝑎𝑏𝑁 = (𝑎 · 𝑏))))
 
6-Apr-2026muldvdsfacm1 47945 The product of two different positive integers less than a third integer divides the factorial of the third integer decreased by 1. By assumption, the third integer must be greater than 3. (Contributed by AV, 6-Apr-2026.)
((𝐴 ∈ (1..^𝐵) ∧ 𝐵 ∈ (1..^𝑁)) → (𝐴 · 𝐵) ∥ (!‘(𝑁 − 1)))
 
6-Apr-2026muldvdsfacgt 47944 The product of two different positive integers divides the factorial of the bigger integer. (Contributed by AV, 6-Apr-2026.)
(𝐴 ∈ (1..^𝐵) → (𝐴 · 𝐵) ∥ (!‘𝐵))
 
6-Apr-2026facnn0dvdsfac 47943 The factorial of a nonnegative integer divides the factorial of an integer which is greater than or equal to the first integer. (Contributed by AV, 6-Apr-2026.)
(𝑀 ∈ (0...𝑁) → (!‘𝑀) ∥ (!‘𝑁))
 
6-Apr-20262timesltsq 47936 Two times an integer greater than 2 is less than the square of the integer. (Contributed by AV, 6-Apr-2026.)
(𝐴 ∈ (ℤ‘3) → (2 · 𝐴) < (𝐴↑2))
 
6-Apr-2026ttc0el 36859 A transitive closure contains as an element iff it is nonempty, assuming Regularity and Transitive Containment. (Contributed by Matthew House, 6-Apr-2026.)
(𝐴 ≠ ∅ ↔ ∅ ∈ TC+ 𝐴)
 
6-Apr-2026dfttc3g 36858 The transitive closure of a set 𝐴 is (TC‘𝐴), assuming Transitive Containment. (Contributed by Matthew House, 6-Apr-2026.)
(𝐴𝑉 → TC+ 𝐴 = (TC‘𝐴))
 
6-Apr-2026ttcexbi 36857 A class is a set iff its transitive closure is a set, assuming Transitive Containment. (Contributed by Matthew House, 6-Apr-2026.)
(𝐴 ∈ V ↔ TC+ 𝐴 ∈ V)
 
6-Apr-2026ttcexg 36856 The transitive closure of a set is a set, assuming Transitive Containment. (Contributed by Matthew House, 6-Apr-2026.)
(𝐴𝑉 → TC+ 𝐴 ∈ V)
 
6-Apr-2026elttcirr 36855 Irreflexivity of 𝐴 ∈ TC+ 𝐵 relationship. This is a consequence of Regularity, but it does not require Transitive Containment. We use the alternative expression dfttc4 36854 to construct a set in which 𝐴 is both -minimal and not -minimal. (Contributed by Matthew House, 6-Apr-2026.)
¬ 𝐴 ∈ TC+ 𝐴
 
6-Apr-2026dfttc4 36854 An alternative expression for the transitive closure of a class, assuming Regularity. A set 𝑥 is contained in the transitive closure of 𝐴 iff we can construct an -chain from 𝑥 to an element of 𝐴. This weak definition is primarily useful for proving elttcirr 36855. (Contributed by Matthew House, 6-Apr-2026.)
TC+ 𝐴 = {𝑥 ∣ ∃𝑦((𝐴𝑦) ≠ ∅ ∧ ∀𝑧𝑦 ((𝑧𝑦) = ∅ → 𝑧 = 𝑥))}
 
6-Apr-2026dfttc4lem2 36853 Lemma for dfttc4 36854. (Contributed by Matthew House, 6-Apr-2026.)
𝐵 = {𝑥 ∣ ∃𝑦((𝐴𝑦) ≠ ∅ ∧ ∀𝑧𝑦 ((𝑧𝑦) = ∅ → 𝑧 = 𝑥))}       (𝐴𝐵 ∧ Tr 𝐵)
 
6-Apr-2026dfttc4lem1 36852 Lemma for dfttc4 36854. (Contributed by Matthew House, 6-Apr-2026.)
𝐵 = {𝑥 ∣ ∃𝑦((𝐴𝑦) ≠ ∅ ∧ ∀𝑧𝑦 ((𝑧𝑦) = ∅ → 𝑧 = 𝑥))}    &   𝐶 ∈ V    &   𝐷 ∈ V       (((𝐴𝐶) ≠ ∅ ∧ ∀𝑧𝐶 ((𝑧𝐶) = ∅ → 𝑧 = 𝐷)) → 𝐷𝐵)
 
6-Apr-2026ttc0elw 36851 If a transitive closure is a set, then it contains as an element iff it is nonempty, assuming Regularity. If we also assume Transitive Containment, then we can remove the TC+ 𝐴𝑉 hypothesis, see ttc0el 36859. (Contributed by Matthew House, 6-Apr-2026.)
(TC+ 𝐴𝑉 → (𝐴 ≠ ∅ ↔ ∅ ∈ TC+ 𝐴))
 
6-Apr-2026ttcwf3 36850 The sets whose transitive closures are sets are precisely the well-founded sets, assuming Regularity. (Contributed by Matthew House, 6-Apr-2026.)
(TC+ 𝐴 ∈ V ↔ 𝐴 (𝑅1 “ On))
 
6-Apr-2026ttcwf2 36849 If a transitive closure class is a set, then it is well-founded, assuming Regularity. (Contributed by Matthew House, 6-Apr-2026.)
(TC+ 𝐴 ∈ V ↔ TC+ 𝐴 (𝑅1 “ On))
 
6-Apr-2026ttcwf 36848 A set is well-founded iff its transitive closure is well-founded. As a corollary, the transitive closure of any well-founded set is a set. (Contributed by Matthew House, 6-Apr-2026.)
(𝐴 (𝑅1 “ On) ↔ TC+ 𝐴 (𝑅1 “ On))
 
6-Apr-2026dfttc3gw 36847 If the transitive closure of 𝐴 is a set, then its value is (TC‘𝐴). If we assume Transitive Containment, then we can weaken the hypothesis to 𝐴𝑉, see dfttc3g 36858. (Contributed by Matthew House, 6-Apr-2026.)
(TC+ 𝐴𝑉 → TC+ 𝐴 = (TC‘𝐴))
 
6-Apr-2026ttcsntrsucg 36846 The singleton transitive closure of a transitive set is its successor. (Contributed by Matthew House, 6-Apr-2026.)
((𝐴𝑉 ∧ Tr 𝐴) → TC+ {𝐴} = suc 𝐴)
 
6-Apr-2026ttcsnexbig 36845 The transitive closure of a set is a set iff its singleton transitive closure is a set. (Contributed by Matthew House, 6-Apr-2026.)
(𝐴𝑉 → (TC+ 𝐴 ∈ V ↔ TC+ {𝐴} ∈ V))
 
6-Apr-2026ttcsnexg 36844 If the transitive closure of a class is a set, then its singleton transitive closure is a set. (Contributed by Matthew House, 6-Apr-2026.)
(TC+ 𝐴𝑉 → TC+ {𝐴} ∈ V)
 
6-Apr-2026ttcsng 36843 Relationship between TC+ {𝐴} and TC+ 𝐴: the former contains the additional element 𝐴. (Contributed by Matthew House, 6-Apr-2026.)
(𝐴𝑉 → TC+ {𝐴} = (TC+ 𝐴 ∪ {𝐴}))
 
6-Apr-2026ttcsnmin 36842 The singleton transitive closure is the minimal transitive class containing 𝐴 as an element. (Contributed by Matthew House, 6-Apr-2026.)
((𝐴𝐵 ∧ Tr 𝐵) → TC+ {𝐴} ⊆ 𝐵)
 
6-Apr-2026ttcsnidg 36841 The singleton transitive closure contains its argument 𝐴 as an element. (Contributed by Matthew House, 6-Apr-2026.)
(𝐴𝑉𝐴 ∈ TC+ {𝐴})
 
6-Apr-2026ttcsnssg 36840 The transitive closure is contained in the singleton transitive closure. (Contributed by Matthew House, 6-Apr-2026.)
(𝐴𝑉 → TC+ 𝐴 ⊆ TC+ {𝐴})
 
6-Apr-2026ttcpwss 36839 The transitive closure of a power class is contained in the power class of the transitive closure. (Contributed by Matthew House, 6-Apr-2026.)
TC+ 𝒫 𝐴 ⊆ 𝒫 TC+ 𝐴
 
6-Apr-2026ttciun 36838 Distribute indexed union through a transitive closure. (Contributed by Matthew House, 6-Apr-2026.)
TC+ 𝑥𝐴 𝐵 = 𝑥𝐴 TC+ 𝐵
 
6-Apr-2026ttcuni 36837 Distribute union of a class through a transitive closure. (Contributed by Matthew House, 6-Apr-2026.)
TC+ 𝐴 = TC+ 𝐴
 
6-Apr-2026ttcun 36836 Distribute union of two classes through a transitive closure. (Contributed by Matthew House, 6-Apr-2026.)
TC+ (𝐴𝐵) = (TC+ 𝐴 ∪ TC+ 𝐵)
 
6-Apr-2026ttciunun 36835 Relationship between TC+ 𝐴 and 𝑥𝐴TC+ 𝑥: we can decompose TC+ 𝐴 into the elements of 𝑥𝐴TC+ 𝑥 plus the elements of 𝐴 itself. (Contributed by Matthew House, 6-Apr-2026.)
TC+ 𝐴 = ( 𝑥𝐴 TC+ 𝑥𝐴)
 
6-Apr-2026ttcuniun 36834 Relationship between TC+ 𝐴 and TC+ 𝐴: we can decompose TC+ 𝐴 into the elements of TC+ 𝐴 plus the elements of 𝐴 itself. (Contributed by Matthew House, 6-Apr-2026.)
TC+ 𝐴 = (TC+ 𝐴𝐴)
 
6-Apr-2026csbttc 36833 Distribute proper substitution through a transitive closure. (Contributed by Matthew House, 6-Apr-2026.)
𝐴 / 𝑥TC+ 𝐵 = TC+ 𝐴 / 𝑥𝐵
 
6-Apr-2026ttc00 36832 A class has an empty transitive closure iff it is the empty set. (Contributed by Matthew House, 6-Apr-2026.)
(𝐴 = ∅ ↔ TC+ 𝐴 = ∅)
 
6-Apr-2026ttc0 36831 The transitive closure of the empty set is the empty set. (Contributed by Matthew House, 6-Apr-2026.)
TC+ ∅ = ∅
 
6-Apr-2026dfttc2g 36830 A shorter expression for the transitive closure of a set. (Contributed by Matthew House, 6-Apr-2026.)
(𝐴𝑉 → TC+ 𝐴 = (rec((𝑥 ∈ V ↦ 𝑥), 𝐴) “ ω))
 
6-Apr-2026elttctr 36829 Transitivity of 𝐴 ∈ TC+ 𝐵 relationship. (Contributed by Matthew House, 6-Apr-2026.)
((𝐴 ∈ TC+ 𝐵𝐵 ∈ TC+ 𝐶) → 𝐴 ∈ TC+ 𝐶)
 
6-Apr-2026ssttctr 36828 Transitivity of 𝐴 ⊆ TC+ 𝐵 relationship. (Contributed by Matthew House, 6-Apr-2026.)
((𝐴 ⊆ TC+ 𝐵𝐵 ⊆ TC+ 𝐶) → 𝐴 ⊆ TC+ 𝐶)
 
6-Apr-2026ttcidm 36827 The transitive closure operation is idempotent. (Contributed by Matthew House, 6-Apr-2026.)
TC+ TC+ 𝐴 = TC+ 𝐴
 
6-Apr-2026ttctrid 36826 The transitive closure of a transitive class is the class itself. (Contributed by Matthew House, 6-Apr-2026.)
(Tr 𝐴 → TC+ 𝐴 = 𝐴)
 
6-Apr-2026ttcel2 36825 Elements turn into subclasses upon taking transitive closures. (Contributed by Matthew House, 6-Apr-2026.)
(𝐴𝐵 → TC+ 𝐴 ⊆ TC+ 𝐵)
 
6-Apr-2026ttcel 36824 A transitive closure contains the transitive closures of all its elements. (Contributed by Matthew House, 6-Apr-2026.)
(𝐴 ∈ TC+ 𝐵 → TC+ 𝐴 ⊆ TC+ 𝐵)
 
6-Apr-2026ttcss2 36823 The subclass relationship is inherited by transitive closures. (Contributed by Matthew House, 6-Apr-2026.)
(𝐴𝐵 → TC+ 𝐴 ⊆ TC+ 𝐵)
 
6-Apr-2026ttcss 36822 A transitive closure contains the transitive closures of all its subclasses. (Contributed by Matthew House, 6-Apr-2026.)
(𝐴 ⊆ TC+ 𝐵 → TC+ 𝐴 ⊆ TC+ 𝐵)
 
6-Apr-2026ttcexrg 36821 If the transitive closure of a class is a set, then the class is a set. (Contributed by Matthew House, 6-Apr-2026.)
(TC+ 𝐴𝑉𝐴 ∈ V)
 
6-Apr-2026ttcmin 36820 The transitive closure of 𝐴 is a subclass of every transitive class containing 𝐴. (Contributed by Matthew House, 6-Apr-2026.)
((𝐴𝐵 ∧ Tr 𝐵) → TC+ 𝐴𝐵)
 
6-Apr-2026ttctr3 36819 The transitive closure of a class is transitive. (Contributed by Matthew House, 6-Apr-2026.)
TC+ 𝐴 ⊆ TC+ 𝐴
 
6-Apr-2026ttctr2 36818 The transitive closure of a class is transitive. (Contributed by Matthew House, 6-Apr-2026.)
(𝐴 ∈ TC+ 𝐵𝐴 ⊆ TC+ 𝐵)
 
6-Apr-2026ttctr 36817 The transitive closure of a class is transitive. (Contributed by Matthew House, 6-Apr-2026.)
Tr TC+ 𝐴
 
6-Apr-2026ttcid 36816 The transitive closure contains its argument as a subclass. (Contributed by Matthew House, 6-Apr-2026.)
𝐴 ⊆ TC+ 𝐴
 
6-Apr-2026nfttc 36815 Bound-variable hypothesis builder for transitive closure. (Contributed by Matthew House, 6-Apr-2026.)
𝑥𝐴       𝑥TC+ 𝐴
 
6-Apr-2026ttceqd 36814 Equality deduction for transitive closure. (Contributed by Matthew House, 6-Apr-2026.)
(𝜑𝐴 = 𝐵)       (𝜑 → TC+ 𝐴 = TC+ 𝐵)
 
6-Apr-2026ttceqi 36813 Equality inference for transitive closure. (Contributed by Matthew House, 6-Apr-2026.)
𝐴 = 𝐵       TC+ 𝐴 = TC+ 𝐵
 
6-Apr-2026ttceq 36812 Equality theorem for transitive closure. (Contributed by Matthew House, 6-Apr-2026.)
(𝐴 = 𝐵 → TC+ 𝐴 = TC+ 𝐵)
 
6-Apr-2026df-ttc 36811 Transitive closure of a class. Unlike (TC‘𝐴) (see df-tc 9687), this definition works even if 𝐴 or its transitive closure is a proper class. Note that unless we assume Transitive Containment, the transitive closure of a set may be a proper class. If we only assume Regularity, then the class of sets whose transitive closure is a set is precisely the class of well-founded sets, see ttcwf3 36850. (Contributed by Matthew House, 6-Apr-2026.)
TC+ 𝐴 = 𝑥𝐴 (rec((𝑦 ∈ V ↦ 𝑦), {𝑥}) “ ω)
 
6-Apr-2026cttc 36810 Extend class notation with the transitive closure of a class. (Contributed by Matthew House, 6-Apr-2026.)
class TC+ 𝐴
 
6-Apr-2026tr0el 36809 Every nonempty transitive class contains the empty set as an element, a consequence of Regularity and Transitive Containment. (Contributed by Matthew House, 6-Apr-2026.)
((𝐴 ≠ ∅ ∧ Tr 𝐴) → ∅ ∈ 𝐴)
 
6-Apr-2026tr0elw 36808 Every nonempty transitive set contains the empty set as an element, a consequence of Regularity. If we assume Transitive Containment, then we can omit the 𝐴𝑉 hypothesis, see tr0el 36809. (Contributed by Matthew House, 6-Apr-2026.)
((𝐴𝑉𝐴 ≠ ∅ ∧ Tr 𝐴) → ∅ ∈ 𝐴)
 
6-Apr-2026tz9.1tco 36807 Version of tz9.1 9681 derived from ax-tco 36796. (Contributed by Matthew House, 6-Apr-2026.)
𝐴 ∈ V       𝑥(𝐴𝑥 ∧ Tr 𝑥 ∧ ∀𝑦((𝐴𝑦 ∧ Tr 𝑦) → 𝑥𝑦))
 
6-Apr-2026tz9.1ctco 36806 Version of tz9.1c 9682 derived from ax-tco 36796. (Contributed by Matthew House, 6-Apr-2026.)
𝐴 ∈ V        {𝑥 ∣ (𝐴𝑥 ∧ Tr 𝑥)} ∈ V
 
6-Apr-2026axuntco 36803 Derivation of ax-un 7714 from ax-tco 36796. Use ax-un 7714 instead. (Contributed by Matthew House, 6-Apr-2026.) (Proof modification is discouraged.) (New usage is discouraged.)
𝑦𝑧(∃𝑤(𝑧𝑤𝑤𝑥) → 𝑧𝑦)
 
6-Apr-2026axtcond 36802 A version of the Axiom of Transitive Containment with no distinct variable conditions. Usage of this theorem is discouraged because it depends on ax-13 2402. (Contributed by Matthew House, 6-Apr-2026.) (New usage is discouraged.)
𝑦𝑧((𝑧 = 𝑥𝑧𝑦) → ∀𝑥(𝑥𝑧𝑥𝑦))
 
6-Apr-2026axtco2g 36801 Weak form of the Axiom of Transitive Containment using class variables and abbreviations. See ax-tco 36796 for more information. (Contributed by Matthew House, 6-Apr-2026.)
(𝐴𝑉 → ∃𝑥(𝐴𝑥 ∧ Tr 𝑥))
 
6-Apr-2026axtco1g 36800 Strong form of the Axiom of Transitive Containment using class variables and abbreviations. See ax-tco 36796 for more information. (Contributed by Matthew House, 6-Apr-2026.)
(𝐴𝑉 → ∃𝑥(𝐴𝑥 ∧ Tr 𝑥))
 
6-Apr-2026axtco1from2 36799 Strong form axtco1 36797 of the Axiom of Transitive Containment, derived from the weak form axtco2 36798. See ax-tco 36796 for more information. As written, the proof uses ax-pr 5389 via el 5404, but we could alternatively use ax-pow 5321 via elALT2 5325. Use axtco1 36797 instead. (Contributed by Matthew House, 6-Apr-2026.) (Proof modification is discouraged.) (New usage is discouraged.)
𝑦(𝑥𝑦 ∧ ∀𝑧(𝑧𝑦 → ∀𝑤(𝑤𝑧𝑤𝑦)))
 
6-Apr-2026axtco2 36798 Weak form of the Axiom of Transitive Containment. See ax-tco 36796 for more information. In particular, this theorem shows the derivation of the weak form from the strong form. (Contributed by Matthew House, 6-Apr-2026.)
𝑦𝑧((𝑧 = 𝑥𝑧𝑦) → ∀𝑤(𝑤𝑧𝑤𝑦))
 
6-Apr-2026ax-tco 36796 The Axiom of Transitive Containment of ZF set theory. It was derived as axtco 36795 above and is therefore redundant if we assume ax-ext 2733, ax-rep 5226 and ax-inf2 9593, but we state it as a separate axiom here so that its uses can be identified more easily. It states that a transitive set 𝑦 exists that contains a given set 𝑥. In particular, the transitive closure of 𝑥 is a set, since it is a subset of 𝑦, see df-tc 9687.

Traditionally, this statement is not counted as an axiom at all, but as a theorem from Replacement and Infinity. In fact, from the transitive closure of 𝑥 we can construct the set of iterated unions of 𝑥 (and vice versa), and Skolem took the existence of the latter set as a motivation for introducing the Axiom of Replacement. But Transitive Containment is strictly weaker than either of those axioms, so many authors identify it as its own axiom when investigating subsystems of ZF, such as Zermelo set theory or finitist set theory. We follow this separation in order to avoid nonessential usage of the stronger axioms.

There are two main versions of this axiom that appear in the literature: the strong form 𝑦(𝑥𝑦 ∧ Tr 𝑦), see axtco1 36797 and axtco1g 36800, and the weak form 𝑦(𝑥𝑦 ∧ Tr 𝑦), see axtco2 36798 and axtco2g 36801. The weak form follows directly from the strong form, see axtco2 36798. But the strong form only follows from the weak form if we allow el 5404 or one of its variants, see axtco1from2 36799. We take the strong form here as the axiom, since it is slightly shorter when expanded to primitive symbols. Yet the weak form turns out to be more suitable for axtcond 36802 for reasons of syntax. (Contributed by Matthew House, 6-Apr-2026.)

𝑦(𝑥𝑦 ∧ ∀𝑧(𝑧𝑦 → ∀𝑤(𝑤𝑧𝑤𝑦)))
 
6-Apr-2026axtco 36795 Axiom of Transitive Containment, derived as a theorem from ax-ext 2733, ax-rep 5226, and ax-inf2 9593. Use ax-tco 36796 instead. (Contributed by Matthew House, 6-Apr-2026.) (New usage is discouraged.)
𝑦(𝑥𝑦 ∧ ∀𝑧(𝑧𝑦 → ∀𝑤(𝑤𝑧𝑤𝑦)))
 
6-Apr-2026el 5404 Any set is an element of some other set. See elALT 5408 for a shorter proof using more axioms, and see elALT2 5325 for a proof that uses ax-9 2151 and ax-pow 5321 instead of ax-pr 5389. (Contributed by NM, 4-Jan-2002.) (Proof shortened by Andrew Salmon, 25-Jul-2011.) Use ax-pr 5389 instead of ax-9 2151 and ax-pow 5321. (Revised by BTernaryTau, 2-Dec-2024.) (Proof shortened by Matthew House, 6-Apr-2026.)
𝑦 𝑥𝑦
 
6-Apr-2026axprlem1 5379 Lemma for axpr 5383. There exists a set to which all empty sets belong. (Contributed by Rohan Ridenour, 10-Aug-2023.) (Revised by BJ, 13-Aug-2023.) (Proof shortened by Matthew House, 6-Apr-2026.)
𝑥𝑦(∀𝑧 ¬ 𝑧𝑦𝑦𝑥)
 
5-Apr-2026nprmmul1 48097 Special factorization of a non-prime integer greater than 3. (Contributed by AV, 5-Apr-2026.)
(𝑁 ∈ (ℤ‘4) → (𝑁 ∉ ℙ ↔ ∃𝑎 ∈ (2..^𝑁)∃𝑏 ∈ (2..^𝑁)𝑁 = (𝑎 · 𝑏)))
 
5-Apr-2026nndivides2 47942 Definition of the divides relation for divisors greater than 1. (Contributed by AV, 5-Apr-2026.)
((𝑀 ∈ (2..^𝑁) ∧ 𝑁 ∈ ℕ) → (𝑀𝑁 ↔ ∃𝑛 ∈ (2..^𝑁)(𝑛 · 𝑀) = 𝑁))
 
5-Apr-2026nnmul2b 47889 A factor of a product of integers is at least 2 and less then the product iff the second factor is at least 2 and less then the product. (Contributed by AV, 5-Apr-2026.)
((𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ (𝐴 · 𝐵) = 𝑁) → (𝐴 ∈ (2..^𝑁) ↔ 𝐵 ∈ (2..^𝑁)))
 
5-Apr-2026nnmul2 47888 If one factor of a product of integers is at least 2 and less then the product, so is the second factor. (Contributed by AV, 5-Apr-2026.)
((𝐴 ∈ (2..^𝑁) ∧ 𝐵 ∈ ℕ ∧ (𝐴 · 𝐵) = 𝑁) → 𝐵 ∈ (2..^𝑁))
 
5-Apr-2026elfzo2nn 47887 A member of a half-open range of integers starting at 2 is a positive integer. (Contributed by AV, 5-Apr-2026.)
(𝐾 ∈ (2..^𝑁) → 𝐾 ∈ ℕ)
 
5-Apr-2026elfz2nn 47880 A member of a finite set of sequential integers starting at 2 is a positive integer. (Contributed by AV, 5-Apr-2026.)
(𝐾 ∈ (2...𝑁) → 𝐾 ∈ ℕ)
 
5-Apr-2026bj-alrimdh 37031 Deduction form of Theorem 19.21 of [Margaris] p. 90, see 19.21 2241 and 19.21h 2320. (Contributed by NM, 10-Feb-1997.) (Proof shortened by Andrew Salmon, 13-May-2011.) State the most general derivable instance. (Revised by BJ, 5-Apr-2026.)
(𝜑 → ∀𝑥𝜓)    &   (𝜒 → ∀𝑥𝜃)    &   (𝜓 → (𝜃𝜏))       (𝜑 → (𝜒 → ∀𝑥𝜏))
 
5-Apr-2026bj-alimdh 37030 General instance of alimdh 1836. (Contributed by NM, 4-Jan-2002.) State the most general derivable instance. (Revised by BJ, 5-Apr-2026.)
(𝜑 → ∀𝑥𝜓)    &   (𝜓 → (𝜒𝜃))       (𝜑 → (∀𝑥𝜒 → ∀𝑥𝜃))
 
5-Apr-2026zfrep6 5238 A version of the Axiom of Replacement. Normally 𝜑 would have free variables 𝑥 and 𝑦. Axiom 6 of [Kunen] p. 12. The Separation Scheme ax-sep 5245 cannot be derived from this version and must be stated as a separate axiom in an axiom system (such as Kunen's) that uses this version in place of our ax-rep 5226. (Contributed by NM, 10-Oct-2003.) Shorten proof and reduce axiom dependencies. (Revised by BJ, 5-Apr-2026.)
(∀𝑥𝑧 ∃!𝑦𝜑 → ∃𝑤𝑥𝑧𝑦𝑤 𝜑)
 
5-Apr-2026replem 5237 A lemma for variants of the axiom of replacement: if we can form the set of images of the functional relation, then we can also form a set containing all its images. The converse requires the axiom of separation. (Contributed by BJ, 5-Apr-2026.)
((∀𝑥𝑧𝑦𝜑 ∧ ∃𝑤𝑦(𝑦𝑤 ↔ ∃𝑥𝑧 𝜑)) → ∃𝑤𝑥𝑧𝑦𝑤 𝜑)
 
4-Apr-2026ppi1sum 48204 Value of the prime-counting function pi for 1, according to Ján Mináč. (Contributed by AV, 4-Apr-2026.)
(π‘1) = Σ𝑘 ∈ ∅ (⌊‘((((!‘(𝑘 − 1)) + 1) / 𝑘) − (⌊‘((!‘(𝑘 − 1)) / 𝑘))))
 
4-Apr-2026indprmfz 48203 An indicator function for prime numbers in a finite interval of integers, according to Ján Mináč. (Contributed by AV, 4-Apr-2026.)
𝐼 = (2...𝐴)       ((𝟭‘𝐼)‘(𝐼 ∩ ℙ)) = (𝑘𝐼 ↦ (⌊‘((((!‘(𝑘 − 1)) + 1) / 𝑘) − (⌊‘((!‘(𝑘 − 1)) / 𝑘)))))
 
4-Apr-2026indprm 48202 An indicator function for prime numbers, according to Ján Mináč. (Contributed by AV, 4-Apr-2026.)
((𝟭‘(ℤ‘2))‘ℙ) = (𝑘 ∈ (ℤ‘2) ↦ (⌊‘((((!‘(𝑘 − 1)) + 1) / 𝑘) − (⌊‘((!‘(𝑘 − 1)) / 𝑘)))))
 
4-Apr-2026ppivalnnnprmge6 48199 Value of a term of the prime-counting function pi for positive integers, according to Ján Mináč, for a non-prime number greater than 4. (Contributed by AV, 4-Apr-2026.)
((𝑁 ∈ (ℤ‘6) ∧ 𝑁 ∉ ℙ) → (⌊‘((((!‘(𝑁 − 1)) + 1) / 𝑁) − (⌊‘((!‘(𝑁 − 1)) / 𝑁)))) = 0)
 
4-Apr-2026nprmmul3 48099 Special factorization of a non-prime integer greater than 3. (Contributed by AV, 4-Apr-2026.)
(𝑁 ∈ (ℤ‘4) → (𝑁 ∉ ℙ ↔ (∃𝑎 ∈ (2..^𝑁)∃𝑏 ∈ (2..^𝑁)(𝑎 < 𝑏𝑁 = (𝑎 · 𝑏)) ∨ ∃𝑎 ∈ (2..^𝑁)𝑁 = (𝑎↑2))))
 
4-Apr-2026rerecne0d 43029 The reciprocal of a nonzero number is nonzero. (Contributed by SN, 4-Apr-2026.)
(𝜑𝐴 ∈ ℝ)    &   (𝜑𝐴 ≠ 0)       (𝜑 → (1 / 𝐴) ≠ 0)
 
4-Apr-2026bj-nnf-cbval 37219 Compared with cbvalv1 2371, this saves ax-12 2211. (Contributed by BJ, 4-Apr-2026.)
(𝜑 → ∀𝑥𝜑)    &   (𝜑 → ∀𝑦𝜑)    &   (𝜑 → Ⅎ'𝑦𝜓)    &   (𝜑 → Ⅎ'𝑥𝜒)    &   ((𝜑𝑥 = 𝑦) → (𝜓𝜒))       (𝜑 → (∀𝑥𝜓 ↔ ∀𝑦𝜒))
 
4-Apr-2026bj-nnf-cbvali 37218 Compared with bj-nnf-cbvaliv 37215, replacing the DV condition on 𝑦, 𝜓 with the nonfreeness condition requires ax-11 2190. (Contributed by BJ, 4-Apr-2026.)
(𝜑 → ∀𝑥𝜑)    &   (𝜑 → ∀𝑦𝜑)    &   (𝜑 → Ⅎ'𝑦𝜓)    &   (𝜑 → Ⅎ'𝑥𝜒)    &   ((𝜑𝑥 = 𝑦) → (𝜓𝜒))       (𝜑 → (∀𝑥𝜓 → ∀𝑦𝜒))
 
4-Apr-2026bj-nnf-cbvaliv 37215 The only DV conditions are those saying that 𝑦 is a fresh variable used to construct 𝜒. (Contributed by BJ, 4-Apr-2026.)
(𝜑 → ∀𝑥𝜑)    &   (𝜑 → Ⅎ'𝑥𝜒)    &   ((𝜑𝑥 = 𝑦) → (𝜓𝜒))       (𝜑 → (∀𝑥𝜓 → ∀𝑦𝜒))
 
4-Apr-2026bj-nnf-spime 37214 An existential generalization result in deduction form, from ax-1 6-- ax-6 1986, where the only DV condition is on 𝑥, 𝑦, and where 𝑥 should be nonfree in the new proposition 𝜒 (and in the context 𝜑). (Contributed by BJ, 4-Apr-2026.)
(𝜑 → ∀𝑥𝜑)    &   (𝜑 → Ⅎ'𝑥𝜓)    &   ((𝜑𝑥 = 𝑦) → (𝜓𝜒))       (𝜑 → (𝜓 → ∃𝑥𝜒))
 
4-Apr-2026bj-nnf-spim 37213 A universal specialization result in deduction form, proved from ax-1 6 -- ax-6 1986, where the only DV condition is on 𝑥, 𝑦 and where 𝑥 should be nonfree in the new proposition 𝜒 (and in the context 𝜑). (Contributed by BJ, 4-Apr-2026.)
(𝜑 → ∀𝑥𝜑)    &   (𝜑 → Ⅎ'𝑥𝜒)    &   ((𝜑𝑥 = 𝑦) → (𝜓𝜒))       (𝜑 → (∀𝑥𝜓𝜒))
 
4-Apr-2026bj-hbex 37151 A more general instance of hbex 2356. (Contributed by BJ, 4-Apr-2026.)
(𝜑 → ∀𝑥𝜓)       (∃𝑦𝜑 → ∀𝑥𝑦𝜓)
 
4-Apr-2026bj-hbexd 37149 A more general instance of the deduction form of hbex 2356. (Contributed by BJ, 4-Apr-2026.)
(𝜑 → ∀𝑦𝜓)    &   (𝜓 → (𝜒 → ∀𝑥𝜃))       (𝜑 → (∃𝑦𝜒 → ∀𝑥𝑦𝜃))
 
4-Apr-2026bj-hbal 37120 More general instance of hbal 2200. (Contributed by BJ, 4-Apr-2026.)
(𝜑 → ∀𝑥𝜓)       (∀𝑦𝜑 → ∀𝑥𝑦𝜓)
 
4-Apr-2026bj-hbald 37118 General statement that hbald 2201 proves . (Contributed by BJ, 4-Apr-2026.)
(𝜑 → ∀𝑦𝜓)    &   (𝜓 → (𝜒 → ∀𝑥𝜃))       (𝜑 → (∀𝑦𝜒 → ∀𝑥𝑦𝜃))
 
4-Apr-2026bj-spim0 37105 A universal specialization result in deduction form, proved from ax-1 6 -- ax-6 1986, where the only DV condition is on 𝑥, 𝑦 and where 𝑥 should be nonfree in the new proposition 𝜒 (and in the context 𝜑). (Contributed by BJ, 4-Apr-2026.)
(𝜑 → ∀𝑥𝜑)    &   (𝜑 → (∃𝑥𝜒𝜒))    &   ((𝜑𝑥 = 𝑦) → (𝜓𝜒))       (𝜑 → (∀𝑥𝜓𝜒))
 
4-Apr-2026bj-cbveximdv 37070 A lemma for alpha-renaming of variables bound by an existential quantifier. (Contributed by BJ, 4-Apr-2026.) (Proof modification is discouraged.)
(𝜑 → ∀𝑥𝜑)    &   (𝜑 → ∀𝑦𝜑)    &   (𝜑 → (𝜒 → ∀𝑦𝜒))    &   (𝜑 → ∀𝑥𝑦𝜓)    &   ((𝜑𝜓) → (𝜒𝜃))       (𝜑 → (∃𝑥𝜒 → ∃𝑦𝜃))
 
4-Apr-2026bj-cbvalimdv 37069 A lemma for alpha-renaming of variables bound by a universal quantifier. (Contributed by BJ, 4-Apr-2026.) (Proof modification is discouraged.)
(𝜑 → ∀𝑥𝜑)    &   (𝜑 → ∀𝑦𝜑)    &   (𝜑 → (∃𝑥𝜃𝜃))    &   (𝜑 → ∀𝑦𝑥𝜓)    &   ((𝜑𝜓) → (𝜒𝜃))       (𝜑 → (∀𝑥𝜒 → ∀𝑦𝜃))
 
4-Apr-2026bj-cbveximd 37068 A lemma for alpha-renaming of variables bound by an existential quantifier. (Contributed by BJ, 4-Apr-2026.) (Proof modification is discouraged.)
(𝜑 → ∀𝑥𝜑)    &   (𝜑 → ∀𝑦𝜑)    &   (𝜑 → (𝜒 → ∀𝑦𝜒))    &   (𝜑 → (∃𝑥𝜃𝜃))    &   (𝜑 → ∀𝑥𝑦𝜓)    &   ((𝜑𝜓) → (𝜒𝜃))       (𝜑 → (∃𝑥𝜒 → ∃𝑦𝜃))
 
4-Apr-2026bj-cbvalimd 37067 A lemma for alpha-renaming of variables bound by a universal quantifier. (Contributed by BJ, 4-Apr-2026.) (Proof modification is discouraged.)
(𝜑 → ∀𝑥𝜑)    &   (𝜑 → ∀𝑦𝜑)    &   (𝜑 → (𝜒 → ∀𝑦𝜒))    &   (𝜑 → (∃𝑥𝜃𝜃))    &   (𝜑 → ∀𝑦𝑥𝜓)    &   ((𝜑𝜓) → (𝜒𝜃))       (𝜑 → (∀𝑥𝜒 → ∀𝑦𝜃))
 
4-Apr-2026bj-cbvalimd0 37064 A lemma for alpha-renaming of variables bound by a universal quantifier. In applications, 𝑥 = 𝑦 will be substituted for 𝜓 and ax6ev 1988 will prove Hypothesis bj-cbvalimd0.denote. When ax6ev 1988 is not available but only its universal closure is, then bj-cbvalimd 37067 or bj-cbvalimdv 37069 should be used (see bj-cbvalimdlem 37065, bj-cbval 37082). (Contributed by BJ, 4-Apr-2026.)
(𝜑 → ∀𝑥𝜑)    &   (𝜑 → ∀𝑦𝜑)    &   (𝜑 → (𝜒 → ∀𝑦𝜒))    &   (𝜑 → (∃𝑥𝜃𝜃))    &   (𝜑 → ∃𝑥𝜓)    &   ((𝜑𝜓) → (𝜒𝜃))       (𝜑 → (∀𝑥𝜒 → ∀𝑦𝜃))
 
4-Apr-2026bj-spime 37063 A lemma for existential generalization. In applications, 𝑥 = 𝑦 will be substituted for 𝜓 and ax6ev 1988 will prove Hypothesis bj-spime.denote. (Contributed by BJ, 4-Apr-2026.)
(𝜑 → ∀𝑥𝜑)    &   (𝜑 → (𝜒 → ∀𝑥𝜒))    &   (𝜑 → ∃𝑥𝜓)    &   ((𝜑𝜓) → (𝜒𝜃))       (𝜑 → (𝜒 → ∃𝑥𝜃))
 
4-Apr-2026bj-spim 37062 A lemma for universal specification. In applications, 𝑥 = 𝑦 will be substituted for 𝜓 and ax6ev 1988 will prove Hypothesis bj-spim.denote. (Contributed by BJ, 4-Apr-2026.)
(𝜑 → ∀𝑥𝜑)    &   (𝜑 → (∃𝑥𝜃𝜃))    &   (𝜑 → ∃𝑥𝜓)    &   ((𝜑𝜓) → (𝜒𝜃))       (𝜑 → (∀𝑥𝜒𝜃))
 
3-Apr-2026bj-spimenfa 37061 An existential generalization result: if 𝜑 holds and implies 𝜓 for at least one value of 𝑥, and if furthermore 𝑥 is -weakly nonfree in 𝜑, then 𝜓 holds for at least one value of 𝑥. (Contributed by BJ, 3-Apr-2026.) Proof should not use 19.35 1896. (Proof modification is discouraged.)
((𝜑 → ∀𝑥𝜑) → (∃𝑥(𝜑𝜓) → (𝜑 → ∃𝑥𝜓)))
 
3-Apr-2026bj-spimnfe 37060 A universal specification result: if 𝜑 is true for all values of 𝑥 and implies 𝜓 for at least one value, and if furthermore 𝑥 is -weakly nonfree in 𝜓, then 𝜓 follows. An intermediate result on the way to prove 19.36i 2265, bj-19.36im 37202, 19.36imv 1964, spimfw 1984... (Contributed by BJ, 3-Apr-2026.) Proof should not use 19.35 1896. (Proof modification is discouraged.)
((∃𝑥𝜓𝜓) → (∃𝑥(𝜑𝜓) → (∀𝑥𝜑𝜓)))
 
3-Apr-2026bj-imim11i 36956 The propositional function ((. → 𝜑) → 𝜓) is increasing. Its associated inference is wl-syls2 37976. (Contributed by BJ, 3-Apr-2026.)
(𝜑𝜓)       (((𝜑𝜒) → 𝜃) → ((𝜓𝜒) → 𝜃))
 
3-Apr-2026bj-imim11 36955 The propositional function ((. → 𝜑) → 𝜓) is increasing. (Contributed by BJ, 3-Apr-2026.)
((𝜑𝜓) → (((𝜑𝜒) → 𝜃) → ((𝜓𝜒) → 𝜃)))
 
2-Apr-2026hoicvr 47086 𝐼 is a countable set of half-open intervals that covers the whole multidimensional reals. See Definition 1135 (b) of [Fremlin1] p. 29. (Contributed by Glauco Siliprandi, 11-Oct-2020.) Avoid ax-rep 5226 and shorten proof. (Revised by GG, 2-Apr-2026.)
𝐼 = (𝑗 ∈ ℕ ↦ (𝑥𝑋 ↦ ⟨-𝑗, 𝑗⟩))    &   (𝜑𝑋 ∈ Fin)       (𝜑 → (ℝ ↑m 𝑋) ⊆ 𝑗 ∈ ℕ X𝑖𝑋 (([,) ∘ (𝐼𝑗))‘𝑖))
 
2-Apr-2026rerecrecd 43032 A number is equal to the reciprocal of its reciprocal. (Contributed by SN, 2-Apr-2026.)
(𝜑𝐴 ∈ ℝ)    &   (𝜑𝐴 ≠ 0)       (𝜑 → (1 / (1 / 𝐴)) = 𝐴)
 
2-Apr-2026sn-redividd 43027 A number divided by itself is 1. (Contributed by SN, 2-Apr-2026.)
(𝜑𝐴 ∈ ℝ)    &   (𝜑𝐴 ≠ 0)       (𝜑 → (𝐴 / 𝐴) = 1)
 
2-Apr-2026sn-rediv0d 43026 Division into zero is zero. (Contributed by SN, 2-Apr-2026.)
(𝜑𝐴 ∈ ℝ)    &   (𝜑𝐴 ≠ 0)       (𝜑 → (0 / 𝐴) = 0)
 
2-Apr-2026sn-rediv1d 43025 A number divided by 1 is itself. (Contributed by SN, 2-Apr-2026.)
(𝜑𝐴 ∈ ℝ)       (𝜑 → (𝐴 / 1) = 𝐴)
 
2-Apr-2026rediveq1d 43024 Equality in terms of unit ratio. (Contributed by SN, 2-Apr-2026.)
(𝜑𝐴 ∈ ℝ)    &   (𝜑𝐵 ∈ ℝ)    &   (𝜑𝐵 ≠ 0)       (𝜑 → ((𝐴 / 𝐵) = 1 ↔ 𝐴 = 𝐵))
 
2-Apr-2026redivne0bd 43023 The ratio of nonzero numbers is nonzero. (Contributed by SN, 2-Apr-2026.)
(𝜑𝐴 ∈ ℝ)    &   (𝜑𝐵 ∈ ℝ)    &   (𝜑𝐵 ≠ 0)       (𝜑 → (𝐴 ≠ 0 ↔ (𝐴 / 𝐵) ≠ 0))
 
2-Apr-2026redivmul2d 43019 Relationship between division and multiplication. (Contributed by SN, 2-Apr-2026.)
(𝜑𝐴 ∈ ℝ)    &   (𝜑𝐵 ∈ ℝ)    &   (𝜑𝐶 ∈ ℝ)    &   (𝜑𝐶 ≠ 0)       (𝜑 → ((𝐴 / 𝐶) = 𝐵𝐴 = (𝐶 · 𝐵)))
 
2-Apr-2026padct 32870 Index a countable set with integers and pad with 𝑍. (Contributed by Thierry Arnoux, 1-Jun-2020.) Avoid ax-rep 5226. (Revised by GG, 2-Apr-2026.)
((𝐴 ≼ ω ∧ 𝑍𝑉 ∧ ¬ 𝑍𝐴) → ∃𝑓(𝑓:ℕ⟶(𝐴 ∪ {𝑍}) ∧ 𝐴 ⊆ ran 𝑓 ∧ Fun (𝑓𝐴)))
 
2-Apr-2026istrkg2ld 28606 Property of fulfilling the lower dimension 2 axiom. (Contributed by Thierry Arnoux, 20-Nov-2019.) Avoid ax-rep 5226. (Revised by GG, 2-Apr-2026.)
𝑃 = (Base‘𝐺)    &    = (dist‘𝐺)    &   𝐼 = (Itv‘𝐺)       (𝐺𝑉 → (𝐺DimTarskiG≥2 ↔ ∃𝑥𝑃𝑦𝑃𝑧𝑃 ¬ (𝑧 ∈ (𝑥𝐼𝑦) ∨ 𝑥 ∈ (𝑧𝐼𝑦) ∨ 𝑦 ∈ (𝑥𝐼𝑧))))
 
2-Apr-2026smndex1igid 18923 The composition of the modulo function 𝐼 and a constant function (𝐺𝐾) results in (𝐺𝐾) itself. (Contributed by AV, 14-Feb-2024.) Avoid ax-rep 5226. (Revised by GG, 2-Apr-2026.)
𝑀 = (EndoFMnd‘ℕ0)    &   𝑁 ∈ ℕ    &   𝐼 = (𝑥 ∈ ℕ0 ↦ (𝑥 mod 𝑁))    &   𝐺 = (𝑛 ∈ (0..^𝑁) ↦ (𝑥 ∈ ℕ0𝑛))       (𝐾 ∈ (0..^𝑁) → (𝐼 ∘ (𝐺𝐾)) = (𝐺𝐾))
 
2-Apr-2026smndex1gid 18921 The composition of a constant function (𝐺𝐾) with another endofunction on 0 results in (𝐺𝐾) itself. (Contributed by AV, 14-Feb-2024.) Avoid ax-rep 5226. (Revised by GG, 2-Apr-2026.)
𝑀 = (EndoFMnd‘ℕ0)    &   𝑁 ∈ ℕ    &   𝐼 = (𝑥 ∈ ℕ0 ↦ (𝑥 mod 𝑁))    &   𝐺 = (𝑛 ∈ (0..^𝑁) ↦ (𝑥 ∈ ℕ0𝑛))       ((𝐹 ∈ (Base‘𝑀) ∧ 𝐾 ∈ (0..^𝑁)) → ((𝐺𝐾) ∘ 𝐹) = (𝐺𝐾))
 
2-Apr-2026smndex1gbas 18919 The constant functions (𝐺𝐾) are endofunctions on 0. (Contributed by AV, 12-Feb-2024.) Avoid ax-rep 5226 and shorten proof. (Revised by GG, 2-Apr-2026.)
𝑀 = (EndoFMnd‘ℕ0)    &   𝑁 ∈ ℕ    &   𝐼 = (𝑥 ∈ ℕ0 ↦ (𝑥 mod 𝑁))    &   𝐺 = (𝑛 ∈ (0..^𝑁) ↦ (𝑥 ∈ ℕ0𝑛))       (𝐾 ∈ (0..^𝑁) → (𝐺𝐾) ∈ (Base‘𝑀))
 
1-Apr-2026nowisdomv 30622 One's wisdom on matters of the universe can be refuted on April Fool's day. (Contributed by Prof. Loof Lirpa, 1-Apr-2026.) (New usage is discouraged.)
¬ 𝑊⟨“ I 5”⟩dom V
 
28-Mar-2026copsex2gd 37594 Implicit substitution inference for ordered pairs. (Contributed by NM, 28-May-1995.) Use a similar proof to copsex4g 5463 to reduce axiom usage. (Revised by SN, 1-Sep-2024.) Adapt copsex2g 5461 $p to deduction form. (Revised by BJ, 28-Mar-2026.) Do not use copsex2g 5461. (Proof modification is discouraged.)
((𝜑 ∧ (𝑥 = 𝐴𝑦 = 𝐵)) → (𝜓𝜒))       ((𝜑 ∧ (𝐴𝑉𝐵𝑊)) → (∃𝑥𝑦(⟨𝐴, 𝐵⟩ = ⟨𝑥, 𝑦⟩ ∧ 𝜓) ↔ 𝜒))
 
28-Mar-2026cgsex2gd 37593 Implicit substitution inference for general classes. (Contributed by NM, 26-Jul-1995.) Adapt cgsex2g 3498 to deduction form. (Revised by BJ, 28-Mar-2026.) Do not use cgsex2g 3498. (Proof modification is discouraged.)
((𝜑 ∧ (𝑥 = 𝐴𝑦 = 𝐵)) → 𝜓)    &   ((𝜑𝜓) → (𝜒𝜃))       ((𝜑 ∧ (𝐴𝑉𝐵𝑊)) → (∃𝑥𝑦(𝜓𝜒) ↔ 𝜃))
 
28-Mar-2026bj-alnnf2 37177 If a proposition holds, then it holds for all values of a given variable if and only if it does not depend on that variable. (Contributed by BJ, 28-Mar-2026.)
(𝜑 → (∀𝑥𝜑 ↔ Ⅎ'𝑥𝜑))
 
28-Mar-2026bj-alnnf 37176 In deduction-style proofs, it is equivalent to assert that the context holds for all values of a variable, or that is does not depend on that variable. (Contributed by BJ, 28-Mar-2026.)
((𝜑 → ∀𝑥𝜑) ↔ (𝜑 → Ⅎ'𝑥𝜑))
 
28-Mar-2026bj-alsyl 37028 Syllogism under the universal quantifier, in the curried form appearing as Theorem *10.3 of [WhiteheadRussell] p. 145. See alsyl 1912 for the uncurried form. (Contributed by BJ, 28-Mar-2026.)
(∀𝑥(𝜑𝜓) → (∀𝑥(𝜓𝜒) → ∀𝑥(𝜑𝜒)))
 
27-Mar-2026axnulALT2 35341 Alternate proof of axnul 5254, proved from propositional calculus, ax-gen 1814, ax-4 1828, ax-6 1986, and ax-rep 5226. (Proof modification is discouraged.) (New usage is discouraged.) (Contributed by BTernaryTau, 27-Mar-2026.)
𝑥𝑦 ¬ 𝑦𝑥
 
26-Mar-2026axprALT2 35369 Alternate proof of axpr 5383, proved from predicate calculus, ax-rep 5226, and ax-inf2 9593. (Contributed by BTernaryTau, 26-Mar-2026.) (Proof modification is discouraged.) (New usage is discouraged.)
𝑧𝑤((𝑤 = 𝑥𝑤 = 𝑦) → 𝑤𝑧)
 
21-Mar-2026bj-nnfbd0 37187 If two formulas are equivalent, then nonfreeness of a variable in one of them is equivalent to nonfreeness in the other, deduction form. The antecedent of the conclusion is in the "strong necessity" modality of modal logic (see also bj-nnftht 37182) in order not to require sp 2217 (modal T). See bj-nnfbi 37186. (Contributed by BJ, 21-Mar-2026.)
(𝜑 → (𝜓𝜒))       ((𝜑 ∧ ∀𝑥𝜑) → (Ⅎ'𝑥𝜓 ↔ Ⅎ'𝑥𝜒))
 
20-Mar-2026bj-bisimpr 36960 Implication from equivalence with a conjunct. Its associated inference is simprbi 501. (Contributed by BJ, 20-Mar-2026.)
((𝜑 ↔ (𝜓𝜒)) → (𝜑𝜒))
 
20-Mar-2026bj-bisimpl 36959 Implication from equivalence with a conjunct. Its associated inference is simplbi 500. (Contributed by BJ, 20-Mar-2026.)
((𝜑 ↔ (𝜓𝜒)) → (𝜑𝜓))
 
19-Mar-2026bj-almpig 37027 A partially quantified form of mpi 20 similar to bj-almpi 37026. (Contributed by BJ, 19-Mar-2026.)
(𝜑 → (𝜒𝜓))    &   𝑥𝜒       𝑥(𝜑𝜓)
 
19-Mar-2026bj-almpi 37026 A quantified form of mpi 20. See also barbara 2688, bj-ala1i 37025, bj-almp 37018. (Contributed by BJ, 19-Mar-2026.)
𝑥(𝜑 → (𝜒𝜓))    &   𝑥𝜒       𝑥(𝜑𝜓)
 
19-Mar-2026bj-alimii 37024 Inference associated with alimi 1830. Double inference associated with alim 1829. The usual proof of an associated inference (here from alimi 1830 and ax-mp 5) has the same size and same number of steps. (Contributed by BJ, 19-Mar-2026.)
(𝜓𝜑)    &   𝑥𝜓       𝑥𝜑
 
19-Mar-2026bj-almp 37018 A quantified form of ax-mp 5. See also barbara 2688, bj-ala1i 37025, bj-almpi 37026. (Contributed by BJ, 19-Mar-2026.)
𝑥(𝜓𝜑)    &   𝑥𝜓       𝑥𝜑
 
17-Mar-2026bj-evalf 37528 The evaluation at a class is a function from the universal class into the universal class. (Contributed by BJ, 17-Mar-2026.)
Slot 𝐴:V⟶V
 
16-Mar-2026sin5tlem1 47431 Lemma 1 for quintupled angle sine calculation, expanding triple-angle sine times double-angle cosine. (Contributed by Ender Ting, 16-Mar-2026.)
(𝑁 ∈ ℂ → (((3 · 𝑁) − (4 · (𝑁↑3))) · (1 − (2 · (𝑁↑2)))) = (((8 · (𝑁↑5)) − (10 · (𝑁↑3))) + (3 · 𝑁)))
 
16-Mar-2026cos3t 47430 Triple-angle formula for cosine, in pure cosine form. (Contributed by Ender Ting, 16-Mar-2026.)
(𝐴 ∈ ℂ → (cos‘(3 · 𝐴)) = ((4 · ((cos‘𝐴)↑3)) − (3 · (cos‘𝐴))))
 
16-Mar-2026sin3t 47429 Triple-angle formula for sine, in pure sine form. (Contributed by Ender Ting, 16-Mar-2026.)
(𝐴 ∈ ℂ → (sin‘(3 · 𝐴)) = ((3 · (sin‘𝐴)) − (4 · ((sin‘𝐴)↑3))))
 
16-Mar-2026esplyfvaln 33832 The last elementary symmetric polynomial is the product of all variables. (Contributed by Thierry Arnoux, 16-Mar-2026.)
𝑊 = (𝐼 mPoly 𝑅)    &   𝑉 = (𝐼 mVar 𝑅)    &   𝐸 = (𝐼eSymPoly𝑅)    &   (𝜑𝐼 ∈ Fin)    &   (𝜑𝑅 ∈ CRing)    &   𝑁 = (♯‘𝐼)    &   𝑀 = (mulGrp‘𝑊)       (𝜑 → (𝐸𝑁) = (𝑀 Σg 𝑉))
 
16-Mar-2026esplyfval1 33831 The first elementary symmetric polynomial is the sum of all variables. (Contributed by Thierry Arnoux, 16-Mar-2026.)
𝑊 = (𝐼 mPoly 𝑅)    &   𝑉 = (𝐼 mVar 𝑅)    &   𝐸 = (𝐼eSymPoly𝑅)    &   (𝜑𝐼 ∈ Fin)    &   (𝜑𝑅 ∈ Ring)       (𝜑 → (𝐸‘1) = (𝑊 Σg 𝑉))
 
16-Mar-2026mplmonprod 33812 Finite product of monomials. Here the function 𝐺 maps a bag of variables to the corresponding monomial. (Contributed by Thierry Arnoux, 16-Mar-2026.)
𝑃 = (𝐼 mPoly 𝑅)    &   𝐵 = (Base‘𝑃)    &   (𝜑𝑅 ∈ CRing)    &   (𝜑𝐼𝑉)    &   𝐷 = { ∈ (ℕ0m 𝐼) ∣ finSupp 0}    &   (𝜑𝐴 ∈ Fin)    &   (𝜑𝐹:𝐴𝐷)    &    1 = (1r𝑅)    &    0 = (0g𝑅)    &   𝑀 = (mulGrp‘𝑃)    &   𝐺 = (𝑦𝐷 ↦ (𝑧𝐷 ↦ if(𝑧 = 𝑦, 1 , 0 )))       (𝜑 → (𝑀 Σg (𝐺𝐹)) = (𝐺‘(𝑖𝐼 ↦ (ℂfld Σg (𝑥𝐴 ↦ ((𝐹𝑥)‘𝑖))))))
 
16-Mar-2026mplgsum 33811 Finite commutative sums of polynomials are taken componentwise. (Contributed by Thierry Arnoux, 16-Mar-2026.)
𝑃 = (𝐼 mPoly 𝑅)    &   𝐵 = (Base‘𝑃)    &   (𝜑𝑅 ∈ Ring)    &   (𝜑𝐼𝑉)    &   𝐷 = { ∈ (ℕ0m 𝐼) ∣ finSupp 0}    &   (𝜑𝐴 ∈ Fin)    &   (𝜑𝐹:𝐴𝐵)       (𝜑 → (𝑃 Σg 𝐹) = (𝑦𝐷 ↦ (𝑅 Σg (𝑘𝐴 ↦ ((𝐹𝑘)‘𝑦)))))
 
16-Mar-2026psrmonprod 33810 Finite product of bags of variables in a power series. Here the function 𝐺 maps a bag of variables to the corresponding monomial. (Contributed by Thierry Arnoux, 16-Mar-2026.)
𝑆 = (𝐼 mPwSer 𝑅)    &   𝐵 = (Base‘𝑆)    &   (𝜑𝑅 ∈ CRing)    &   (𝜑𝐼𝑉)    &   𝐷 = { ∈ (ℕ0m 𝐼) ∣ finSupp 0}    &   (𝜑𝐴 ∈ Fin)    &   (𝜑𝐹:𝐴𝐷)    &    1 = (1r𝑅)    &    0 = (0g𝑅)    &   𝑀 = (mulGrp‘𝑆)    &   𝐺 = (𝑦𝐷 ↦ (𝑧𝐷 ↦ if(𝑧 = 𝑦, 1 , 0 )))       (𝜑 → (𝑀 Σg (𝐺𝐹)) = (𝐺‘(𝑖𝐼 ↦ (ℂfld Σg (𝑥𝐴 ↦ ((𝐹𝑥)‘𝑖))))))
 
16-Mar-2026psrmonmul2 33809 The product of two power series monomials adds the exponent vectors together. Here, the function 𝐺 is a monomial builder, which maps a bag of variables with the monic monomial with only those variables. (Contributed by Thierry Arnoux, 16-Mar-2026.)
𝑆 = (𝐼 mPwSer 𝑅)    &   𝐵 = (Base‘𝑆)    &    0 = (0g𝑅)    &    1 = (1r𝑅)    &   𝐷 = { ∈ (ℕ0m 𝐼) ∣ finSupp 0}    &   (𝜑𝐼𝑊)    &   (𝜑𝑅 ∈ Ring)    &   (𝜑𝑋𝐷)    &    · = (.r𝑆)    &   (𝜑𝑌𝐷)    &   𝐺 = (𝑦𝐷 ↦ (𝑧𝐷 ↦ if(𝑧 = 𝑦, 1 , 0 )))       (𝜑 → ((𝐺𝑋) · (𝐺𝑌)) = (𝐺‘(𝑋f + 𝑌)))
 
16-Mar-2026psrmonmul 33808 The product of two power series monomials adds the exponent vectors together. For example, the product of (𝑥↑2)(𝑦↑2) with (𝑦↑1)(𝑧↑3) is (𝑥↑2)(𝑦↑3)(𝑧↑3), where the exponent vectors ⟨2, 2, 0⟩ and ⟨0, 1, 3⟩ are added to give ⟨2, 3, 3⟩. (Contributed by Thierry Arnoux, 16-Mar-2026.)
𝑆 = (𝐼 mPwSer 𝑅)    &   𝐵 = (Base‘𝑆)    &    0 = (0g𝑅)    &    1 = (1r𝑅)    &   𝐷 = { ∈ (ℕ0m 𝐼) ∣ finSupp 0}    &   (𝜑𝐼𝑊)    &   (𝜑𝑅 ∈ Ring)    &   (𝜑𝑋𝐷)    &    · = (.r𝑆)    &   (𝜑𝑌𝐷)       (𝜑 → ((𝑦𝐷 ↦ if(𝑦 = 𝑋, 1 , 0 )) · (𝑦𝐷 ↦ if(𝑦 = 𝑌, 1 , 0 ))) = (𝑦𝐷 ↦ if(𝑦 = (𝑋f + 𝑌), 1 , 0 )))
 
16-Mar-2026psrmon 33807 A monomial is a power series. (Contributed by Thierry Arnoux, 16-Mar-2026.)
𝑆 = (𝐼 mPwSer 𝑅)    &   𝐵 = (Base‘𝑆)    &    0 = (0g𝑅)    &    1 = (1r𝑅)    &   𝐷 = { ∈ (ℕ0m 𝐼) ∣ finSupp 0}    &   (𝜑𝐼𝑊)    &   (𝜑𝑅 ∈ Ring)    &   (𝜑𝑋𝐷)       (𝜑 → (𝑦𝐷 ↦ if(𝑦 = 𝑋, 1 , 0 )) ∈ 𝐵)
 
16-Mar-2026psrgsum 33806 Finite commutative sums of power series are taken componentwise. (Contributed by Thierry Arnoux, 16-Mar-2026.)
𝑆 = (𝐼 mPwSer 𝑅)    &   𝐵 = (Base‘𝑆)    &   (𝜑𝑅 ∈ Ring)    &   (𝜑𝐼𝑉)    &   𝐷 = { ∈ (ℕ0m 𝐼) ∣ finSupp 0}    &   (𝜑𝐴 ∈ Fin)    &   (𝜑𝐹:𝐴𝐵)       (𝜑 → (𝑆 Σg 𝐹) = (𝑦𝐷 ↦ (𝑅 Σg (𝑘𝐴 ↦ ((𝐹𝑘)‘𝑦)))))
 
16-Mar-2026suppgsumssiun 33213 The support of a function defined as a group sum is a subset of the indexed union of the supports. (Contributed by Thierry Arnoux, 16-Mar-2026.)
𝑍 = (0g𝑀)    &   (𝜑𝑀 ∈ Mnd)    &   (𝜑𝐵𝑊)    &   (𝜑𝐴𝑉)    &   (((𝜑𝑥𝐴) ∧ 𝑦𝐵) → 𝐶𝑋)       (𝜑 → ((𝑥𝐴 ↦ (𝑀 Σg (𝑦𝐵𝐶))) supp 𝑍) ⊆ 𝑦𝐵 ((𝑥𝐴𝐶) supp 𝑍))
 
15-Mar-2026goldrasin 47440 Alternative trigonometric formula for the golden ratio. (Contributed by Ender Ting, 15-Mar-2026.)
𝐹 = (2 · (cos‘(π / 5)))       𝐹 = (2 · (sin‘(π · (3 / 10))))
 
15-Mar-2026goldrarr 47439 The golden ratio is a real value. (Contributed by Ender Ting, 15-Mar-2026.)
𝐹 = (2 · (cos‘(π / 5)))       𝐹 ∈ ℝ
 
14-Mar-2026bj-axreprepsep 37524 Strong axiom of replacement (universal closure of ax-rep 5226) from the axioms of separation and replacement as written in the theorem's hypotheses.

The statement does not require a nonempty universe; most of the proof does not either, except for the use of 19.8a 2215, which could be removed by reworking the proof, since it is applied in a subexpression bound by the variable it introduces. Proof modifications should not introduce steps relying on a nonempty universe, like alrimiv 1946. (Contributed by BJ, 14-Mar-2026.) (Proof modification is discouraged.)

𝑥𝑠𝑦(𝑦𝑠 ↔ (𝑦𝑥 ∧ ∃𝑧𝜑))    &   𝑠(∀𝑦𝑠 ∃!𝑧𝜑 → ∃𝑡𝑧(𝑧𝑡 ↔ ∃𝑦𝑠 𝜑))       𝑥(∀𝑦𝑥 ∃*𝑧𝜑 → ∃𝑡𝑧(𝑧𝑡 ↔ ∃𝑦𝑥 𝜑))
 
14-Mar-2026bj-axseprep 37523 Axiom of separation (universal closure of ax-sep 5245) from a weak form of the axiom of replacement requiring that the functional relation in it be a (total) function and the weak emptyset axiom (existence of an empty set provided existence of a set), as written in the theorem's hypotheses.

This result shows that the weak emptyset axiom is not only the result of a cheap way to avoid an axiom redundancy (in this case, the existence axiom extru 1994) by adding it as an antecedent, but also permits to prove nontrivial results that hold in nonnecessarily nonempty universes.

This proof is by cases so is not intuitionistic. The statement does not require a nonempty universe; most of the proof does not either, and the parts that do (e.g., near sb8ef 2385 and sbequ12r 2286 and eueq2 3672) could be reworked to avoid it. Proof modifications should not introduce steps relying on a nonempty universe, like alrimiv 1946. (Contributed by BJ, 14-Mar-2026.) (Proof modification is discouraged.)

(∃𝑥⊤ → ∃𝑦𝑧𝑦 ⊥)    &   𝑥(∀𝑧𝑥 ∃!𝑡𝜓 → ∃𝑦𝑡(𝑡𝑦 ↔ ∃𝑧𝑥 𝜓))    &   (𝜓 ↔ ((𝜑𝑡 = 𝑧) ∨ (¬ 𝜑𝑡 = 𝑎)))       𝑥𝑦𝑧(𝑧𝑦 ↔ (𝑧𝑥𝜑))
 
14-Mar-2026bj-rep 37522 Version of the axiom of replacement requiring the functional relation in the axiom to be a (total) function from ax-rep 5226 (in the form of axrep6 5235). (Contributed by BJ, 14-Mar-2026.) The proof proves the statement without the DV condition on 𝑥, 𝜑, but the DV condition is added to this statement to show that this weaker version is sufficient. (Proof modification is discouraged.) (New usage is discouraged.)
𝑥(∀𝑦𝑥 ∃!𝑧𝜑 → ∃𝑡𝑧(𝑧𝑡 ↔ ∃𝑦𝑥 𝜑))
 
14-Mar-2026bj-cbvaew 37080 Exixtentially quantifying over a non-occurring variable is independent from the variable, under a weaker condition than in bj-cbvexvv 37076. (Contributed by BJ, 14-Mar-2026.) (Proof modification is discouraged.)
((∀𝑥𝜑 → ∀𝑦⊥) → (∃𝑦𝜓 → ∃𝑥𝜓))
 
14-Mar-2026bj-cbveaw 37079 Universally quantifying over a non-occurring variable is independent from the variable, under a weaker condition than in bj-cbvalvv 37075. (Contributed by BJ, 14-Mar-2026.) (Proof modification is discouraged.)
((∃𝑥⊤ → ∃𝑦𝜑) → (∀𝑦𝜓 → ∀𝑥𝜓))
 
14-Mar-2026bj-cbvew 37078 Existentially quantifying over a non-occurring variable is independent from the variable, under a weaker condition than in bj-cbvexvv 37076. If is substituted for 𝜑, then the statement reads: "existentially quantifying over a non-occurring variable is independent from the variable as soon as that result is true for the True truth constant. The label "cbvew" means "'change bound variable' theorem, 'exists' quantifier, weak version". (Contributed by BJ, 14-Mar-2026.) This proof is intuitionistic. (Proof modification is discouraged.)
((∃𝑥⊤ → ∃𝑦𝜑) → (∃𝑥𝜓 → ∃𝑦𝜓))
 
14-Mar-2026bj-cbvaw 37077 Universally quantifying over a non-occurring variable is independent from the variable, under a weaker condition than in bj-cbvalvv 37075. If is substituted for 𝜑, then the statement reads: "universally quantifying over a non-occurring variable is independent from the variable as soon as that result is true for the False truth constant". The label "cbvaw" means "'change bound variable' theorem, 'all' quantifier, weak version". (Contributed by BJ, 14-Mar-2026.) This proof is not intuitionistic (it uses ja 187); an intuitionistically valid statement is obtained by expressing the antecedent as a disjunction (classically equivalent through imor 864). (Proof modification is discouraged.)
((∀𝑥𝜑 → ∀𝑦⊥) → (∀𝑥𝜓 → ∀𝑦𝜓))
 
14-Mar-2026bj-exextruan 37074 An equivalent expression for existential quantification over a non-occurring variable proved over ax-1 6-- ax-5 1929. The forward implication can be seen as a strengthening of ax-5 1929 (a conjunct is added to the consequent of the implication). The reverse implication can be strengthened when ax-6 1986 is posited (which implies that models are non-empty), see 19.8v 2002. See bj-alextruim 37073 for a dual statement.

An approximate meaning is: the existential quantification of a proposition over a non-occurring variable holds if and only if the proposition holds and the universe is nonempty. (Contributed by BJ, 14-Mar-2026.) (Proof modification is discouraged.)

(∃𝑥𝜑 ↔ (∃𝑥⊤ ∧ 𝜑))
 
14-Mar-2026bj-alextruim 37073 An equivalent expression for universal quantification over a non-occurring variable proved over ax-1 6-- ax-5 1929. The forward implication can be strengthened when ax-6 1986 is posited (which implies that models are non-empty), see spvw 2000. The reverse implication can be seen as a strengthening of ax-5 1929 (since the antecedent of the implication is weakened). See bj-exextruan 37074 for a dual statement.

An approximate meaning is: the universal quantification of a proposition over a non-occurring variable holds if and only if the proposition holds in nonempty universes. (Contributed by BJ, 14-Mar-2026.) (Proof modification is discouraged.)

(∀𝑥𝜑 ↔ (∃𝑥⊤ → 𝜑))
 
14-Mar-2026bj-exexalal 37013 A lemma for changing bound variables. Only the forward implication is intuitionistic. (Contributed by BJ, 14-Mar-2026.)
((∃𝑥𝜑 → ∃𝑦𝜓) ↔ (∀𝑦 ¬ 𝜓 → ∀𝑥 ¬ 𝜑))
 
11-Mar-2026axprglem 5392 Lemma for axprg 5393. (Contributed by GG, 11-Mar-2026.)
(𝑥 = 𝐴 → ∃𝑧𝑤((𝑤 = 𝐴𝑤 = 𝐵) → 𝑤𝑧))
 
8-Mar-2026bj-axnul 37521 Over the base theory ax-1 6-- ax-5 1929, the axiom of separation implies the weak emptyset axiom.

By "weak emptyset axiom", we mean the axiom asserting existence of an empty set (which can be called "the" empty set when the axiom of extensionality ax-ext 2733 is posited) provided existence of a set (the True truth constant existentially quantified over a fresh variable, extru 1994). This is the conclusion of bj-axnul 37521.

Note that the weak emptyset axiom implies (∃𝑥⊤ → ∃𝑦⊤) without DV conditions hence also the same statement as the weak emptyset axiom without DV conditions on 𝑥, but only on 𝑦, 𝑧.

By "axiom of separation", we mean the universal closure of ax-sep 5245, simulated here by its instance with substituted for 𝜑 (and with the variable used to assert existence in the weak emptyset axiom substituted for the containing set) as the hypothesis of bj-axnul 37521.

In particular, the axiom of existence extru 1994 and the axiom of separation together imply the emptyset axiom (and conversely, the emptyset axiom implies the axiom of existence).

Note: this theorem does not require a disjointness condition on 𝑦, 𝑧, although both axioms should be stated with all variables disjoint.

This proof only uses an instance of the axiom of separation with a bounded formula, so is valid in a constructive setting (see the CZF section in the "Intuitionistic Logic Explorer" iset.mm). (Contributed by BJ, 8-Mar-2026.) (Proof modification is discouraged.)

𝑥𝑦𝑧(𝑧𝑦 ↔ (𝑧𝑥 ∧ ⊥))       (∃𝑥⊤ → ∃𝑦𝑧𝑦 ⊥)
 
8-Mar-2026bj-cbvexvv 37076 Existentially quantifying over a non-occurring variable is independent of that variable, over ax-1 6-- ax-5 1929 and the existence axiom extru 1994. See bj-cbvew 37078 for a strengthening. (Contributed by BJ, 8-Mar-2026.) (Proof modification is discouraged.)
(∃𝑥𝜑 → (∃𝑦𝜓 → ∃𝑥𝜓))
 
8-Mar-2026bj-cbvalvv 37075 Universally quantifying over a non-occurring variable is independent of that variable, over ax-1 6-- ax-5 1929 and the existence axiom extru 1994. See bj-cbvaw 37077 for a strengthening. (Contributed by BJ, 8-Mar-2026.) (Proof modification is discouraged.)
(∃𝑥𝜑 → (∀𝑥𝜓 → ∀𝑦𝜓))
 
8-Mar-2026bj-spvew 37072 Version of 19.8v 2002 and 19.9v 2003 proved from ax-1 6-- ax-5 1929. The antecedent can for instance be proved with the existence axiom extru 1994. (Contributed by BJ, 8-Mar-2026.) This could also be proved from bj-spvw 37071 using duality, but that proof would not be intuitionistic, contrary to the present one. (Proof modification is discouraged.)
(∃𝑥𝜑 → (𝜓 ↔ ∃𝑥𝜓))
 
8-Mar-2026bj-spvw 37071 Version of spvw 2000 and 19.3v 2001 proved from ax-1 6-- ax-5 1929. The antecedent can for instance be proved with the existence axiom extru 1994. (Contributed by BJ, 8-Mar-2026.) (Proof modification is discouraged.)
(∃𝑥𝜑 → (𝜓 ↔ ∀𝑥𝜓))
 
8-Mar-2026bj-axdd2ALT 37056 Alternate proof of bj-axdd2 36999 (this should replace bj-axdd2 36999 when bj-exalimi 37052 is moved to the main section). (Contributed by BJ, 8-Mar-2026.) (Proof modification is discouraged.) (New usage is discouraged.)
(∃𝑥𝜑 → (∀𝑥𝜓 → ∃𝑥𝜓))
 
6-Mar-2026opex 5430 An ordered pair of classes is a set. Exercise 7 of [TakeutiZaring] p. 16. (Contributed by NM, 18-Aug-1993.) (Revised by Mario Carneiro, 26-Apr-2015.) Avoid ax-nul 5255. (Revised by GG, 6-Mar-2026.)
𝐴, 𝐵⟩ ∈ V
 
6-Mar-2026snexg 5396 A singleton built on a set is a set. Special case of snex 5395 which is intuitionistically valid. (Contributed by NM, 7-Aug-1994.) (Revised by Mario Carneiro, 19-May-2013.) Extract from snex 5395 and shorten proof. (Revised by BJ, 15-Jan-2025.) (Proof shortened by GG, 6-Mar-2026.)
(𝐴𝑉 → {𝐴} ∈ V)
 
6-Mar-2026snex 5395 A singleton is a set. Theorem 7.12 of [Quine] p. 51, proved using Extensionality, Separation and Pairing. See also snexALT 5339. (Contributed by NM, 7-Aug-1994.) (Revised by Mario Carneiro, 19-May-2013.) Avoid ax-nul 5255 and shorten proof. (Revised by GG, 6-Mar-2026.)
{𝐴} ∈ V
 
6-Mar-2026prex 5394 The Axiom of Pairing using class variables. Theorem 7.13 of [Quine] p. 51. By virtue of its definition, an unordered pair remains a set (even though no longer a pair) even when its components are proper classes (see prprc 4725), so we can dispense with hypotheses requiring them to be sets. (Contributed by NM, 15-Jul-1993.) Avoid ax-nul 5255 and shorten proof. (Revised by GG, 6-Mar-2026.)
{𝐴, 𝐵} ∈ V
 
6-Mar-2026axprg 5393 Derive The Axiom of Pairing with class variables. (Contributed by GG, 6-Mar-2026.)
𝑧𝑤((𝑤 = 𝐴𝑤 = 𝐵) → 𝑤𝑧)
 
5-Mar-2026mh-setindnd 36861 A version of mh-setind 36860 with no distinct variable conditions. (Contributed by Matthew House, 5-Mar-2026.) (New usage is discouraged.)
(∀𝑦(∀𝑥(𝑥𝑦𝜑) → ∀𝑥(𝑥 = 𝑦 → ∀𝑦𝜑)) → 𝜑)
 
4-Mar-2026regsfromunir1 36864 Derivation of ax-regs 35386 from unir1 9768. (Contributed by Matthew House, 4-Mar-2026.)
(𝑅1 “ On) = V       (∃𝑥𝜑 → ∃𝑦(∀𝑥(𝑥 = 𝑦𝜑) ∧ ∀𝑧(𝑧𝑦 → ¬ ∀𝑥(𝑥 = 𝑧𝜑))))
 
4-Mar-2026regsfromsetind 36863 Derivation of ax-regs 35386 from mh-setind 36860. (Contributed by Matthew House, 4-Mar-2026.)
(∀𝑦(∀𝑥(𝑥𝑦 → ¬ 𝜑) → ∀𝑥(𝑥 = 𝑦 → ¬ 𝜑)) → ¬ 𝜑)       (∃𝑥𝜑 → ∃𝑦(∀𝑥(𝑥 = 𝑦𝜑) ∧ ∀𝑧(𝑧𝑦 → ¬ ∀𝑥(𝑥 = 𝑧𝜑))))
 
4-Mar-2026regsfromregtco 36862 Derivation of ax-regs 35386 from ax-reg 9537 + ax-tco 36796. (Contributed by Matthew House, 4-Mar-2026.)
(∃𝑦 𝑦𝑤 → ∃𝑦(𝑦𝑤 ∧ ∀𝑧(𝑧𝑦 → ¬ 𝑧𝑤)))    &   𝑢(𝑣𝑢 ∧ ∀𝑡(𝑡𝑢 → ∀𝑠(𝑠𝑡𝑠𝑢)))       (∃𝑥𝜑 → ∃𝑦(∀𝑥(𝑥 = 𝑦𝜑) ∧ ∀𝑧(𝑧𝑦 → ¬ ∀𝑥(𝑥 = 𝑧𝜑))))
 
4-Mar-2026mh-setind 36860 Principle of set induction setind 9699, written with primitive symbols. (Contributed by Matthew House, 4-Mar-2026.)
(∀𝑦(∀𝑥(𝑥𝑦𝜑) → ∀𝑥(𝑥 = 𝑦𝜑)) → 𝜑)
 
27-Feb-2026eln0s2 28427 A non-negative surreal integer is a surreal ordinal with a finite birthday. (Contributed by Scott Fenton, 27-Feb-2026.)
(𝐴 ∈ ℕ0s ↔ (𝐴 ∈ Ons ∧ ( bday 𝐴) ∈ ω))
 
27-Feb-2026peano2n0sd 28401 Peano postulate: the successor of a non-negative surreal integer is a non-negative surreal integer. Deduction form. (Contributed by Scott Fenton, 27-Feb-2026.)
(𝜑𝐴 ∈ ℕ0s)       (𝜑 → (𝐴 +s 1s ) ∈ ℕ0s)
 
27-Feb-2026divs1d 28275 A surreal divided by one is itself. Deduction version. (Contributed by Scott Fenton, 27-Feb-2026.)
(𝜑𝐴 No )       (𝜑 → (𝐴 /su 1s ) = 𝐴)
 
27-Feb-2026rightnod 27952 An element of a right set is a surreal. (Contributed by Scott Fenton, 27-Feb-2026.)
(𝜑𝐴 ∈ ( R ‘𝐵))       (𝜑𝐴 No )
 
27-Feb-2026rightoldd 27951 An element of a right set is an element of the old set. (Contributed by Scott Fenton, 27-Feb-2026.)
(𝜑𝐴 ∈ ( R ‘𝐵))       (𝜑𝐴 ∈ ( O ‘( bday 𝐵)))
 
27-Feb-2026leftnod 27950 An element of a left set is a surreal. (Contributed by Scott Fenton, 27-Feb-2026.)
(𝜑𝐴 ∈ ( L ‘𝐵))       (𝜑𝐴 No )
 
27-Feb-2026leftoldd 27949 An element of a left set is an element of the old set. (Contributed by Scott Fenton, 27-Feb-2026.)
(𝜑𝐴 ∈ ( L ‘𝐵))       (𝜑𝐴 ∈ ( O ‘( bday 𝐵)))
 
27-Feb-2026rightno 27948 An element of a right set is a surreal. (Contributed by Scott Fenton, 27-Feb-2026.)
(𝐴 ∈ ( R ‘𝐵) → 𝐴 No )
 
27-Feb-2026leftno 27947 An element of a left set is a surreal. (Contributed by Scott Fenton, 27-Feb-2026.)
(𝐴 ∈ ( L ‘𝐵) → 𝐴 No )
 
27-Feb-2026rightold 27946 An element of a right set is an element of the old set. (Contributed by Scott Fenton, 27-Feb-2026.)
(𝐴 ∈ ( R ‘𝐵) → 𝐴 ∈ ( O ‘( bday 𝐵)))
 
27-Feb-2026leftold 27945 An element of a left set is an element of the old set. (Contributed by Scott Fenton, 27-Feb-2026.)
(𝐴 ∈ ( L ‘𝐵) → 𝐴 ∈ ( O ‘( bday 𝐵)))
 
27-Feb-2026oldmaded 27939 An element of an old set is an element of a made set. (Contributed by Scott Fenton, 27-Feb-2026.)
(𝜑𝐴 ∈ ( O ‘𝐵))       (𝜑𝐴 ∈ ( M ‘𝐵))
 
27-Feb-2026oldmade 27938 An element of an old set is an element of a made set. (Contributed by Scott Fenton, 27-Feb-2026.)
(𝐴 ∈ ( O ‘𝐵) → 𝐴 ∈ ( M ‘𝐵))
 
27-Feb-2026newnod 27918 An element of a new set is a surreal. (Contributed by Scott Fenton, 27-Feb-2026.)
(𝜑𝐴 ∈ ( N ‘𝐵))       (𝜑𝐴 No )
 
27-Feb-2026oldnod 27917 An element of an old set is a surreal. (Contributed by Scott Fenton, 27-Feb-2026.)
(𝜑𝐴 ∈ ( O ‘𝐵))       (𝜑𝐴 No )
 
27-Feb-2026madenod 27916 An element of a made set is a surreal. (Contributed by Scott Fenton, 27-Feb-2026.)
(𝜑𝐴 ∈ ( M ‘𝐵))       (𝜑𝐴 No )
 
27-Feb-2026newno 27915 An element of a new set is a surreal. (Contributed by Scott Fenton, 27-Feb-2026.)
(𝐴 ∈ ( N ‘𝐵) → 𝐴 No )
 
27-Feb-2026oldno 27914 An element of an old set is a surreal. (Contributed by Scott Fenton, 27-Feb-2026.)
(𝐴 ∈ ( O ‘𝐵) → 𝐴 No )
 
27-Feb-2026madeno 27913 An element of a made set is a surreal. (Contributed by Scott Fenton, 27-Feb-2026.)
(𝐴 ∈ ( M ‘𝐵) → 𝐴 No )
 
27-Feb-2026nulsgtsd 27848 The empty set is greater than any set of surreals. Deduction version. (Contributed by Scott Fenton, 27-Feb-2026.)
(𝜑𝐴𝑉)    &   (𝜑𝐴 No )       (𝜑𝐴 <<s ∅)
 
27-Feb-2026nulsltsd 27847 The empty set is less-than any set of surreals. Deduction version. (Contributed by Scott Fenton, 27-Feb-2026.)
(𝜑𝐴𝑉)    &   (𝜑𝐴 No )       (𝜑 → ∅ <<s 𝐴)
 
26-Feb-2026dfz12s2 28558 The set of dyadic fractions is the same as the old set of ω. (Contributed by Scott Fenton, 26-Feb-2026.)
s[1/2] = ( O ‘ω)
 
26-Feb-2026bdayfin 28557 A surreal has a finite birthday iff it is a dyadic fraction. (Contributed by Scott Fenton, 26-Feb-2026.)
(𝐴 No → (𝐴 ∈ ℤs[1/2] ↔ ( bday 𝐴) ∈ ω))
 
26-Feb-2026bdayfinlem 28556 Lemma for bdayfin 28557. Handle the non-negative case. (Contributed by Scott Fenton, 26-Feb-2026.)
((𝐴 No ∧ 0s ≤s 𝐴 ∧ ( bday 𝐴) ∈ ω) → 𝐴 ∈ ℤs[1/2])
 
26-Feb-2026bdayfinbnd 28539 Given a non-negative integer and a non-negative surreal of lesser or equal birthday, show that the surreal can be expressed as a dyadic fraction with an upper bound on the integer and exponent. This proof follows the proof from Mizar at https://mizar.uwb.edu.pl/version/current/html/surrealn.html. (Contributed by Scott Fenton, 26-Feb-2026.)
(𝜑𝑁 ∈ ℕ0s)    &   (𝜑𝑍 No )    &   (𝜑 → ( bday 𝑍) ⊆ ( bday 𝑁))    &   (𝜑 → 0s ≤s 𝑍)       (𝜑 → (𝑍 = 𝑁 ∨ ∃𝑥 ∈ ℕ0s𝑦 ∈ ℕ0s𝑝 ∈ ℕ0s (𝑍 = (𝑥 +s (𝑦 /su (2ss𝑝))) ∧ 𝑦 <s (2ss𝑝) ∧ (𝑥 +s 𝑝) <s 𝑁)))
 
26-Feb-2026bdayfinbndlem2 28538 Lemma for bdayfinbnd 28539. Conduct the induction. (Contributed by Scott Fenton, 26-Feb-2026.)
(𝑁 ∈ ℕ0s → ∀𝑧 No ((( bday 𝑧) ⊆ ( bday 𝑁) ∧ 0s ≤s 𝑧) → (𝑧 = 𝑁 ∨ ∃𝑥 ∈ ℕ0s𝑦 ∈ ℕ0s𝑝 ∈ ℕ0s (𝑧 = (𝑥 +s (𝑦 /su (2ss𝑝))) ∧ 𝑦 <s (2ss𝑝) ∧ (𝑥 +s 𝑝) <s 𝑁))))
 
26-Feb-2026bdayfinbndlem1 28537 Lemma for bdayfinbnd 28539. Show the first half of the inductive step. (Contributed by Scott Fenton, 26-Feb-2026.)
(𝜑𝑁 ∈ ℕ0s)    &   (𝜑 → ∀𝑧 No ((( bday 𝑧) ⊆ ( bday 𝑁) ∧ 0s ≤s 𝑧) → (𝑧 = 𝑁 ∨ ∃𝑥 ∈ ℕ0s𝑦 ∈ ℕ0s𝑝 ∈ ℕ0s (𝑧 = (𝑥 +s (𝑦 /su (2ss𝑝))) ∧ 𝑦 <s (2ss𝑝) ∧ (𝑥 +s 𝑝) <s 𝑁))))       (𝜑 → ∀𝑤 No ((( bday 𝑤) ⊆ ( bday ‘(𝑁 +s 1s )) ∧ 0s ≤s 𝑤) → (𝑤 = (𝑁 +s 1s ) ∨ ∃𝑎 ∈ ℕ0s𝑏 ∈ ℕ0s𝑞 ∈ ℕ0s (𝑤 = (𝑎 +s (𝑏 /su (2ss𝑞))) ∧ 𝑏 <s (2ss𝑞) ∧ (𝑎 +s 𝑞) <s (𝑁 +s 1s )))))
 
25-Feb-2026dfpeters2 39437 Alternate definition of PetErs in fully modular form.

This expands the Ers 𝑛 predicate into:

(i) a typedness module ( Rels × CoMembErs ),

(ii) an equivalence module for the coset relation ≀ (𝑟 ⋉ ( E ↾ 𝑛)) ∈ EqvRels,

(iii) the corresponding quotient-carrier (domain quotient) equation dom ≀ (...) / ≀ (...) = 𝑛.

This is the equivalence-side counterpart of the modular decomposition dfpetparts2 39435 on the partition side. (Contributed by Peter Mazsa, 25-Feb-2026.)

PetErs = ((( Rels × CoMembErs ) ∩ {⟨𝑟, 𝑛⟩ ∣ ≀ (𝑟 ⋉ ( E ↾ 𝑛)) ∈ EqvRels }) ∩ {⟨𝑟, 𝑛⟩ ∣ (dom ≀ (𝑟 ⋉ ( E ↾ 𝑛)) / ≀ (𝑟 ⋉ ( E ↾ 𝑛))) = 𝑛})
 
25-Feb-2026dfpet2parts2 39436 Grade stability applied to the decomposed PetParts modules.

Pet2Parts is obtained by applying the grade-stability operator SucMap ShiftStable (see df-shiftstable 38945) to the modular intersection from dfpetparts2 39435. This makes the two orthogonal stability axes explicit:

(E) semantic stability / equilibrium: BlockLiftFix,

(G) grade stability: SucMap ShiftStable,

assembled on top of typedness and disjoint-span base modules.

This is the principled "extra level" that does not arise for Disjs: disjoint relations already bundle their internal map/carrier consistency via QMap and ElDisjs (see dfdisjs6 39405 / dfdisjs7 39406), while the present construction has an additional external grading axis imposed by the canonical successor map SucMap. (Contributed by Peter Mazsa, 20-Feb-2026.) (Revised by Peter Mazsa, 25-Feb-2026.)

Pet2Parts = ( SucMap ShiftStable ((( Rels × MembParts ) ∩ {⟨𝑟, 𝑛⟩ ∣ (𝑟 ⋉ ( E ↾ 𝑛)) ∈ Disjs }) ∩ BlockLiftFix ))
 
25-Feb-2026dfpetparts2 39435 Alternate definition of PetParts as typedness + disjoint-span + block-lift equilibrium.

This theorem is the key modularization step. It decomposes PetParts into the intersection of three orthogonal modules:

(T) typedness: 𝑟, 𝑛⟩ ∈ ( Rels × MembParts ),

(D) disjoint-span: (𝑟 ⋉ ( E ↾ 𝑛)) ∈ Disjs,

(E) semantic equilibrium: 𝑟, 𝑛⟩ ∈ BlockLiftFix, i.e. the carrier 𝑛 is a fixpoint of the induced block-generation operator.

Conceptually, (D) provides the disjointness/quotient discipline for the lifted span, while (E) prevents hidden carrier drift (refinement or coarsening of what counts as a block) by enforcing the fixpoint equation. The point of this theorem is that these constraints can be imposed and reused independently by later constructions, while their intersection recovers the intended Parts-based notion.

This mirrors the internal packaging of Disjs (see dfdisjs6 39405 / dfdisjs7 39406): for disjoint relations, the "map layer + carrier layer" decomposition is internal via QMap and ElDisjs; for PetParts, the carrier 𝑛 is an external parameter, so the additional carrier stability must be factored explicitly as BlockLiftFix. (Contributed by Peter Mazsa, 20-Feb-2026.) (Revised by Peter Mazsa, 25-Feb-2026.)

PetParts = ((( Rels × MembParts ) ∩ {⟨𝑟, 𝑛⟩ ∣ (𝑟 ⋉ ( E ↾ 𝑛)) ∈ Disjs }) ∩ BlockLiftFix )
 
25-Feb-2026df-peters 39432 Define the class of equivalence-side general partition-equivalence spans.

𝑟, 𝑛⟩ ∈ PetErs means:

(1) 𝑟 is a set-relation (𝑟 ∈ Rels), and

(2) 𝑛 is a carrier recognized on the equivalence side of membership (𝑛 ∈ CoMembErs), and

(3) the coset relation of the lifted span, ≀ (𝑟 ⋉ ( E ↾ 𝑛)), is an equivalence relation on its natural quotient with carrier 𝑛 (i.e. ≀ (𝑟 ⋉ ( E ↾ 𝑛)) Ers 𝑛).

This packages the equivalence-view of the same lifted construction that underlies PetParts. It is designed to be parallel to PetParts so later proofs can freely choose the partition side (Parts) or the equivalence side (Ers) without rebuilding the bridge each time; the identification is provided by petseq 39439 (using typesafepets 39438 and mpets 39419). The explicit typing (𝑟 ∈ Rels ∧ 𝑛 ∈ CoMembErs ) is included for the same reason as in df-petparts 39431: to make typedness a reusable module. (Contributed by Peter Mazsa, 19-Feb-2026.) (Revised by Peter Mazsa, 25-Feb-2026.)

PetErs = {⟨𝑟, 𝑛⟩ ∣ ((𝑟 ∈ Rels ∧ 𝑛 ∈ CoMembErs ) ∧ ≀ (𝑟 ⋉ ( E ↾ 𝑛)) Ers 𝑛)}
 
25-Feb-2026df-petparts 39431 Define the class of partition-side general partition-equivalence spans.

𝑟, 𝑛⟩ ∈ PetParts means:

(1) 𝑟 is a set-relation (𝑟 ∈ Rels), and

(2) 𝑛 is a membership block-carrier (𝑛 ∈ MembParts), and

(3) the block-lift span (𝑟 ⋉ ( E ↾ 𝑛)) is a generalized partition on its natural quotient-carrier 𝑛 (i.e. (𝑟 ⋉ ( E ↾ 𝑛)) Parts 𝑛).

This is the horizontal feasibility base object on the partition side, expressed in the type-safe Parts language.

The explicit typing (𝑟 ∈ Rels ∧ 𝑛 ∈ MembParts ) is included at the definition level so later modular refinements can treat typedness as a first-class component (e.g. intersecting a typedness module with disjointness and equilibrium modules) without repeatedly restating it. In particular, it lets decompositions such as dfpetparts2 39435 be written as clean intersections whose first conjunct is exactly the typedness module ( Rels × MembParts ). (Contributed by Peter Mazsa, 19-Feb-2026.) (Revised by Peter Mazsa, 25-Feb-2026.)

PetParts = {⟨𝑟, 𝑛⟩ ∣ ((𝑟 ∈ Rels ∧ 𝑛 ∈ MembParts ) ∧ (𝑟 ⋉ ( E ↾ 𝑛)) Parts 𝑛)}
 
25-Feb-2026bdayfinbndcbv 28536 Lemma for bdayfinbnd 28539. Change some bound variables. (Contributed by Scott Fenton, 25-Feb-2026.)
(𝜑𝑁 ∈ ℕ0s)    &   (𝜑 → ∀𝑧 No ((( bday 𝑧) ⊆ ( bday 𝑁) ∧ 0s ≤s 𝑧) → (𝑧 = 𝑁 ∨ ∃𝑥 ∈ ℕ0s𝑦 ∈ ℕ0s𝑝 ∈ ℕ0s (𝑧 = (𝑥 +s (𝑦 /su (2ss𝑝))) ∧ 𝑦 <s (2ss𝑝) ∧ (𝑥 +s 𝑝) <s 𝑁))))       (𝜑 → ∀𝑤 No ((( bday 𝑤) ⊆ ( bday 𝑁) ∧ 0s ≤s 𝑤) → (𝑤 = 𝑁 ∨ ∃𝑎 ∈ ℕ0s𝑏 ∈ ℕ0s𝑞 ∈ ℕ0s (𝑤 = (𝑎 +s (𝑏 /su (2ss𝑞))) ∧ 𝑏 <s (2ss𝑞) ∧ (𝑎 +s 𝑞) <s 𝑁))))
 
25-Feb-2026bdaypw2bnd 28535 Birthday bounding rule for non-negative dyadic rationals. (Contributed by Scott Fenton, 25-Feb-2026.)
(𝜑𝑁 ∈ ℕ0s)    &   (𝜑𝑋 ∈ ℕ0s)    &   (𝜑𝑌 ∈ ℕ0s)    &   (𝜑𝑃 ∈ ℕ0s)    &   (𝜑𝑌 <s (2ss𝑃))    &   (𝜑 → (𝑋 +s 𝑃) <s 𝑁)       (𝜑 → ( bday ‘(𝑋 +s (𝑌 /su (2ss𝑃)))) ⊆ ( bday 𝑁))
 
25-Feb-2026onlesd 28340 Less-than or equal is the same as non-strict birthday comparison over surreal ordinals. Deduction version. (Contributed by Scott Fenton, 25-Feb-2026.)
(𝜑𝐴 ∈ Ons)    &   (𝜑𝐵 ∈ Ons)       (𝜑 → (𝐴 ≤s 𝐵 ↔ ( bday 𝐴) ⊆ ( bday 𝐵)))
 
25-Feb-2026onltsd 28339 Less-than is the same as birthday comparison over surreal ordinals. Deduction version. (Contributed by Scott Fenton, 25-Feb-2026.)
(𝜑𝐴 ∈ Ons)    &   (𝜑𝐵 ∈ Ons)       (𝜑 → (𝐴 <s 𝐵 ↔ ( bday 𝐴) ∈ ( bday 𝐵)))
 
25-Feb-2026onles 28338 Less-than or equal is the same as non-strict birthday comparison over surreal ordinals. (Contributed by Scott Fenton, 25-Feb-2026.)
((𝐴 ∈ Ons𝐵 ∈ Ons) → (𝐴 ≤s 𝐵 ↔ ( bday 𝐴) ⊆ ( bday 𝐵)))
 
25-Feb-2026lestri3d 27800 Trichotomy law for surreal less-than or equal. Deduction version. (Contributed by Scott Fenton, 25-Feb-2026.)
(𝜑𝐴 No )    &   (𝜑𝐵 No )       (𝜑 → (𝐴 = 𝐵 ↔ (𝐴 ≤s 𝐵𝐵 ≤s 𝐴)))
 
25-Feb-2026lesloed 27799 Surreal less-than or equal in terms of less-than. Deduction version. (Contributed by Scott Fenton, 25-Feb-2026.)
(𝜑𝐴 No )    &   (𝜑𝐵 No )       (𝜑 → (𝐴 ≤s 𝐵 ↔ (𝐴 <s 𝐵𝐴 = 𝐵)))
 
25-Feb-2026ltsnled 27798 Surreal less-than in terms of less-than or equal. Deduction version. (Contributed by Scott Fenton, 25-Feb-2026.)
(𝜑𝐴 No )    &   (𝜑𝐵 No )       (𝜑 → (𝐴 <s 𝐵 ↔ ¬ 𝐵 ≤s 𝐴))
 
25-Feb-2026lesnltd 27797 Surreal less-than or equal in terms of less-than. Deduction version. (Contributed by Scott Fenton, 25-Feb-2026.)
(𝜑𝐴 No )    &   (𝜑𝐵 No )       (𝜑 → (𝐴 ≤s 𝐵 ↔ ¬ 𝐵 <s 𝐴))
 
24-Feb-2026addsge01d 28086 A surreal is less-than or equal to itself plus a non-negative surreal. (Contributed by Scott Fenton, 24-Feb-2026.)
(𝜑𝐴 No )    &   (𝜑𝐵 No )       (𝜑 → ( 0s ≤s 𝐵𝐴 ≤s (𝐴 +s 𝐵)))
 
24-Feb-2026funcnvmpt 6973 Condition for a function in maps-to notation to be single-rooted. (Contributed by Thierry Arnoux, 28-Feb-2017.) (Proof shortened by Peter Mazsa, 24-Feb-2026.)
𝑥𝜑    &   𝑥𝐴    &   𝑥𝐹    &   𝐹 = (𝑥𝐴𝐵)    &   ((𝜑𝑥𝐴) → 𝐵𝑉)       (𝜑 → (Fun 𝐹 ↔ ∀𝑦∃*𝑥𝐴 𝑦 = 𝐵))
 
24-Feb-2026bian1d 588 Adding a superfluous conjunct in a biconditional. (Contributed by Thierry Arnoux, 26-Feb-2017.) (Proof shortened by Hongxiu Chen, 29-Jun-2025.) (Proof shortened by Peter Mazsa, 24-Feb-2026.)
(𝜑 → (𝜓 ↔ (𝜒𝜃)))       (𝜑 → ((𝜒𝜓) ↔ (𝜒𝜃)))
 
23-Feb-2026pw2ltdivmuls2d 28527 Surreal less-than relationship between division and multiplication for powers of two. (Contributed by Scott Fenton, 23-Feb-2026.)
(𝜑𝐴 No )    &   (𝜑𝐵 No )    &   (𝜑𝑁 ∈ ℕ0s)       (𝜑 → ((𝐴 /su (2ss𝑁)) <s 𝐵𝐴 <s (𝐵 ·s (2ss𝑁))))
 
23-Feb-2026n0lts1e0 28438 A non-negative surreal integer is less than one iff it is zero. (Contributed by Scott Fenton, 23-Feb-2026.)
(𝐴 ∈ ℕ0s → (𝐴 <s 1s𝐴 = 0s ))
 
23-Feb-2026cutminmax 28006 If the left set of 𝑋 has a maximum and the right set of 𝑋 has a minimum, then 𝑋 is equal to the cut of the maximum and the minimum. (Contributed by Scott Fenton, 23-Feb-2026.)
(𝜑𝐿 ∈ ( L ‘𝑋))    &   (𝜑 → ∀𝑥 ∈ ( L ‘𝑋)𝑥 ≤s 𝐿)    &   (𝜑𝑅 ∈ ( R ‘𝑋))    &   (𝜑 → ∀𝑦 ∈ ( R ‘𝑋)𝑅 ≤s 𝑦)       (𝜑𝑋 = ({𝐿} |s {𝑅}))
 
23-Feb-2026sltsbday 27987 Birthday comparison rule for surreals. (Contributed by Scott Fenton, 23-Feb-2026.)
(𝜑𝐴 = (𝐿 |s 𝑅))    &   (𝜑𝐵 No )    &   (𝜑𝐿 <<s {𝐵})    &   (𝜑 → {𝐵} <<s 𝑅)       (𝜑 → ( bday 𝐴) ⊆ ( bday 𝐵))
 
22-Feb-2026dfblockliftmap 38923 Alternate definition of the block lift map. (Contributed by Peter Mazsa, 29-Jan-2026.) (Revised by Peter Mazsa, 22-Feb-2026.)
(𝑅 BlockLiftMap 𝐴) = (𝑚 ∈ dom (𝑅 ⋉ ( E ↾ 𝐴)) ↦ [𝑚](𝑅 ⋉ ( E ↾ 𝐴)))
 
22-Feb-2026df-blockliftmap 38922 Define the block lift map. Given a relation 𝑅 and a carrier/set 𝐴, we form the block relation (𝑅 E ) (i.e., "follow both 𝑅 and element"), restricted to 𝐴 (or, equivalently, "follow both 𝑅 and elements-of-A", cf. xrnres2 38889). Then map each domain element 𝑚 to its coset [𝑚] under that restricted block relation.

For 𝑚 in the domain, which requires (𝑚𝐴𝑚 ≠ ∅ ∧ [𝑚]𝑅 ≠ ∅) (cf. eldmxrncnvepres 38897), the fiber has the product form [𝑚](𝑅 E ) = ([𝑚]𝑅 × 𝑚), so the block relation lifts a block 𝑚 to the rectangular grid "external labels × internal members", see dfblockliftmap2 38924. Contrast: while the adjoined lift, via (𝑅 E ), attaches neighbors and members in a single relation (see dfadjliftmap2 38920), the block lift labels each internal member by each external neighbor.

For the general case and a two-stage construction (first block lift, then adjoin membership), see the comments to df-adjliftmap 38918. For the equilibrium condition, see df-blockliftfix 38944. (Contributed by Peter Mazsa, 24-Jan-2026.) (Revised by Peter Mazsa, 22-Feb-2026.)

(𝑅 BlockLiftMap 𝐴) = QMap (𝑅 ⋉ ( E ↾ 𝐴))
 
22-Feb-2026dfadjliftmap 38919 Alternate (expanded) definition of the adjoined lift map. (Contributed by Peter Mazsa, 28-Jan-2026.) (Revised by Peter Mazsa, 22-Feb-2026.)
(𝑅 AdjLiftMap 𝐴) = (𝑚 ∈ dom ((𝑅 E ) ↾ 𝐴) ↦ [𝑚]((𝑅 E ) ↾ 𝐴))
 
22-Feb-2026df-adjliftmap 38918 Define the adjoined lift map. Given a relation 𝑅 and a carrier/set 𝐴, we form the adjoined relation (𝑅 E ) (i.e., "follow 𝑅 or follow elements"), restricted to 𝐴, and map each domain element 𝑚 to its coset [𝑚] under that restricted adjoined relation, see its expanded version dfadjliftmap 38919. Thus, for 𝑚 in its domain, we have (𝑚 ∪ [𝑚]𝑅), see dfadjliftmap2 38920.

Its key special case is successor: for 𝑅 = I and 𝐴 = dom I, or 𝐴 = V, the adjoined relation is ( I ∪ E ), and the coset becomes [𝑚]( I ∪ E ) = (𝑚 ∪ {𝑚}). So ( I AdjLiftMap dom I ) or ( I AdjLiftMap V) (see dfsucmap2 38927 and dfsucmap3 38926) are exactly the successor map 𝑚 ↦ suc 𝑚 (cf. dfsucmap4 38928), which is a prerequisite for accepting the adjoining lift as the right generalization of successor.

A maximally generic form would be "( R F LiftMap A )" defined as (𝑚 ∈ dom ((𝑅𝐹 E ) ↾ 𝐴) ↦ [𝑚]((𝑅𝐹 E ) ↾ 𝐴)) where 𝐹 is an object-level binary operator on relations (used via df-ov 7395). However, and are introduced in set.mm as class constructors (e.g. df-un 3909), not as an object-level binary function symbol 𝐹 that can be passed as a parameter. To make the generic 𝐹-pattern literally usable, we would need to reify union and as function-objects, which is additional infrastructure. To avoid introducing operator-as-function objects solely to support 𝐹, we define:

AdjLiftMap directly using df-un 3909, and

BlockLiftMap directly using the existing constructor dfxrn2 38848,

so we treat any "generic 𝐹-LiftMap" as optional future generalization, not a dependency.

We prefer to avoid defining too many concepts. For this reason, we will not introduce

a named "adjoining relation",

a named carrier "adjoining lift" "( R AdjLift A )", in place of ran (𝑅 AdjLiftMap 𝐴), which is (dom ((𝑅 E ) ↾ 𝐴) / ((𝑅 E ) ↾ 𝐴)), cf. dfqs2 8680,

or the equilibrium condition "AdjLiftFix" , in place of {⟨𝑟, 𝑎⟩ ∣ (dom ((𝑅 E ) ↾ 𝐴) / ((𝑅 E ) ↾ 𝐴)) = 𝑎} (cf. its analog df-blockliftfix 38944). These are definable by simple expansions and/or domain-quotient theorems when needed.

A "two-stage" construction is obtained by first forming the block relation (𝑅 E ) and then adjoining elements as "BlockAdj" . Combined, it uses the relation ((𝑅 E ) ∪ E ), which for 𝑚 in its domain (𝐴 ∖ {∅}) gives (𝑚 ∪ [𝑚](𝑅 E )), yielding "BlockAdjLiftMap" (cf. blockadjliftmap 38921) and "BlockAdjLiftFix". We only introduce these if a downstream theorem actually requires them. (Contributed by Peter Mazsa, 24-Jan-2026.) (Revised by Peter Mazsa, 22-Feb-2026.)

(𝑅 AdjLiftMap 𝐴) = QMap ((𝑅 E ) ↾ 𝐴)
 
22-Feb-2026z12bday 28555 A dyadic fraction has a finite birthday. (Contributed by Scott Fenton, 20-Aug-2025.) (Proof shortened by Scott Fenton, 22-Feb-2026.)
(𝐴 ∈ ℤs[1/2] → ( bday 𝐴) ∈ ω)
 
22-Feb-2026z12bdaylem 28554 Lemma for z12bday 28555. Handle the non-negative case. (Contributed by Scott Fenton, 22-Feb-2026.)
((𝐴 ∈ ℤs[1/2] ∧ 0s ≤s 𝐴) → ( bday 𝐴) ∈ ω)
 
22-Feb-2026z12bdaylem2 28541 Lemma for z12bday 28555. Show the first half of the equality. (Contributed by Scott Fenton, 22-Feb-2026.)
(𝜑𝑁 ∈ ℕ0s)    &   (𝜑𝑀 ∈ ℕ0s)    &   (𝜑𝑃 ∈ ℕ0s)    &   (𝜑 → ((2s ·s 𝑀) +s 1s ) <s (2ss𝑃))       (𝜑 → ( bday ‘(𝑁 +s (((2s ·s 𝑀) +s 1s ) /su (2ss𝑃)))) ⊆ ( bday ‘((𝑁 +s 𝑃) +s 1s )))
 
22-Feb-2026z12bdaylem1 28540 Lemma for z12bday 28555. Prove an inequality for birthday ordering. (Contributed by Scott Fenton, 22-Feb-2026.)
(𝜑𝑁 ∈ ℕ0s)    &   (𝜑𝑀 ∈ ℕ0s)    &   (𝜑𝑃 ∈ ℕ0s)    &   (𝜑 → ((2s ·s 𝑀) +s 1s ) <s (2ss𝑃))       (𝜑 → (𝑁 +s (((2s ·s 𝑀) +s 1s ) /su (2ss𝑃))) ≠ (𝑁 +s 𝑃))
 
22-Feb-2026bdaypw2n0bnd 28534 Upper bound for the birthday of a proper fraction of a power of two. This is actually a strict equality when 𝐴 is odd, but we do not need this for the rest of our development. (Contributed by Scott Fenton, 22-Feb-2026.)
((𝐴 ∈ ℕ0s𝑁 ∈ ℕ0s𝐴 <s (2ss𝑁)) → ( bday ‘(𝐴 /su (2ss𝑁))) ⊆ suc ( bday 𝑁))
 
22-Feb-2026onsbnd2 28352 The surreals of a given birthday are bounded below by the negative of that ordinal. (Contributed by Scott Fenton, 22-Feb-2026.)
((𝐴 ∈ Ons𝐵 ∈ ( M ‘( bday 𝐴))) → ( -us𝐴) ≤s 𝐵)
 
22-Feb-2026onsbnd 28351 The surreals of a given birthday are bounded above by that ordinal. (Contributed by Scott Fenton, 22-Feb-2026.)
((𝐴 ∈ Ons𝐵 ∈ ( M ‘( bday 𝐴))) → 𝐵 ≤s 𝐴)
 
22-Feb-2026addonbday 28349 The birthday of the sum of two ordinals is the natural sum of their birthdays. (Contributed by Scott Fenton, 22-Feb-2026.)
((𝐴 ∈ Ons𝐵 ∈ Ons) → ( bday ‘(𝐴 +s 𝐵)) = (( bday 𝐴) +no ( bday 𝐵)))
 
22-Feb-2026ons2ind 28345 Double induction schema for surreal ordinals. (Contributed by Scott Fenton, 22-Feb-2026.)
(𝑥 = 𝑥𝑂 → (𝜑𝜓))    &   (𝑦 = 𝑦𝑂 → (𝜓𝜒))    &   (𝑥 = 𝑥𝑂 → (𝜃𝜒))    &   (𝑥 = 𝐴 → (𝜑𝜏))    &   (𝑦 = 𝐵 → (𝜏𝜂))    &   ((𝑥 ∈ Ons𝑦 ∈ Ons) → ((∀𝑥𝑂 ∈ Ons𝑦𝑂 ∈ Ons ((𝑥𝑂 <s 𝑥𝑦𝑂 <s 𝑦) → 𝜒) ∧ ∀𝑥𝑂 ∈ Ons (𝑥𝑂 <s 𝑥𝜓) ∧ ∀𝑦𝑂 ∈ Ons (𝑦𝑂 <s 𝑦𝜃)) → 𝜑))       ((𝐴 ∈ Ons𝐵 ∈ Ons) → 𝜂)
 
21-Feb-2026elz12si 28543 Inference form of membership in the dyadic fractions. (Contributed by Scott Fenton, 21-Feb-2026.)
((𝐴 ∈ ℤs𝑁 ∈ ℕ0s) → (𝐴 /su (2ss𝑁)) ∈ ℤs[1/2])
 
21-Feb-2026bdaypw2n0bndlem 28533 Lemma for bdaypw2n0bnd 28534. Prove the case with a successor. (Contributed by Scott Fenton, 21-Feb-2026.)
((𝐴 ∈ ℕ0s𝑁 ∈ ℕ0s𝐴 <s (2ss(𝑁 +s 1s ))) → ( bday ‘(𝐴 /su (2ss(𝑁 +s 1s )))) ⊆ suc ( bday ‘(𝑁 +s 1s )))
 
21-Feb-2026pw2divsidd 28526 Identity law for division over powers of two. (Contributed by Scott Fenton, 21-Feb-2026.)
(𝜑𝑁 ∈ ℕ0s)       (𝜑 → ((2ss𝑁) /su (2ss𝑁)) = 1s )
 
21-Feb-2026pw2divs0d 28525 Division into zero is zero for a power of two. (Contributed by Scott Fenton, 21-Feb-2026.)
(𝜑𝑁 ∈ ℕ0s)       (𝜑 → ( 0s /su (2ss𝑁)) = 0s )
 
21-Feb-2026zcuts0 28478 Either the left or right set of a surreal integer is empty. (Contributed by Scott Fenton, 21-Feb-2026.)
(𝐴 ∈ ℤs → (( L ‘𝐴) = ∅ ∨ ( R ‘𝐴) = ∅))
 
21-Feb-2026negright 28129 The right set of the negative of a surreal is the set of negatives of its left set. (Contributed by Scott Fenton, 21-Feb-2026.)
(𝐴 No → ( R ‘( -us𝐴)) = ( -us “ ( L ‘𝐴)))
 
21-Feb-2026negleft 28128 The left set of the negative of a surreal is the set of negatives of its right set. (Contributed by Scott Fenton, 21-Feb-2026.)
(𝐴 No → ( L ‘( -us𝐴)) = ( -us “ ( R ‘𝐴)))
 
20-Feb-2026df-blockliftfix 38944 Define the equilibrium / fixed-point condition for "block carriers".

Start with a candidate block-family 𝑎 (a set whose elements you intend to treat as blocks). Combine it with a relation 𝑟 by forming the block-lift span 𝑇 = (𝑟 ⋉ ( E ↾ 𝑎)). For a block 𝑢𝑎, the fiber [𝑢]𝑇 is the set of all outputs produced from "external targets" of 𝑟 together with "internal members" of 𝑢; in other words, 𝑇 is the mechanism that generates new blocks from old ones.

Now apply the standard quotient construction (dom 𝑇 / 𝑇). This produces the family of all T-blocks (the cosets [𝑥]𝑇 of witnesses 𝑥 in the domain of 𝑇). In general, this operation can change your carrier: starting from 𝑎, it may generate a different block-family (dom 𝑇 / 𝑇).

The equation (dom (𝑟 ⋉ ( E ↾ 𝑎)) / (𝑟 ⋉ ( E ↾ 𝑎))) = 𝑎 says exactly: if you generate blocks from 𝑎 using the lift determined by 𝑟 (cf. df-blockliftmap 38922), you get back the same 𝑎. So 𝑎 is stable under the block-generation operator induced by 𝑟. This is why it is a genuine fixpoint/equilibrium condition: one application of the "make-the-blocks" operator causes no carrier drift, i.e. no hidden refinement/coarsening of what counts as a block.

Here, the quotient (dom 𝑇 / 𝑇) is the standard carrier of 𝑇 -blocks; see dfqs2 8680 for the quotient-as-range viewpoint.

This is an untyped equilibrium predicate on pairs 𝑟, 𝑎. No hypothesis 𝑟 ∈ Rels is built into the definition, because the fixpoint equation depends only on those ordered pairs 𝑥, 𝑦 that belong to 𝑟 and hence can witness an atomic instance 𝑥𝑟𝑦; extra non-ordered-pair "junk" elements in 𝑟 are ignored automatically by the relational membership predicate.

When later work needs 𝑟 to be relation-typed (e.g. to intersect with ( Rels × V)-style typedness modules, or to apply Rels-based infrastructure uniformly), the additional typing constraint 𝑟 ∈ Rels should be imposed locally as a separate conjunct (rather than being baked into this equilibrium module). (Contributed by Peter Mazsa, 25-Jan-2026.) (Revised by Peter Mazsa, 20-Feb-2026.)

BlockLiftFix = {⟨𝑟, 𝑎⟩ ∣ (dom (𝑟 ⋉ ( E ↾ 𝑎)) / (𝑟 ⋉ ( E ↾ 𝑎))) = 𝑎}
 
20-Feb-2026n0ssoldg 28423 The non-negative surreal integers are a subset of the old set of ω. To avoid the axiom of infinity, we include it as an antecedent. (Contributed by Scott Fenton, 20-Feb-2026.)
(ω ∈ V → ℕ0s ⊆ ( O ‘ω))
 
20-Feb-2026infinf 10521 Equivalence between two infiniteness criteria for sets. (Contributed by David Moews, 1-May-2017.) (Proof shortened by Scott Fenton, 20-Feb-2026.)
(𝐴𝐵 → (¬ 𝐴 ∈ Fin ↔ ω ≼ 𝐴))
 
20-Feb-2026infinfg 10520 Equivalence between two infiniteness criteria for sets. To avoid the axiom of infinity, we include it as a hypothesis. (Contributed by Scott Fenton, 20-Feb-2026.)
((ω ∈ V ∧ 𝐴𝐵) → (¬ 𝐴 ∈ Fin ↔ ω ≼ 𝐴))
 
19-Feb-2026pets2eq 39440 Grade-stable generalized partition-equivalence identification. After applying the same grade-stability operator (SucMap ShiftStable) to both sides, the grade-stable pet classes still coincide. Confirms that the grade/tower infrastructure is orthogonal to the partition-vs-equivalence viewpoint: stability is preserved under the PetParts = PetErs identification. This is the level at which we can freely work on whichever side is more convenient (Parts for block discipline, Ers for equivalence reasoning), without changing the stable notion of "pet". (Contributed by Peter Mazsa, 19-Feb-2026.)
Pet2Parts = Pet2Ers
 
19-Feb-2026petseq 39439 Generalized partition-equivalence identification.

The partition-side scheme PetParts and the equivalence-side scheme PetErs define the same class of spans (pairs 𝑟, 𝑛).

This plays the same organizational role for lifted spans that mpets 39419 plays for carriers: mpets 39419 identifies MembParts with CoMembErs at the membership-carrier level, while petseq 39439 identifies the corresponding span-level predicates built from Parts and Ers.

Unlike the earlier broad pets 39429, the bridge used here is the type-safe span theorem typesafepets 39438, which restricts to membership block-carriers. Since typedness (𝑟 ∈ Rels and the appropriate carrier condition) is now built directly into PetParts and PetErs, this theorem can be used downstream without repeatedly re-establishing basic typing premises. (Contributed by Peter Mazsa, 19-Feb-2026.)

PetParts = PetErs
 
19-Feb-2026typesafepets 39438 Type-safe pets 39429 scheme. On a membership block-carrier 𝐴 ∈ MembParts, the lifted span (𝑅 ⋉ ( E ↾ 𝐴)) yields a generalized partition of 𝐴 iff its coset relation yields an equivalence relation on the same carrier 𝐴. This is the type-safe replacement for the earlier broad pets 39429: it explicitly restricts to carriers where 𝐴 is already known to be a block-family (by MembParts). That removes the standard type-safety objection ("are you equating a quotient-carrier of blocks with raw witnesses?") by construction. It is the key bridge used to identify the partition-side and equivalence-side pet classes (petseq 39439), in complete parallel with the membership bridge mpets 39419. This theorem is intentionally not the definition of PetParts; it is the bridge used by petseq 39439 after typedness is enforced by the "Pet*" definitions. (Contributed by Peter Mazsa, 19-Feb-2026.)
((𝐴 ∈ MembParts ∧ 𝑅𝑉) → ((𝑅 ⋉ ( E ↾ 𝐴)) Parts 𝐴 ↔ ≀ (𝑅 ⋉ ( E ↾ 𝐴)) Ers 𝐴))
 
19-Feb-2026df-pet2ers 39434 Define the class of grade- and blocklift-stable equivalence-side general partition-equivalence spans. The equivalence-side analogue of Pet2Parts: stability of PetErs under one-step grade shift along SucMap. Ensures that the equivalence-side formulation supports the same tower/grade infrastructure as the partition-side formulation. SucMap ShiftStable is the grade axis and does not change the equivalence-vs-partition viewpoint (reinforced by pets2eq 39440). (Contributed by Peter Mazsa, 19-Feb-2026.)
Pet2Ers = ( SucMap ShiftStable PetErs )
 
19-Feb-2026df-pet2parts 39433 Define the class of grade- and blocklift-stable partition-side general partition-equivalence spans. It consists of those 𝑟, 𝑛⟩ ∈ PetParts such that 𝑟, 𝑛 remains in PetParts after shifting one grade along SucMap (via ShiftStable). Concretely: 𝑟, 𝑛⟩ ∈ PetParts and there exists a predecessor 𝑚 with suc 𝑚 = 𝑛 such that 𝑟, 𝑚⟩ ∈ PetParts (encoded by SucMap ∘ PetParts inside ShiftStable). I.e., it introduces the external (tower/grade) stability axis. This is the "4th level" for pet 39428 (see dfpet2parts2 39436): beyond (i) carrier membership partition, (ii) disjointness, and (iii) semantic equilibrium, we require (iv) stability under a canonical grade shift. PetParts already enforces disjointness and the quotient-carrier equation for the lifted span (hence semantic equilibrium via dfpetparts2 39435). Pet2Parts adds the external grade (tower) stability axis via df-shiftstable 38945 with SucMap. This (iv) is why we need explicit second-level Pet2Parts, while Disjs typically does not: Disjs already packages its own internal two-step consistency (carrier + map) by dfdisjs6 39405 / dfdisjs7 39406, whereas pet 39428 has an additional grade axis that must be imposed separately. (Contributed by Peter Mazsa, 19-Feb-2026.)
Pet2Parts = ( SucMap ShiftStable PetParts )
 
19-Feb-2026shiftstableeq2 38946 Equality theorem for shift-stability of two classes. (Contributed by Peter Mazsa, 19-Feb-2026.)
(𝐹 = 𝐺 → (𝑆 ShiftStable 𝐹) = (𝑆 ShiftStable 𝐺))
 
19-Feb-2026ecqmap2 38913 Fiber of QMap equals singleton quotient: a conceptual bridge between "map fibers" and quotients. (Contributed by Peter Mazsa, 19-Feb-2026.)
(𝐴 ∈ dom 𝑅 → [𝐴] QMap 𝑅 = ({𝐴} / 𝑅))
 
19-Feb-2026bj-dfsbc 37088 Proof of df-sbc 3745 when taking bj-df-sb 37086 as definition. (Contributed by BJ, 19-Feb-2026.) (Proof modification is discouraged.) (New usage is discouraged.)
(𝐴 ∈ {𝑥𝜑} ↔ [𝐴 / 𝑥]𝜑)
 
19-Feb-2026bj-sbcex 37087 Proof of sbcex 3754 when taking bj-df-sb 37086 as definition. (Contributed by BJ, 19-Feb-2026.) (Proof modification is discouraged.) (New usage is discouraged.)
([𝐴 / 𝑥]𝜑𝐴 ∈ V)
 
19-Feb-2026bj-df-sb 37086 Proposed definition to replace df-sb 2090 and df-sbc 3745. Proof is therefore unimportant. Contrary to df-sb 2090, this definition makes a substituted formula false when one substitutes a non-existent object for a variable: this is better suited to the "Levy-style" treatment of classes as virtual objects adopted by set.mm. That difference is unimportant since as soon as ax6ev 1988 is posited, all variables "exist". (Contributed by BJ, 19-Feb-2026.)
([𝐴 / 𝑥]𝜑 ↔ ∃𝑦(𝑦 = 𝐴 ∧ ∀𝑥(𝑥 = 𝑦𝜑)))
 
19-Feb-2026renod 28563 A surreal real is a surreal number. (Contributed by Scott Fenton, 19-Feb-2026.)
(𝜑𝐴 ∈ ℝs)       (𝜑𝐴 No )
 
19-Feb-2026reno 28562 A surreal real is a surreal number. (Contributed by Scott Fenton, 19-Feb-2026.)
(𝐴 ∈ ℝs𝐴 No )
 
19-Feb-2026oldfib 28447 The old set of an ordinal is finite iff the ordinal is finite. (Contributed by Scott Fenton, 19-Feb-2026.)
(𝐴 ∈ On → (𝐴 ∈ ω ↔ ( O ‘𝐴) ∈ Fin))
 
19-Feb-2026ordfin 9180 A generalization of onfin 9179 to include the class of all ordinals. (Contributed by Scott Fenton, 19-Feb-2026.)
(Ord 𝐴 → (𝐴 ∈ Fin ↔ 𝐴 ∈ ω))
 
18-Feb-2026suceldisj 39281 Disjointness of successor enforces element-carrier separation: If 𝐵 is the successor of 𝐴 and 𝐵 is element-disjoint as a family, then no element of 𝐴 can itself be a member of 𝐴 (equivalently, every 𝑥𝐴 has empty intersection with the carrier 𝐴). Provides a clean bridge between "disjoint family at the next grade" and "no block contains a block of the same family" at the previous grade: MembPart alone does not enforce this, see dfmembpart2 39336 (it gives disjoint blocks and excludes the empty block, but does not prevent 𝑢𝑚 from also being a member of the carrier 𝑚). This lemma is used to justify when grade-stability (via successor-shift) supplies the extra separation axioms needed in roof/root-style carrier reasoning. (Contributed by Peter Mazsa, 18-Feb-2026.)
((𝐴𝑉 ∧ ElDisj 𝐵 ∧ suc 𝐴 = 𝐵) → ∀𝑥𝐴 (𝑥𝐴) = ∅)
 
18-Feb-2026wl-eujustlem1 38055 Version of cbvexvw 2056 with references to ax-6 1986 listed as antecedents. (Contributed by Wolf Lammen, 18-Feb-2026.)
(𝑥 = 𝑦 → (𝜑𝜓))       ((∀𝑦𝑥 𝑥 = 𝑦 ∧ ∀𝑥𝑦 𝑥 = 𝑦) → (∃𝑥𝜑 ↔ ∃𝑦𝜓))
 
18-Feb-2026noinfepregs 35393 There are no infinite descending -chains, proven using ax-regs 35386. (Contributed by BTernaryTau, 18-Feb-2026.)
𝑥 ∈ ω (𝐹‘suc 𝑥) ∉ (𝐹𝑥)
 
18-Feb-2026noinfepfnregs 35392 There are no infinite descending -chains, proven using ax-regs 35386. (Contributed by BTernaryTau, 18-Feb-2026.)
(𝐹 Fn ω → ∃𝑥 ∈ ω (𝐹‘suc 𝑥) ∉ (𝐹𝑥))
 
18-Feb-2026fineqvinfep 35385 A counterexample demonstrating that tz9.1 9681 does not hold when all sets are finite and an infinite descending -chain exists. (Contributed by BTernaryTau, 18-Feb-2026.)
𝐴 = {(𝐹‘∅)}       ((Fin = V ∧ 𝐹:ω–1-1→V ∧ ∀𝑥 ∈ ω (𝐹‘suc 𝑥) ∈ (𝐹𝑥)) → ¬ ∃𝑦(𝐴𝑦 ∧ Tr 𝑦))
 
18-Feb-20261reno 28567 Surreal one is a surreal real. (Contributed by Scott Fenton, 18-Feb-2026.)
1s ∈ ℝs
 
16-Feb-2026dfdisjs7 39406 Alternate definition of the class of disjoints (via carrier disjointness + unique representatives). Ideology-free normal form of dfdisjs6 39405: "blocks cover their elements" (∃*) and "each block has a unique generator" (∃!), expressed entirely at the quotient-carrier level. Same class as dfdisjs6 39405, but presented in fully expanded ∃* / ∃! form over the quotient-carrier (dom 𝑟 / 𝑟). Makes explicit (a) element-disjointness of the quotient-carrier and (b) unique representative existence for each block. These are exactly the two conditions that rule out type-confusions (blocks vs witnesses) and ensure canonical decomposition. This is the form that best supports analogy arguments with df-petparts 39431 and with successor-style uniqueness patterns. (Contributed by Peter Mazsa, 16-Feb-2026.)
Disjs = {𝑟 ∈ Rels ∣ (∀𝑥∃*𝑢 ∈ (dom 𝑟 / 𝑟)𝑥𝑢 ∧ ∀𝑢 ∈ (dom 𝑟 / 𝑟)∃!𝑡 ∈ dom 𝑟 𝑢 = [𝑡]𝑟)}
 
16-Feb-2026dfdisjs6 39405 Alternate definition of the class of disjoints (via quotient-map stability). Disjs is the class of relations 𝑟 whose quotient-map QMap 𝑟 is again disjoint and whose induced quotient-carrier is element-disjoint. This is the definitional "stability-by-decomposition" packaging of disjointness: it builds Disjs from two internal layers (i) a carrier-layer constraint and (ii) a map-layer closure constraint. This is deliberately different from "u R x" style definitions: it makes the carrier of blocks and the uniqueness-of-representatives discipline first-class and reusable (via QMap) rather than implicit. (Contributed by Peter Mazsa, 16-Feb-2026.)
Disjs = {𝑟 ∈ Rels ∣ (ran QMap 𝑟 ∈ ElDisjs ∧ QMap 𝑟 ∈ Disjs )}
 
16-Feb-2026eldisjs7 39404 Elementhood in the class of disjoints. 𝑅 ∈ Disjs iff:

𝑅 ∈ Rels, and

every 𝑥 belongs to at most one block 𝑢 in the quotient-carrier (dom 𝑅 / 𝑅) (element-disjointness at the carrier), and

every block 𝑢 in the quotient-carrier has a unique representative 𝑡 ∈ dom 𝑅 such that 𝑢 = [𝑡]𝑅.

Provides the "fully expanded" quantifier characterization of the same decomposition as eldisjs6 39403, but without explicitly mentioning QMap. This is the "E*/E!"" view that is closest in spirit to suc11reg 9571-style injectivity and to the "unique generator per block" narrative. It is also the right contrast-point to older one-line criteria like dfdisjs4 39259 (the "u R x" style), because it makes the carrier and representation discipline explicit and type-safe. (Contributed by Peter Mazsa, 16-Feb-2026.)

(𝑅 ∈ Disjs ↔ (𝑅 ∈ Rels ∧ (∀𝑥∃*𝑢 ∈ (dom 𝑅 / 𝑅)𝑥𝑢 ∧ ∀𝑢 ∈ (dom 𝑅 / 𝑅)∃!𝑡 ∈ dom 𝑅 𝑢 = [𝑡]𝑅)))
 
16-Feb-2026eldisjs6 39403 Elementhood in the class of disjoints. A relation 𝑅 is in Disjs iff:

it is relation-typed, and

its quotient-map QMap 𝑅 is itself disjoint, and

its quotient-carrier ran QMap 𝑅 = (dom 𝑅 / 𝑅) lies in ElDisjs (element-disjoint carriers).

This is the central "stability-by-decomposition" theorem for Disjs: it explains why Disjs is internally well-behaved without adding an external stability clause. It is the exact template that PetParts imitates: for pet 39428, the analogue of "map layer" is the disjointness of the lifted span, the analogue of "carrier layer" is the block-lift fixpoint (BlockLiftFix), and then adds external grade stability (SucMap ShiftStable) which Disjs does not need. (Contributed by Peter Mazsa, 16-Feb-2026.)

(𝑅 ∈ Disjs ↔ (𝑅 ∈ Rels ∧ (ran QMap 𝑅 ∈ ElDisjs ∧ QMap 𝑅 ∈ Disjs )))
 
16-Feb-2026rnqmapeleldisjsim 39325 Element-disjointness of the quotient carrier forces coset disjointness. Supplies the "cosets don't overlap unless equal" direction, but expressed via ran QMap 𝑅 (the quotient carrier) and ElDisjs. This is the structural reason Disjs needs a "carrier disjointness" level distinct from the "unique representatives" level. (Contributed by Peter Mazsa, 16-Feb-2026.)
((𝑅𝑉 ∧ ran QMap 𝑅 ∈ ElDisjs ∧ (𝐴 ∈ dom 𝑅𝐵 ∈ dom 𝑅)) → (([𝐴]𝑅 ∩ [𝐵]𝑅) ≠ ∅ → [𝐴]𝑅 = [𝐵]𝑅))
 
16-Feb-2026qmapeldisjsbi 39324 Injectivity of coset map from QMap being disjoint (biconditional form). Convenience version of qmapeldisjsim 39323. (Contributed by Peter Mazsa, 16-Feb-2026.)
((𝑅𝑉 ∧ QMap 𝑅 ∈ Disjs ∧ (𝐴 ∈ dom 𝑅𝐵 ∈ dom 𝑅)) → ([𝐴]𝑅 = [𝐵]𝑅𝐴 = 𝐵))
 
16-Feb-2026qmapeldisjsim 39323 Injectivity of coset map from QMap being disjoint (implication form): under the Disjs condition on QMap 𝑅, the coset assignment is injective on dom 𝑅. (Contributed by Peter Mazsa, 16-Feb-2026.)
((𝑅𝑉 ∧ QMap 𝑅 ∈ Disjs ∧ (𝐴 ∈ dom 𝑅𝐵 ∈ dom 𝑅)) → ([𝐴]𝑅 = [𝐵]𝑅𝐴 = 𝐵))
 
16-Feb-2026disjimeceqbi2 39270 Injectivity of the block constructor under disjointness. suc11reg 9571 analogue: under disjointness, equal blocks force equal generators (on dom 𝑅). (Contributed by Peter Mazsa, 16-Feb-2026.)
( Disj 𝑅 → ((𝐴 ∈ dom 𝑅𝐵 ∈ dom 𝑅) → ([𝐴]𝑅 = [𝐵]𝑅𝐴 = 𝐵)))
 
16-Feb-2026disjimeceqim2 39268 Disj implies injectivity (pairwise form). The same content as disjimeceqim 39267 but packaged for direct use with explicit hypotheses (𝐴 ∈ dom 𝑅𝐵 ∈ dom 𝑅). (Contributed by Peter Mazsa, 16-Feb-2026.)
( Disj 𝑅 → ((𝐴 ∈ dom 𝑅𝐵 ∈ dom 𝑅) → ([𝐴]𝑅 = [𝐵]𝑅𝐴 = 𝐵)))
 
16-Feb-2026falseral0 4467 A false statement can only be true for elements of an empty set. (Contributed by AV, 30-Oct-2020.) (Proof shortened by TM, 16-Feb-2026.)
((∀𝑥 ¬ 𝜑 ∧ ∀𝑥𝐴 𝜑) → 𝐴 = ∅)
 
16-Feb-2026r19.3rzv 4456 Restricted quantification of wff not containing quantified variable. (Contributed by NM, 10-Mar-1997.) Avoid ax-12 2211. (Revised by TM, 16-Feb-2026.)
(𝐴 ≠ ∅ → (𝜑 ↔ ∀𝑥𝐴 𝜑))
 
15-Feb-2026eldisjsim5 39402 Disjs is closed under QMap. If a relation is "disjoint-structured" (Disjs), then its canonical block map is also "disjoint-structured". This is the second "structure level" in Disjs: it expresses that the property is stable under passing to the canonical block map, a theme that mirrors Pet-grade stability at a different axis. (Contributed by Peter Mazsa, 15-Feb-2026.)
(𝑅 ∈ Disjs → QMap 𝑅 ∈ Disjs )
 
15-Feb-2026eldisjsim4 39401 Disjs implies element-disjoint range of QMap. Same as eldisjsim3 39400 but expressed using the block-map range ran QMap 𝑅 (often the more modular expression). (Contributed by Peter Mazsa, 15-Feb-2026.)
(𝑅 ∈ Disjs → ran QMap 𝑅 ∈ ElDisjs )
 
15-Feb-2026vieta 33838 Vieta's Formulas: Coefficients of a monic polynomial 𝐹 expressed as a product of linear polynomials of the form 𝑋𝑍 can be expressed in terms of elementary symmetric polynomials. The formulas appear in Chapter 6 of [Lang], p. 190. Theorem vieta1 26353 is a special case for the complex numbers, for the case 𝐾 = 1. (Contributed by Thierry Arnoux, 15-Feb-2026.)
𝑊 = (Poly1𝑅)    &   𝐵 = (Base‘𝑅)    &    = (-g𝑊)    &   𝑀 = (mulGrp‘𝑊)    &   𝑄 = (𝐼 eval 𝑅)    &   𝐸 = (𝐼eSymPoly𝑅)    &   𝑁 = (invg𝑅)    &    1 = (1r𝑅)    &    · = (.r𝑅)    &   𝑋 = (var1𝑅)    &   𝐴 = (algSc‘𝑊)    &    = (.g‘(mulGrp‘𝑅))    &   𝐻 = (♯‘𝐼)    &   (𝜑𝐼 ∈ Fin)    &   (𝜑𝑅 ∈ IDomn)    &   (𝜑𝑍:𝐼𝐵)    &   𝐹 = (𝑀 Σg (𝑛𝐼 ↦ (𝑋 (𝐴‘(𝑍𝑛)))))    &   (𝜑𝐾 ∈ (0...𝐻))    &   𝐶 = (coe1𝐹)       (𝜑 → (𝐶‘(𝐻𝐾)) = ((𝐾 (𝑁1 )) · ((𝑄‘(𝐸𝐾))‘𝑍)))
 
15-Feb-2026vietalem 33837 Lemma for vieta 33838: induction step. (Contributed by Thierry Arnoux, 15-Feb-2026.)
𝑊 = (Poly1𝑅)    &   𝐵 = (Base‘𝑅)    &    = (-g𝑊)    &   𝑀 = (mulGrp‘𝑊)    &   𝑄 = (𝐼 eval 𝑅)    &   𝐸 = (𝐼eSymPoly𝑅)    &   𝑁 = (invg𝑅)    &    1 = (1r𝑅)    &    · = (.r𝑅)    &   𝑋 = (var1𝑅)    &   𝐴 = (algSc‘𝑊)    &    = (.g‘(mulGrp‘𝑅))    &   𝐻 = (♯‘𝐼)    &   (𝜑𝐼 ∈ Fin)    &   (𝜑𝑅 ∈ IDomn)    &   (𝜑𝑍:𝐼𝐵)    &   𝐹 = (𝑀 Σg (𝑛𝐼 ↦ (𝑋 (𝐴‘(𝑍𝑛)))))    &   (𝜑𝐾 ∈ (0...𝐻))    &   (𝜑𝑌𝐼)    &   𝐽 = (𝐼 ∖ {𝑌})    &   (𝜑 → ∀𝑧 ∈ (𝐵m 𝐽)∀𝑘 ∈ (0...(♯‘𝐽))((coe1‘(𝑀 Σg (𝑛𝐽 ↦ (𝑋 (𝐴‘(𝑧𝑛))))))‘((♯‘𝐽) − 𝑘)) = ((𝑘 (𝑁1 )) · (((𝐽 eval 𝑅)‘((𝐽eSymPoly𝑅)‘𝑘))‘𝑧)))    &   (𝜑 → ((deg1𝑅)‘(𝑀 Σg (𝑛𝐽 ↦ (𝑋 (𝐴‘((𝑍𝐽)‘𝑛)))))) = (♯‘𝐽))       (𝜑 → ((coe1𝐹)‘𝐾) = (((𝐻𝐾) (𝑁1 )) · ((𝑄‘(𝐸‘(𝐻𝐾)))‘𝑍)))
 
15-Feb-2026vietadeg1 33836 The degree of a product of 𝐻 of linear polynomials of the form 𝑋𝑍 is 𝐻. (Contributed by Thierry Arnoux, 15-Feb-2026.)
𝑊 = (Poly1𝑅)    &   𝐵 = (Base‘𝑅)    &    = (-g𝑊)    &   𝑀 = (mulGrp‘𝑊)    &   𝑄 = (𝐼 eval 𝑅)    &   𝐸 = (𝐼eSymPoly𝑅)    &   𝑁 = (invg𝑅)    &    1 = (1r𝑅)    &    · = (.r𝑅)    &   𝑋 = (var1𝑅)    &   𝐴 = (algSc‘𝑊)    &    = (.g‘(mulGrp‘𝑅))    &   𝐻 = (♯‘𝐼)    &   (𝜑𝐼 ∈ Fin)    &   (𝜑𝑅 ∈ IDomn)    &   (𝜑𝑍:𝐼𝐵)    &   𝐹 = (𝑀 Σg (𝑛𝐼 ↦ (𝑋 (𝐴‘(𝑍𝑛)))))    &   𝐷 = (deg1𝑅)       (𝜑 → (𝐷𝐹) = 𝐻)
 
15-Feb-2026esplyfvn 33835 Express the last elementary symmetric polynomial, evaluated at a given set of points 𝑍, in terms of the last elementary symmetric polynomial with one less variable. (Contributed by Thierry Arnoux, 15-Feb-2026.)
𝐵 = (Base‘𝑅)    &    + = (+g𝑅)    &    · = (.r𝑅)    &   𝑄 = (𝐼 eval 𝑅)    &   𝑂 = (𝐽 eval 𝑅)    &   𝐸 = (𝐼eSymPoly𝑅)    &   𝐹 = (𝐽eSymPoly𝑅)    &   𝐻 = (♯‘𝐼)    &   𝐾 = (♯‘𝐽)    &   𝐽 = (𝐼 ∖ {𝑌})    &   (𝜑𝐼 ∈ Fin)    &   (𝜑𝑅 ∈ CRing)    &   (𝜑𝑌𝐼)    &   (𝜑𝑍:𝐼𝐵)       (𝜑 → ((𝑄‘(𝐸𝐻))‘𝑍) = ((𝑍𝑌) · ((𝑂‘(𝐹𝐾))‘(𝑍𝐽))))
 
15-Feb-2026esplyindfv 33834 A recursive formula for the elementary symmetric polynomials, evaluated at a given set of points 𝑍. (Contributed by Thierry Arnoux, 15-Feb-2026.)
· = (.r𝑅)    &   (𝜑𝐼 ∈ Fin)    &   (𝜑𝑅 ∈ CRing)    &   (𝜑𝑌𝐼)    &   𝐽 = (𝐼 ∖ {𝑌})    &   𝐸 = (𝐽eSymPoly𝑅)    &   (𝜑𝐾 ∈ (0...(♯‘𝐽)))    &   𝐶 = { ∈ (ℕ0m 𝐽) ∣ finSupp 0}    &   𝐹 = ((𝐼eSymPoly𝑅)‘(𝐾 + 1))    &   𝐵 = (Base‘𝑅)    &   𝑄 = (𝐼 eval 𝑅)    &   𝑂 = (𝐽 eval 𝑅)    &    + = (+g𝑅)    &   (𝜑𝑍:𝐼𝐵)       (𝜑 → ((𝑄𝐹)‘𝑍) = (((𝑍𝑌) · ((𝑂‘(𝐸𝐾))‘(𝑍𝐽))) + ((𝑂‘(𝐸‘(𝐾 + 1)))‘(𝑍𝐽))))
 
15-Feb-2026esplyfval0 33822 The 0-th elementary symmetric polynomial is the constant 1. (Contributed by Thierry Arnoux, 15-Feb-2026.)
(𝜑𝐼𝑉)    &   (𝜑𝑅 ∈ Ring)    &   𝑈 = (1r‘(𝐼 mPoly 𝑅))       (𝜑 → ((𝐼eSymPoly𝑅)‘0) = 𝑈)
 
15-Feb-2026evlextv 33800 Evaluating a variable-extended polynomial is the same as evaluating the polynomial in the original set of variables (in both cases, the additionial variable is ignored). (Contributed by Thierry Arnoux, 15-Feb-2026.)
𝑄 = (𝐼 eval 𝑅)    &   𝑂 = (𝐽 eval 𝑅)    &   𝐽 = (𝐼 ∖ {𝑌})    &   𝑀 = (Base‘(𝐽 mPoly 𝑅))    &   𝐵 = (Base‘𝑅)    &   𝐸 = (𝐼extendVars𝑅)    &   (𝜑𝑅 ∈ CRing)    &   (𝜑𝐼𝑉)    &   (𝜑𝑌𝐼)    &   (𝜑𝐹𝑀)    &   (𝜑𝐴:𝐼𝐵)       (𝜑 → ((𝑄‘((𝐸𝑌)‘𝐹))‘𝐴) = ((𝑂𝐹)‘(𝐴𝐽)))
 
15-Feb-2026evlvarval 33799 Polynomial evaluation builder for a variable. (Contributed by Thierry Arnoux, 15-Feb-2026.)
𝑄 = (𝐼 eval 𝑆)    &   𝑃 = (𝐼 mPoly 𝑆)    &   𝐾 = (Base‘𝑆)    &   𝐵 = (Base‘𝑃)    &    = (.r𝑃)    &    · = (.r𝑆)    &   (𝜑𝐼𝑍)    &   (𝜑𝑆 ∈ CRing)    &   (𝜑𝐴 ∈ (𝐾m 𝐼))    &   𝑉 = (𝐼 mVar 𝑆)    &   (𝜑𝑋𝐼)       (𝜑 → ((𝑉𝑋) ∈ 𝐵 ∧ ((𝑄‘(𝑉𝑋))‘𝐴) = (𝐴𝑋)))
 
15-Feb-2026evlscaval 33798 Polynomial evaluation for scalars. See evlsscaval 22159. (Contributed by Thierry Arnoux, 15-Feb-2026.)
𝑄 = (𝐼 eval 𝑅)    &   𝑊 = (𝐼 mPoly 𝑅)    &   𝐵 = (Base‘𝑅)    &   𝐴 = (algSc‘𝑊)    &   (𝜑𝐼𝑉)    &   (𝜑𝑅 ∈ CRing)    &   (𝜑𝑋𝐵)    &   (𝜑𝐿:𝐼𝐵)       (𝜑 → ((𝑄‘(𝐴𝑋))‘𝐿) = 𝑋)
 
15-Feb-2026gsummoncoe1fz 33755 A coefficient of the polynomial represented as a sum of scaled monomials is the coefficient of the corresponding scaled monomial. See gsummoncoe1fzo 33754. (Contributed by Thierry Arnoux, 15-Feb-2026.)
𝑃 = (Poly1𝑅)    &   𝐵 = (Base‘𝑃)    &   𝑋 = (var1𝑅)    &    = (.g‘(mulGrp‘𝑃))    &   (𝜑𝑅 ∈ Ring)    &   𝐾 = (Base‘𝑅)    &    = ( ·𝑠𝑃)    &   (𝜑𝐷 ∈ ℕ0)    &   (𝜑 → ∀𝑘 ∈ (0...𝐷)𝐴𝐾)    &   (𝜑𝐿 ∈ (0...𝐷))    &   (𝑘 = 𝐿𝐴 = 𝐶)       (𝜑 → ((coe1‘(𝑃 Σg (𝑘 ∈ (0...𝐷) ↦ (𝐴 (𝑘 𝑋)))))‘𝐿) = 𝐶)
 
15-Feb-2026ply1coedeg 33746 Decompose a univariate polynomial 𝐾 as a sum of powers, up to its degree 𝐷. (Contributed by Thierry Arnoux, 15-Feb-2026.)
𝑃 = (Poly1𝑅)    &   𝑋 = (var1𝑅)    &   𝐵 = (Base‘𝑃)    &    · = ( ·𝑠𝑃)    &   𝑀 = (mulGrp‘𝑃)    &    = (.g𝑀)    &   𝐴 = (coe1𝐾)    &   𝐷 = ((deg1𝑅)‘𝐾)    &   (𝜑𝑅 ∈ Ring)    &   (𝜑𝐾𝐵)       (𝜑𝐾 = (𝑃 Σg (𝑘 ∈ (0...𝐷) ↦ ((𝐴𝑘) · (𝑘 𝑋)))))
 
15-Feb-2026deg1prod 33740 Degree of a product of polynomials. (Contributed by Thierry Arnoux, 15-Feb-2026.)
𝐷 = (deg1𝑅)    &   𝑃 = (Poly1𝑅)    &   𝐵 = (Base‘𝑃)    &   𝑀 = (mulGrp‘𝑃)    &    0 = (0g𝑃)    &   (𝜑𝐴 ∈ Fin)    &   (𝜑𝑅 ∈ IDomn)    &   (𝜑𝐹:𝐴⟶(𝐵 ∖ { 0 }))       (𝜑 → (𝐷‘(𝑀 Σg 𝐹)) = Σ𝑘𝐴 (𝐷‘(𝐹𝑘)))
 
15-Feb-2026assaassrd 33713 Right-associative property of an associative algebra, deduction version. (Contributed by Thierry Arnoux, 15-Feb-2026.)
𝑉 = (Base‘𝑊)    &   𝐹 = (Scalar‘𝑊)    &   𝐵 = (Base‘𝐹)    &    · = ( ·𝑠𝑊)    &    × = (.r𝑊)    &   (𝜑𝑊 ∈ AssAlg)    &   (𝜑𝐴𝐵)    &   (𝜑𝑋𝑉)    &   (𝜑𝑌𝑉)       (𝜑 → (𝑋 × (𝐴 · 𝑌)) = (𝐴 · (𝑋 × 𝑌)))
 
15-Feb-2026assaassd 33712 Left-associative property of an associative algebra, deduction version. (Contributed by Thierry Arnoux, 15-Feb-2026.)
𝑉 = (Base‘𝑊)    &   𝐹 = (Scalar‘𝑊)    &   𝐵 = (Base‘𝐹)    &    · = ( ·𝑠𝑊)    &    × = (.r𝑊)    &   (𝜑𝑊 ∈ AssAlg)    &   (𝜑𝐴𝐵)    &   (𝜑𝑋𝑉)    &   (𝜑𝑌𝑉)       (𝜑 → ((𝐴 · 𝑋) × 𝑌) = (𝐴 · (𝑋 × 𝑌)))
 
15-Feb-2026domnprodeq0 33421 A product over a domain is zero exactly when one of the factors is zero. Generalization of domneq0 20737 for any number of factors. See also domnprodn0 33420. (Contributed by Thierry Arnoux, 15-Feb-2026.)
𝑀 = (mulGrp‘𝑅)    &   𝐵 = (Base‘𝑅)    &    0 = (0g𝑅)    &   (𝜑𝑅 ∈ IDomn)    &   (𝜑𝐴 ∈ Fin)    &   (𝜑𝐹:𝐴𝐵)       (𝜑 → ((𝑀 Σg 𝐹) = 00 ∈ ran 𝐹))
 
15-Feb-2026ringm1expp1 33375 Ring exponentiation of minus one: Adding one to the exponent is the same as taking the additive inverse. (Contributed by Thierry Arnoux, 15-Feb-2026.)
1 = (1r𝑅)    &   𝑁 = (invg𝑅)    &    = (.g‘(mulGrp‘𝑅))    &   (𝜑𝑅 ∈ Ring)    &   (𝜑𝐾 ∈ ℕ0)       (𝜑 → ((𝐾 + 1) (𝑁1 )) = (𝑁‘(𝐾 (𝑁1 ))))
 
15-Feb-2026ringrngd 33370 A unital ring is a non-unital ring, deduction version. (Contributed by Thierry Arnoux, 15-Feb-2026.)
(𝜑𝑅 ∈ Ring)       (𝜑𝑅 ∈ Rng)
 
15-Feb-2026gsummulsubdishift2s 33212 Distribute a subtraction over an indexed sum, shift one of the resulting sums, and regroup terms. (Contributed by Thierry Arnoux, 15-Feb-2026.)
𝐵 = (Base‘𝑅)    &    + = (+g𝑅)    &    = (-g𝑅)    &    · = (.r𝑅)    &   (𝜑𝑅 ∈ Ring)    &   (𝜑𝐴𝐵)    &   (𝜑𝐶𝐵)    &   (𝜑𝑁 ∈ ℕ0)    &   ((𝜑𝑖 ∈ (0...𝑁)) → 𝑉𝐵)    &   (𝑖 = 0 → 𝑉 = 𝐺)    &   (𝑖 = 𝑁𝑉 = 𝐻)    &   (𝑖 = 𝑘𝑉 = 𝑃)    &   (𝑖 = (𝑘 + 1) → 𝑉 = 𝑄)    &   (𝜑𝐸 = ((𝐺 · 𝐴) (𝐻 · 𝐶)))    &   ((𝜑𝑘 ∈ (0..^𝑁)) → 𝐹 = ((𝑄 · 𝐴) (𝑃 · 𝐶)))       (𝜑 → ((𝑅 Σg (𝑘 ∈ (0...𝑁) ↦ 𝑃)) · (𝐴 𝐶)) = ((𝑅 Σg (𝑘 ∈ (0..^𝑁) ↦ 𝐹)) + 𝐸))
 
15-Feb-2026gsummulsubdishift1s 33211 Distribute a subtraction over an indexed sum, shift one of the resulting sums, and regroup terms. (Contributed by Thierry Arnoux, 15-Feb-2026.)
𝐵 = (Base‘𝑅)    &    + = (+g𝑅)    &    = (-g𝑅)    &    · = (.r𝑅)    &   (𝜑𝑅 ∈ Ring)    &   (𝜑𝐴𝐵)    &   (𝜑𝐶𝐵)    &   (𝜑𝑁 ∈ ℕ0)    &   ((𝜑𝑖 ∈ (0...𝑁)) → 𝑉𝐵)    &   (𝑖 = 0 → 𝑉 = 𝐺)    &   (𝑖 = 𝑁𝑉 = 𝐻)    &   (𝑖 = 𝑘𝑉 = 𝑃)    &   (𝑖 = (𝑘 + 1) → 𝑉 = 𝑄)    &   (𝜑𝐸 = ((𝐻 · 𝐴) (𝐺 · 𝐶)))    &   ((𝜑𝑘 ∈ (0..^𝑁)) → 𝐹 = ((𝑃 · 𝐴) (𝑄 · 𝐶)))       (𝜑 → ((𝑅 Σg (𝑘 ∈ (0...𝑁) ↦ 𝑃)) · (𝐴 𝐶)) = ((𝑅 Σg (𝑘 ∈ (0..^𝑁) ↦ 𝐹)) + 𝐸))
 
15-Feb-2026gsummulsubdishift2 33210 Distribute a subtraction over an indexed sum, shift one of the resulting sums, and regroup terms. (Contributed by Thierry Arnoux, 15-Feb-2026.)
𝐵 = (Base‘𝑅)    &    + = (+g𝑅)    &    = (-g𝑅)    &    · = (.r𝑅)    &   (𝜑𝑅 ∈ Ring)    &   (𝜑𝐴𝐵)    &   (𝜑𝐶𝐵)    &   (𝜑𝑁 ∈ ℕ0)    &   (𝜑𝐷:(0...𝑁)⟶𝐵)    &   (𝜑𝐸 = (((𝐷‘0) · 𝐴) ((𝐷𝑁) · 𝐶)))    &   ((𝜑𝑘 ∈ (0..^𝑁)) → 𝐹 = (((𝐷‘(𝑘 + 1)) · 𝐴) ((𝐷𝑘) · 𝐶)))       (𝜑 → ((𝑅 Σg 𝐷) · (𝐴 𝐶)) = ((𝑅 Σg (𝑘 ∈ (0..^𝑁) ↦ 𝐹)) + 𝐸))
 
15-Feb-2026gsummulsubdishift1 33209 Distribute a subtraction over an indexed sum, shift one of the resulting sums, and regroup terms. (Contributed by Thierry Arnoux, 15-Feb-2026.)
𝐵 = (Base‘𝑅)    &    + = (+g𝑅)    &    = (-g𝑅)    &    · = (.r𝑅)    &   (𝜑𝑅 ∈ Ring)    &   (𝜑𝐴𝐵)    &   (𝜑𝐶𝐵)    &   (𝜑𝑁 ∈ ℕ0)    &   (𝜑𝐷:(0...𝑁)⟶𝐵)    &   (𝜑𝐸 = (((𝐷𝑁) · 𝐴) ((𝐷‘0) · 𝐶)))    &   ((𝜑𝑘 ∈ (0..^𝑁)) → 𝐹 = (((𝐷𝑘) · 𝐴) ((𝐷‘(𝑘 + 1)) · 𝐶)))       (𝜑 → ((𝑅 Σg 𝐷) · (𝐴 𝐶)) = ((𝑅 Σg (𝑘 ∈ (0..^𝑁) ↦ 𝐹)) + 𝐸))
 
15-Feb-2026gsummptfzsplitla 33200 Split a group sum expressed as mapping with a finite set of sequential integers as domain into two parts, extracting a singleton from the left. (Contributed by Thierry Arnoux, 15-Feb-2026.)
𝐵 = (Base‘𝐺)    &    + = (+g𝐺)    &   (𝜑𝐺 ∈ CMnd)    &   (𝜑𝑁 ∈ (ℤ𝑀))    &   ((𝜑𝑘 ∈ (𝑀...𝑁)) → 𝑌𝐵)    &   ((𝜑𝑘 = 𝑀) → 𝑌 = 𝑋)       (𝜑 → (𝐺 Σg (𝑘 ∈ (𝑀...𝑁) ↦ 𝑌)) = (𝑋 + (𝐺 Σg (𝑘 ∈ ((𝑀 + 1)...𝑁) ↦ 𝑌))))
 
15-Feb-2026gsummptfzsplitra 33199 Split a group sum expressed as mapping with a finite set of sequential integers as domain into two parts, extracting a singleton from the right. (Contributed by Thierry Arnoux, 15-Feb-2026.)
𝐵 = (Base‘𝐺)    &    + = (+g𝐺)    &   (𝜑𝐺 ∈ CMnd)    &   (𝜑𝑁 ∈ (ℤ𝑀))    &   ((𝜑𝑘 ∈ (𝑀...𝑁)) → 𝑌𝐵)    &   ((𝜑𝑘 = 𝑁) → 𝑌 = 𝑋)       (𝜑 → (𝐺 Σg (𝑘 ∈ (𝑀...𝑁) ↦ 𝑌)) = ((𝐺 Σg (𝑘 ∈ (𝑀..^𝑁) ↦ 𝑌)) + 𝑋))
 
15-Feb-2026gsummptp1 33198 Reindex a zero-based sum as a one-base sum. (Contributed by Thierry Arnoux, 15-Feb-2026.)
𝐵 = (Base‘𝑅)    &   (𝜑𝑅 ∈ CMnd)    &   (𝜑𝑁 ∈ ℕ0)    &   ((𝜑𝑙 ∈ (1...𝑁)) → 𝑌𝐵)    &   (((𝜑𝑘 ∈ (0..^𝑁)) ∧ 𝑙 = (𝑘 + 1)) → 𝑌 = 𝑋)       (𝜑 → (𝑅 Σg (𝑘 ∈ (0..^𝑁) ↦ 𝑋)) = (𝑅 Σg (𝑙 ∈ (1...𝑁) ↦ 𝑌)))
 
15-Feb-2026gsummptrev 33197 Revert ordering in a group sum. See also gsumwrev 19389. (Contributed by Thierry Arnoux, 15-Feb-2026.)
𝐵 = (Base‘𝑀)    &   (𝜑𝑀 ∈ CMnd)    &   (𝜑𝑁 ∈ ℕ0)    &   ((𝜑𝑘 ∈ (0...𝑁)) → 𝑋𝐵)    &   (((𝜑𝑙 ∈ (0...𝑁)) ∧ 𝑘 = (𝑁𝑙)) → 𝑋 = 𝑌)       (𝜑 → (𝑀 Σg (𝑘 ∈ (0...𝑁) ↦ 𝑋)) = (𝑀 Σg (𝑙 ∈ (0...𝑁) ↦ 𝑌)))
 
15-Feb-2026gsummptfsres 33195 Extend a finitely supported group sum by padding outside with zeroes. (Contributed by Thierry Arnoux, 15-Feb-2026.)
𝐵 = (Base‘𝐺)    &    0 = (0g𝐺)    &   (𝜑𝐺 ∈ CMnd)    &   (𝜑𝐴𝑉)    &   ((𝜑𝑥 ∈ (𝐴𝑆)) → 𝑌 = 0 )    &   (𝜑 → (𝑥𝐴𝑌) finSupp 0 )    &   ((𝜑𝑥𝐴) → 𝑌𝐵)    &   (𝜑𝑆𝐴)       (𝜑 → (𝐺 Σg (𝑥𝐴𝑌)) = (𝐺 Σg (𝑥𝑆𝑌)))
 
15-Feb-2026ablcomd 33186 An abelian group operation is commutative, deduction version. (Contributed by Thierry Arnoux, 15-Feb-2026.)
𝐵 = (Base‘𝐺)    &    + = (+g𝐺)    &   (𝜑𝐺 ∈ Abel)    &   (𝜑𝑋𝐵)    &   (𝜑𝑌𝐵)       (𝜑 → (𝑋 + 𝑌) = (𝑌 + 𝑋))
 
15-Feb-2026grpinvinvd 33180 Double inverse law for groups. (Contributed by Thierry Arnoux, 15-Feb-2026.)
𝐵 = (Base‘𝐺)    &   𝑁 = (invg𝐺)    &   (𝜑𝐺 ∈ Grp)    &   (𝜑𝑋𝐵)       (𝜑 → (𝑁‘(𝑁𝑋)) = 𝑋)
 
15-Feb-2026indsn 33002 The indicator function of a singleton. (Contributed by Thierry Arnoux, 15-Feb-2026.)
((𝑂𝑉𝑋𝑂) → ((𝟭‘𝑂)‘{𝑋}) = (𝑥𝑂 ↦ if(𝑥 = 𝑋, 1, 0)))
 
15-Feb-2026nn0mnfxrd 32903 Nonnegative integers or minus infinity are extended real numbers. (Contributed by Thierry Arnoux, 15-Feb-2026.)
(𝜑𝐴 ∈ (ℕ0 ∪ {-∞}))       (𝜑𝐴 ∈ ℝ*)
 
15-Feb-2026fresunsn 32777 Recover the original function from a point-added function. See also funresdfunsn 7169 and fsnunres 7168. (Contributed by Thierry Arnoux, 15-Feb-2026.)
((𝐹 Fn 𝐴𝑋𝐴 ∧ (𝐹𝑋) = 𝑌) → ((𝐹 ↾ (𝐴 ∖ {𝑋})) ∪ {⟨𝑋, 𝑌⟩}) = 𝐹)
 
15-Feb-2026dfmo 2566 Simplify definition df-mo 2565 by removing its provable hypothesis. (Contributed by Wolf Lammen, 15-Feb-2026.)
(∃*𝑥𝜑 ↔ ∃𝑦𝑥(𝜑𝑥 = 𝑦))
 
14-Feb-2026dmqmap 38916 QMap preserves the domain. Confirms that QMap is defined exactly on the points where cosets [𝑥]𝑅 make sense (those in dom 𝑅). (Contributed by Peter Mazsa, 14-Feb-2026.)
(𝑅𝑉 → dom QMap 𝑅 = dom 𝑅)
 
14-Feb-2026ecqmap 38912 QMap fibers are singletons of blocks. Makes QMap behave like a "block constructor function" on dom 𝑅. (Contributed by Peter Mazsa, 14-Feb-2026.)
(𝐴 ∈ dom 𝑅 → [𝐴] QMap 𝑅 = {[𝐴]𝑅})
 
14-Feb-2026dfqmap3 38911 Alternate definition of the quotient map: QMap as ordered-pair class abstraction. Gives the raw set-builder characterization for extensional proofs, Rel proofs (relqmap 38915), and composition/intersection manipulations. (Contributed by Peter Mazsa, 14-Feb-2026.)
QMap 𝑅 = {⟨𝑥, 𝑦⟩ ∣ (𝑥 ∈ dom 𝑅𝑦 = [𝑥]𝑅)}
 
14-Feb-2026dfqmap2 38910 Alternate definition of the quotient map: QMap in image-of-singleton form. (Contributed by Peter Mazsa, 14-Feb-2026.)
QMap 𝑅 = (𝑥 ∈ dom 𝑅 ↦ (𝑅 “ {𝑥}))
 
12-Feb-2026disjqmap 39290 Disjointness of QMap equals unique generation of the quotient carrier. The cleaned, carrier-respecting version of disjqmap2 39289. This is the statement "each equivalence class has a unique representative" for the general coset carrier (dom 𝑅 / 𝑅). (Contributed by Peter Mazsa, 12-Feb-2026.)
(𝑅𝑉 → ( Disj QMap 𝑅 ↔ ∀𝑢 ∈ (dom 𝑅 / 𝑅)∃!𝑡 ∈ dom 𝑅 𝑢 = [𝑡]𝑅))
 
12-Feb-2026disjqmap2 39289 Disjointness of QMap equals ∃*-generation. Pairs with disjqmap 39290 and raldmqseu 38828 to move between ∃* and ∃! depending on context. (Contributed by Peter Mazsa, 12-Feb-2026.)
(𝑅𝑉 → ( Disj QMap 𝑅 ↔ ∀𝑢∃*𝑡 ∈ dom 𝑅 𝑢 = [𝑡]𝑅))
 
12-Feb-2026qmapeldisjs 39288 When 𝑅 is a set (e.g., when it is an element of the class of relations df-rels 38903), the quotient map element of the class of disjoint relations and the disjoint relation predicate for quotient maps are the same. (Contributed by Peter Mazsa, 12-Feb-2026.)
(𝑅𝑉 → ( QMap 𝑅 ∈ Disjs ↔ Disj QMap 𝑅))
 
12-Feb-2026rnqmap 38917 The range of the quotient map is the quotient carrier. It lets us replace quotient-carrier reasoning by map/range reasoning (and conversely) via df-qmap 38909 and dfqs2 8680. (Contributed by Peter Mazsa, 12-Feb-2026.)
ran QMap 𝑅 = (dom 𝑅 / 𝑅)
 
12-Feb-2026relqmap 38915 Quotient map is a relation. Guarantees that QMap can be composed, restricted, and used in other relation infrastructure (e.g., membership in Disjs, Rels-based typing). (Contributed by Peter Mazsa, 12-Feb-2026.)
Rel QMap 𝑅
 
12-Feb-2026qmapex 38914 Quotient map exists if 𝑅 exists. Type-safety: ensures QMap is a set under the standard "relation sethood" hypothesis. (Contributed by Peter Mazsa, 12-Feb-2026.)
(𝑅𝑉 → QMap 𝑅 ∈ V)
 
12-Feb-2026df-qmap 38909 Define the quotient map (coset map), see also dfqmap2 38910 and dfqmap3 38911. QMap 𝑅 is the "send a generator / domain element to its 𝑅 -coset" map: it maps each 𝑥 ∈ dom 𝑅 to the block [𝑥]𝑅. Makes the quotient operation / structurally explicit as the range of a canonical map (see dfqs2 8680, rnqmap 38917). This is crucial for

(i) modular "two-layer" characterizations (map layer + carrier layer) such as dfdisjs6 39405 / dfdisjs7 39406,

(ii) transport of properties between a relation and its induced quotient-carrier (e.g. "elements are blocks" via rnqmap 38917), and

(iii) expressing stability/invariance constraints as ordinary conditions on a graph (e.g. ran QMap 𝑟 ∈ ElDisjs, QMap 𝑟 ∈ Disjs). (Contributed by Peter Mazsa, 12-Feb-2026.)

QMap 𝑅 = (𝑥 ∈ dom 𝑅 ↦ [𝑥]𝑅)
 
11-Feb-2026nfale2 42797 An inner existential quantifier's variable is bound. (Contributed by SN, 11-Feb-2026.)
𝑥𝑦𝑥𝜑
 
11-Feb-2026nfe2 42796 An inner existential quantifier's variable is bound. (Contributed by SN, 11-Feb-2026.)
𝑥𝑦𝑥𝜑
 
11-Feb-2026nfalh 42795 Version of nfal 2354 with an 'h' hypothesis, avoiding ax-12 2211. (Contributed by SN, 11-Feb-2026.)
(𝜑 → ∀𝑥𝜑)       𝑥𝑦𝜑
 
11-Feb-2026eldisjsim3 39400 Disjs implies element-disjoint quotient carrier. Exports the carrier-disjointness property in the ElDisjs packaging. (Contributed by Peter Mazsa, 11-Feb-2026.)
(𝑅 ∈ Disjs → (dom 𝑅 / 𝑅) ∈ ElDisjs )
 
11-Feb-2026disjsssrels 39399 The class of disjoint relations is a subclass of the class of relations. (Contributed by Peter Mazsa, 11-Feb-2026.)
Disjs ⊆ Rels
 
11-Feb-2026eldisjsim2 39398 An element of the class of disjoint relations is an element of the class of relations. (Contributed by Peter Mazsa, 11-Feb-2026.)
(𝑅 ∈ Disjs → 𝑅 ∈ Rels )
 
11-Feb-2026eldisjsim1 39397 An element of the class of disjoint relations is disjoint. (Contributed by Peter Mazsa, 11-Feb-2026.)
(𝑅 ∈ Disjs → Disj 𝑅)
 
11-Feb-2026nfexa2 2210 An inner universal quantifier's variable is bound. (Contributed by SN, 11-Feb-2026.)
𝑥𝑦𝑥𝜑
 
11-Feb-2026nfexhe 2209 Version of nfex 2355 with the existential dual to the 'h' hypothesis, avoiding ax-12 2211. (Contributed by SN, 11-Feb-2026.)
(∃𝑥𝜑𝜑)       𝑥𝑦𝜑
 
10-Feb-2026eldisjdmqsim 39280 Shared output implies equal cosets (under ElDisj of quotient): if 𝑢 and 𝑣 both relate to the same 𝑥, then their cosets intersect, hence must coincide under quotient ElDisj. (Contributed by Peter Mazsa, 10-Feb-2026.)
(( ElDisj (dom 𝑅 / 𝑅) ∧ 𝑅 ∈ Rels ) → ((𝑢𝑅𝑥𝑣𝑅𝑥) → [𝑢]𝑅 = [𝑣]𝑅))
 
10-Feb-2026eldisjdmqsim2 39279 ElDisj of quotient implies coset-disjointness (domain form). Converts element-disjointness of the quotient carrier into a usable "cosets don't overlap unless equal" rule. (Contributed by Peter Mazsa, 10-Feb-2026.)
(( ElDisj (dom 𝑅 / 𝑅) ∧ 𝑅 ∈ Rels ) → ((𝑢 ∈ dom 𝑅𝑣 ∈ dom 𝑅) → (([𝑢]𝑅 ∩ [𝑣]𝑅) ≠ ∅ → [𝑢]𝑅 = [𝑣]𝑅)))
 
10-Feb-2026enssdom 8953 Equinumerosity implies dominance. (Contributed by NM, 31-Mar-1998.) (Proof shortened by TM, 10-Feb-2026.)
≈ ⊆ ≼
 
10-Feb-2026f1oi 6841 A restriction of the identity relation is a one-to-one onto function. (Contributed by NM, 30-Apr-1998.) (Proof shortened by Andrew Salmon, 22-Oct-2011.) Avoid ax-12 2211. (Revised by TM, 10-Feb-2026.)
( I ↾ 𝐴):𝐴1-1-onto𝐴
 
9-Feb-2026rsp3eq 38830 From a restricted universal statement over 𝐴, specialize to an arbitrary element class, cf. rsp3 38829. (Contributed by Peter Mazsa, 9-Feb-2026.)
𝑥𝐴    &   𝑦𝐴    &   𝑦𝜑    &   𝑥𝜓    &   (𝑥 = 𝑦 → (𝜑𝜓))       (∀𝑥𝐴 𝜑 → ((𝑦 = 𝐵𝐵𝐴) → 𝜓))
 
9-Feb-2026rsp3 38829 From a restricted universal statement over 𝐴, specialize to an arbitrary element 𝑦𝐴, cf. rsp 3249. (Contributed by Peter Mazsa, 9-Feb-2026.)
𝑥𝐴    &   𝑦𝐴    &   𝑦𝜑    &   𝑥𝜓    &   (𝑥 = 𝑦 → (𝜑𝜓))       (∀𝑥𝐴 𝜑 → (𝑦𝐴𝜓))
 
6-Feb-2026eldisjim3 39278 ElDisj elimination (two chosen elements). Standard specialization lemma: from ElDisj 𝐴 infer the disjointness condition for two specific elements. (Contributed by Peter Mazsa, 6-Feb-2026.)
( ElDisj 𝐴 → ((𝐵𝐴𝐶𝐴) → ((𝐵𝐶) ≠ ∅ → 𝐵 = 𝐶)))
 
6-Feb-2026raldmqseu 38828 Equivalence between "exactly one" on the quotient carrier and "at most one" globally. Provides a type-safe way to talk about unique representatives either as ∃! on the intended carrier or as a global ∃* statement. (Contributed by Peter Mazsa, 6-Feb-2026.)
(𝑅𝑉 → (∀𝑢 ∈ (dom 𝑅 / 𝑅)∃!𝑡 ∈ dom 𝑅 𝑢 = [𝑡]𝑅 ↔ ∀𝑢∃*𝑡 ∈ dom 𝑅 𝑢 = [𝑡]𝑅))
 
6-Feb-2026raldmqsmo 38826 On the quotient carrier, "at most one" and "exactly one" coincide for coset witnesses. (Contributed by Peter Mazsa, 6-Feb-2026.)
(∀𝑢 ∈ (dom 𝑅 / 𝑅)∃*𝑡 ∈ dom 𝑅 𝑢 = [𝑡]𝑅 ↔ ∀𝑢 ∈ (dom 𝑅 / 𝑅)∃!𝑡 ∈ dom 𝑅 𝑢 = [𝑡]𝑅)
 
5-Feb-2026disjimeldisjdmqs 39396 Disj implies element-disjoint quotient carrier. Supplies the carrier-disjointness half of the Disjs pattern: under Disj 𝑅, the coset family is element-disjoint. (Contributed by Peter Mazsa, 5-Feb-2026.)
( Disj 𝑅 → ElDisj (dom 𝑅 / 𝑅))
 
5-Feb-2026disjimdmqseq 39272 Disjointness implies unique-generation of quotient blocks. Converts existence-quotient comprehension (see df-qs 8679) into a uniqueness-comprehension under disjointness; rewrites (dom 𝑅 / 𝑅) carriers as exactly the class of blocks with a unique representative. This is the "unique generator per block" content in a carrier-normal form. (Contributed by Peter Mazsa, 5-Feb-2026.)
( Disj 𝑅 → (dom 𝑅 / 𝑅) = {𝑡 ∣ ∃!𝑢 ∈ dom 𝑅 𝑡 = [𝑢]𝑅})
 
5-Feb-2026disjimrmoeqec 39271 Under Disj, every block has a unique generator (∃* form). If 𝑡 is a block in the quotient sense, then there is a uniquely determined 𝑢 in dom 𝑅 such that 𝑡 = [𝑢]𝑅. This is the existence+uniqueness engine behind Disjs and QMap characterizations: it is the "representative theorem" from which the ∃! forms are obtained. (Contributed by Peter Mazsa, 5-Feb-2026.)
( Disj 𝑅 → ∃*𝑢 ∈ dom 𝑅 𝑡 = [𝑢]𝑅)
 
4-Feb-2026ss2rabd 4025 Subclass of a restricted class abstraction (deduction form). Saves ax-10 2174, ax-11 2190, ax-12 2211 over using ss2rab 4022 and sylibr 236. (Contributed by SN, 4-Feb-2026.)
(𝜑 → ∀𝑥𝐴 (𝜓𝜒))       (𝜑 → {𝑥𝐴𝜓} ⊆ {𝑥𝐴𝜒})
 
4-Feb-2026sbtlem 2093 In the case of sbt 2094, rename-sb 2088 is derivable from propositional axioms and ax-gen 1814 alone. The essential proof step is presented in this lemma. (Contributed by Wolf Lammen, 4-Feb-2026.)
𝜑       𝑦(𝑦 = 𝑡 → ∀𝑥(𝑥 = 𝑦𝜑))
 
3-Feb-2026disjimeceqbi 39269 Disj gives biconditional injectivity (domain-wise). Strengthens injectivity to an iff. (Contributed by Peter Mazsa, 3-Feb-2026.)
( Disj 𝑅 → ∀𝑢 ∈ dom 𝑅𝑣 ∈ dom 𝑅([𝑢]𝑅 = [𝑣]𝑅𝑢 = 𝑣))
 
3-Feb-2026disjimeceqim 39267 Disj implies coset-equality injectivity (domain-wise). Extracts the practical consequence of Disj: the map 𝑢 ↦ [𝑢]𝑅 is injective on dom 𝑅. This is exactly the "canonicity" property used repeatedly when turning ∃* into ∃! and when reasoning about uniqueness of representatives. (Contributed by Peter Mazsa, 3-Feb-2026.)
( Disj 𝑅 → ∀𝑢 ∈ dom 𝑅𝑣 ∈ dom 𝑅([𝑢]𝑅 = [𝑣]𝑅𝑢 = 𝑣))
 
3-Feb-2026dfdisjALTV5a 39266 Alternate definition of the disjoint relation predicate. Disj 𝑅 means: different domain generators have disjoint cosets (unless the generators are equal), plus Rel 𝑅 for relation-typedness. This is the characterization that makes canonicity/uniqueness arguments modular. It is the starting point for the entire "Disj unique representative per block" pipeline that feeds into Disjs, see dfdisjs7 39406. (Contributed by Peter Mazsa, 3-Feb-2026.)
( Disj 𝑅 ↔ (∀𝑢 ∈ dom 𝑅𝑣 ∈ dom 𝑅(([𝑢]𝑅 ∩ [𝑣]𝑅) ≠ ∅ → 𝑢 = 𝑣) ∧ Rel 𝑅))
 
2-Feb-2026ralrnmo 38824 On the range, "at most one" becomes "exactly one". (Contributed by Peter Mazsa, 27-Sep-2018.) (Revised by Peter Mazsa, 2-Feb-2026.)
(∀𝑥 ∈ ran 𝑅∃*𝑢 𝑢𝑅𝑥 ↔ ∀𝑥 ∈ ran 𝑅∃!𝑢 𝑢𝑅𝑥)
 
2-Feb-2026ralmo 38823 "At most one" can be restricted to the range. (Contributed by Peter Mazsa, 2-Feb-2026.)
(∀𝑥∃*𝑢 𝑢𝑅𝑥 ↔ ∀𝑥 ∈ ran 𝑅∃*𝑢 𝑢𝑅𝑥)
 
2-Feb-2026mptelee 29041 A condition for a mapping to be an element of a Euclidean space. (Contributed by Scott Fenton, 7-Jun-2013.) (Proof shortened by SN, 2-Feb-2026.)
(𝑁 ∈ ℕ → ((𝑘 ∈ (1...𝑁) ↦ (𝐴𝐹𝐵)) ∈ (𝔼‘𝑁) ↔ ∀𝑘 ∈ (1...𝑁)(𝐴𝐹𝐵) ∈ ℝ))
 
2-Feb-2026moabex 5424 "At most one" existence implies a class abstraction exists. (Contributed by NM, 30-Dec-1996.) Avoid axioms. (Revised by SN, 2-Feb-2026.)
(∃*𝑥𝜑 → {𝑥𝜑} ∈ V)
 
2-Feb-2026iunss 5001 Subset theorem for an indexed union. (Contributed by NM, 13-Sep-2003.) (Proof shortened by Andrew Salmon, 25-Jul-2011.) Avoid ax-10 2174, ax-12 2211. (Revised by SN, 2-Feb-2026.)
( 𝑥𝐴 𝐵𝐶 ↔ ∀𝑥𝐴 𝐵𝐶)
 
2-Feb-2026iunssf 4999 Subset theorem for an indexed union. (Contributed by Glauco Siliprandi, 3-Mar-2021.) Avoid ax-10 2174. (Revised by SN, 2-Feb-2026.)
𝑥𝐶       ( 𝑥𝐴 𝐵𝐶 ↔ ∀𝑥𝐴 𝐵𝐶)
 
1-Feb-2026xp0 5745 The Cartesian product with the empty set is empty. Part of Theorem 3.13(ii) of [Monk1] p. 37. (Contributed by NM, 12-Apr-2004.) Avoid axioms. (Revised by TM, 1-Feb-2026.)
(𝐴 × ∅) = ∅
 
1-Feb-2026uni0 4893 The union of the empty set is the empty set. Theorem 8.7 of [Quine] p. 54. (Contributed by NM, 16-Sep-1993.) Remove use of ax-nul 5255. (Revised by Eric Schmidt, 4-Apr-2007.) Avoid ax-11 2190. (Revised by TM, 1-Feb-2026.)
∅ = ∅
 
1-Feb-2026rabss2 4030 Subclass law for restricted abstraction. (Contributed by NM, 18-Dec-2004.) (Proof shortened by Andrew Salmon, 26-Jun-2011.) Avoid axioms. (Revised by TM, 1-Feb-2026.)
(𝐴𝐵 → {𝑥𝐴𝜑} ⊆ {𝑥𝐵𝜑})
 
1-Feb-2026ss2rabdv 4028 Deduction of restricted abstraction subclass from implication. (Contributed by NM, 30-May-2006.) Avoid axioms. (Revised by TM, 1-Feb-2026.)
((𝜑𝑥𝐴) → (𝜓𝜒))       (𝜑 → {𝑥𝐴𝜓} ⊆ {𝑥𝐴𝜒})
 
31-Jan-2026cnv0 5853 The converse of the empty set. (Contributed by NM, 6-Apr-1998.) Remove dependency on ax-sep 5245, ax-nul 5255, ax-pr 5389. (Revised by KP, 25-Oct-2021.) Avoid ax-12 2211. (Revised by TM, 31-Jan-2026.)
∅ = ∅
 
30-Jan-2026chnsuslle 47421 Length of a subsequence is bounded by the length of original chain. (Contributed by Ender Ting, 30-Jan-2026.)
(𝜑𝑊 ∈ ( < Chain 𝐴))    &   (𝜑𝐼 ∈ ( < Chain (0..^(♯‘𝑊))))    &   (𝜑< Po 𝐴)       (𝜑 → (♯‘(𝑊𝐼)) ≤ (♯‘𝑊))
 
30-Jan-2026dfsuccl4 38937 Alternate definition that incorporates the most desirable properties of the successor class. (Contributed by Peter Mazsa, 30-Jan-2026.)
Suc = {𝑛 ∣ ∃!𝑚𝑛 (𝑚𝑛 ∧ suc 𝑚 = 𝑛)}
 
30-Jan-2026dfsuccl3 38936 Alternate definition of the class of all successors. (Contributed by Peter Mazsa, 30-Jan-2026.)
Suc = {𝑛 ∣ ∃!𝑚 suc 𝑚 = 𝑛}
 
29-Jan-2026nthrucw 47426 Some number sets form a chain of proper subsets. This is rephrasing nthruc 16267 as a statement about chains; the hypothesis sets the ordering relation to be "is a proper subset". The theorem talks about singleton 1, natural numbers, natural-or-zero numbers, integers, rational numbers, algebraic reals (the definition includes complex numbers as algebraic so intersection is taken), real numbers and complex numbers, which are proper subsets in order. (Contributed by Ender Ting, 29-Jan-2026.)
< = {⟨𝑥, 𝑦⟩ ∣ 𝑥𝑦}       ⟨“{1}ℕℕ0ℤℚ(𝔸 ∩ ℝ)ℝℂ”⟩ ∈ ( < Chain V)
 
29-Jan-2026chner 47425 Any two elements are equivalent in a chain constructed on an equivalence relation. (Contributed by Ender Ting, 29-Jan-2026.)
(𝜑 Er 𝐴)    &   (𝜑𝐶 ∈ ( Chain 𝐴))    &   (𝜑𝐽 ∈ (0..^(♯‘𝐶)))    &   (𝜑𝐼 ∈ (0..^(♯‘𝐶)))       (𝜑 → (𝐶𝐼) (𝐶𝐽))
 
29-Jan-2026chnerlem3 47424 Lemma for chner 47425- trichotomy of integers within the word's domain. (Contributed by Ender Ting, 29-Jan-2026.)
(𝜑 Er 𝐴)    &   (𝜑𝐶 ∈ ( Chain 𝐴))    &   (𝜑𝐽 ∈ (0..^(♯‘𝐶)))    &   (𝜑𝐼 ∈ (0..^(♯‘𝐶)))       (𝜑 → (𝐼 ∈ (0..^𝐽) ∨ 𝐽 ∈ (0..^𝐼) ∨ 𝐼 = 𝐽))
 
29-Jan-2026chnerlem2 47423 Lemma for chner 47425 where the I-th element comes before the J-th. (Contributed by Ender Ting, 29-Jan-2026.)
(𝜑 Er 𝐴)    &   (𝜑𝐶 ∈ ( Chain 𝐴))    &   (𝜑𝐽 ∈ (0..^(♯‘𝐶)))       ((𝜑𝐼 ∈ (0..^𝐽)) → (𝐶𝐼) (𝐶𝐽))
 
29-Jan-2026chnerlem1 47422 In a chain constructed on an equivalence relation, the last element is equivalent to any. This theorem is a translation of chnub 18637 to equivalence relations. (Contributed by Ender Ting, 29-Jan-2026.)
(𝜑 Er 𝐴)    &   (𝜑𝐶 ∈ ( Chain 𝐴))    &   (𝜑𝐽 ∈ (0..^(♯‘𝐶)))       (𝜑 → (𝐶𝐽) (lastS‘𝐶))
 
29-Jan-2026dfsuccl2 38933 Alternate definition of the class of all successors. (Contributed by Peter Mazsa, 29-Jan-2026.)
Suc = {𝑛 ∣ ∃𝑚 suc 𝑚 = 𝑛}
 
29-Jan-2026dfblockliftmap2 38924 Alternate definition of the block lift map. (Contributed by Peter Mazsa, 29-Jan-2026.)
(𝑅 BlockLiftMap 𝐴) = (𝑚 ∈ (𝐴 ∩ (dom 𝑅 ∖ {∅})) ↦ ([𝑚]𝑅 × 𝑚))
 
29-Jan-2026dmxrncnvepres2 38896 Domain of the range product with restricted converse epsilon relation. (Contributed by Peter Mazsa, 29-Jan-2026.)
dom (𝑅 ⋉ ( E ↾ 𝐴)) = (𝐴 ∩ (dom 𝑅 ∖ {∅}))
 
29-Jan-2026frgr2wwlkeu 30475 For two different vertices in a friendship graph, there is exactly one third vertex being the middle vertex of a (simple) path/walk of length 2 between the two vertices. (Contributed by Alexander van der Vekens, 18-Feb-2018.) (Revised by AV, 12-May-2021.) (Proof shortened by AV, 4-Jan-2022.) (Revised by Ender Ting, 29-Jan-2026.)
𝑉 = (Vtx‘𝐺)       ((𝐺 ∈ FriendGraph ∧ (𝐴𝑉𝐵𝑉) ∧ 𝐴𝐵) → ∃!𝑐𝑉 ⟨“𝐴𝑐𝐵”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐵))
 
29-Jan-2026usgr2wspthon 30114 A simple path of length 2 between two vertices corresponds to two adjacent edges in a simple graph. (Contributed by Alexander van der Vekens, 9-Mar-2018.) (Revised by AV, 17-May-2021.) (Revised by Ender Ting, 29-Jan-2026.)
𝑉 = (Vtx‘𝐺)    &   𝐸 = (Edg‘𝐺)       ((𝐺 ∈ USGraph ∧ (𝐴𝑉𝐶𝑉)) → (𝑇 ∈ (𝐴(2 WSPathsNOn 𝐺)𝐶) ↔ ∃𝑏𝑉 ((𝑇 = ⟨“𝐴𝑏𝐶”⟩ ∧ 𝐴𝐶) ∧ ({𝐴, 𝑏} ∈ 𝐸 ∧ {𝑏, 𝐶} ∈ 𝐸))))
 
29-Jan-2026usgr2wspthons3 30113 A simple path of length 2 between two vertices represented as length 3 string corresponds to two adjacent edges in a simple graph. (Contributed by Alexander van der Vekens, 8-Mar-2018.) (Revised by AV, 17-May-2021.) (Proof shortened by AV, 16-Mar-2022.) (Revised by Ender Ting, 29-Jan-2026.)
𝑉 = (Vtx‘𝐺)    &   𝐸 = (Edg‘𝐺)       ((𝐺 ∈ USGraph ∧ (𝐴𝑉𝐵𝑉𝐶𝑉)) → (⟨“𝐴𝐵𝐶”⟩ ∈ (𝐴(2 WSPathsNOn 𝐺)𝐶) ↔ (𝐴𝐶 ∧ {𝐴, 𝐵} ∈ 𝐸 ∧ {𝐵, 𝐶} ∈ 𝐸)))
 
29-Jan-2026wpthswwlks2on 30110 For two different vertices, a walk of length 2 between these vertices is a simple path of length 2 between these vertices in a simple graph. (Contributed by Alexander van der Vekens, 2-Mar-2018.) (Revised by AV, 16-Mar-2022.) (Revised by Ender Ting, 29-Jan-2026.)
((𝐺 ∈ USGraph ∧ 𝐴𝐵) → (𝐴(2 WSPathsNOn 𝐺)𝐵) = (𝐴(2 WWalksNOn 𝐺)𝐵))
 
29-Jan-2026elwspths2onw 30109 A simple path of length 2 between two vertices (in a simple pseudograph) as length 3 string. This theorem avoids the Axiom of Choice for its proof, at the cost of requiring a simple graph; the more general version is elwspths2on 30108. (Contributed by Ender Ting, 29-Jan-2026.)
𝑉 = (Vtx‘𝐺)       ((𝐺 ∈ USPGraph ∧ 𝐴𝑉𝐶𝑉) → (𝑊 ∈ (𝐴(2 WSPathsNOn 𝐺)𝐶) ↔ ∃𝑏𝑉 (𝑊 = ⟨“𝐴𝑏𝐶”⟩ ∧ ⟨“𝐴𝑏𝐶”⟩ ∈ (𝐴(2 WSPathsNOn 𝐺)𝐶))))
 
29-Jan-2026usgrwwlks2on 30104 A walk of length 2 between two vertices as word in a simple graph. This theorem is analogous to umgrwwlks2on 30105 except it talks about simple graphs and therefore does not require the Axiom of Choice for its proof. (Contributed by Ender Ting, 29-Jan-2026.)
𝑉 = (Vtx‘𝐺)    &   𝐸 = (Edg‘𝐺)       ((𝐺 ∈ USGraph ∧ (𝐴𝑉𝐵𝑉𝐶𝑉)) → (⟨“𝐴𝐵𝐶”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐶) ↔ ({𝐴, 𝐵} ∈ 𝐸 ∧ {𝐵, 𝐶} ∈ 𝐸)))
 
29-Jan-2026elreno2 28565 Alternate characterization of the surreal reals. Theorem 4.4(b) of [Gonshor] p. 39. (Contributed by Scott Fenton, 29-Jan-2026.)
(𝐴 ∈ ℝs ↔ (𝐴 No ∧ (∃𝑛 ∈ ℕs (( -us𝑛) <s 𝐴𝐴 <s 𝑛) ∧ ∀𝑥𝑂 ∈ (( L ‘𝐴) ∪ ( R ‘𝐴))∃𝑛 ∈ ℕs ( 1s /su 𝑛) ≤s (abss‘(𝐴 -s 𝑥𝑂)))))
 
29-Jan-2026abssubs 28320 Swapping order of surreal subtraction doesn't change the absolute value. (Contributed by Scott Fenton, 29-Jan-2026.)
((𝐴 No 𝐵 No ) → (abss‘(𝐴 -s 𝐵)) = (abss‘(𝐵 -s 𝐴)))
 
29-Jan-2026lesubsd 28166 Swap subtrahends in a surreal inequality. (Contributed by Scott Fenton, 29-Jan-2026.)
(𝜑𝐴 No )    &   (𝜑𝐵 No )    &   (𝜑𝐶 No )       (𝜑 → (𝐴 ≤s (𝐵 -s 𝐶) ↔ 𝐶 ≤s (𝐵 -s 𝐴)))
 
28-Jan-2026dfsucmap4 38928 Alternate definition of the successor map. (Contributed by Peter Mazsa, 28-Jan-2026.)
SucMap = (𝑚 ∈ V ↦ suc 𝑚)
 
28-Jan-2026dfsucmap2 38927 Alternate definition of the successor map. (Contributed by Peter Mazsa, 28-Jan-2026.)
SucMap = ( I AdjLiftMap dom I )
 
28-Jan-2026dfsucmap3 38926 Alternate definition of the successor map. (Contributed by Peter Mazsa, 28-Jan-2026.)
SucMap = ( I AdjLiftMap V)
 
28-Jan-2026blockadjliftmap 38921 A "two-stage" construction is obtained by first forming the block relation (𝑅 E ) and then adjoining elements as "BlockAdj". Combined, it uses the relation ((𝑅 E ) ∪ E ). (Contributed by Peter Mazsa, 28-Jan-2026.)
((𝑅 E ) AdjLiftMap 𝐴) = {⟨𝑚, 𝑛⟩ ∣ (𝑚 ∈ (𝐴 ∖ {∅}) ∧ 𝑛 = (𝑚 ∪ ([𝑚]𝑅 × 𝑚)))}
 
28-Jan-2026dfadjliftmap2 38920 Alternate definition of the adjoined lift map. (Contributed by Peter Mazsa, 28-Jan-2026.)
(𝑅 AdjLiftMap 𝐴) = (𝑚 ∈ (𝐴 ∩ (dom 𝑅 ∪ (V ∖ {∅}))) ↦ (𝑚 ∪ [𝑚]𝑅))
 
28-Jan-2026ecuncnvepres 38858 The restricted union with converse epsilon relation coset of 𝐵. (Contributed by Peter Mazsa, 28-Jan-2026.)
(𝐵𝐴 → [𝐵]((𝑅 E ) ↾ 𝐴) = (𝐵 ∪ [𝐵]𝑅))
 
28-Jan-2026ecunres 38857 The restricted union coset of 𝐵. (Contributed by Peter Mazsa, 28-Jan-2026.)
(𝐵𝑉 → [𝐵]((𝑅𝑆) ↾ 𝐴) = ([𝐵](𝑅𝐴) ∪ [𝐵](𝑆𝐴)))
 
28-Jan-2026ecun 38856 The union coset of 𝐴. (Contributed by Peter Mazsa, 28-Jan-2026.)
(𝐴𝑉 → [𝐴](𝑅𝑆) = ([𝐴]𝑅 ∪ [𝐴]𝑆))
 
28-Jan-2026dmxrnuncnvepres 38855 Domain of the combined relation of two special relations, see blockadjliftmap 38921. (Contributed by Peter Mazsa, 28-Jan-2026.)
dom (((𝑅 E ) ∪ E ) ↾ 𝐴) = (𝐴 ∖ {∅})
 
28-Jan-2026dmuncnvepres 38854 Domain of the union with the converse epsilon, restricted. (Contributed by Peter Mazsa, 28-Jan-2026.)
dom ((𝑅 E ) ↾ 𝐴) = (𝐴 ∩ (dom 𝑅 ∪ (V ∖ {∅})))
 
28-Jan-2026dmcnvepres 38853 Domain of the restricted converse epsilon relation. (Contributed by Peter Mazsa, 28-Jan-2026.)
dom ( E ↾ 𝐴) = (𝐴 ∖ {∅})
 
28-Jan-2026sps3wwlks2on 30103 A length 3 string which represents a walk of length 2 between two vertices. Concerns simple pseudographs, in contrast to s3wwlks2on 30102 and does not require the Axiom of Choice for its proof. (Contributed by Ender Ting, 28-Jan-2026.)
𝑉 = (Vtx‘𝐺)       ((𝐺 ∈ USPGraph ∧ 𝐴𝑉𝐶𝑉) → (⟨“𝐴𝐵𝐶”⟩ ∈ (𝐴(2 WWalksNOn 𝐺)𝐶) ↔ ∃𝑓(𝑓(Walks‘𝐺)⟨“𝐴𝐵𝐶”⟩ ∧ (♯‘𝑓) = 2)))
 
27-Jan-2026sucpre 38960 suc is a right-inverse of pre on Suc. This theorem states the partial inverse relation in the direction we most often need. (Contributed by Peter Mazsa, 27-Jan-2026.)
(𝑁 ∈ Suc → suc pre 𝑁 = 𝑁)
 
27-Jan-2026eupre 38957 Unique predecessor exists on the successor class. (Contributed by Peter Mazsa, 27-Jan-2026.)
(𝑁𝑉 → (𝑁 ∈ Suc ↔ ∃!𝑚 𝑚 SucMap 𝑁))
 
27-Jan-2026dfpre 38939 Alternate definition of the successor-predecessor. (Contributed by Peter Mazsa, 27-Jan-2026.)
pre 𝑁 = (℩𝑚𝑚 ∈ Pred( SucMap , V, 𝑁))
 
27-Jan-2026df-pre 38938 Define the term-level successor-predecessor. It is the unique 𝑚 with suc 𝑚 = 𝑁 when such an 𝑚 exists; otherwise pre 𝑁 is the arbitrary default chosen by . See its alternate definitions dfpre 38939, dfpre2 38940, dfpre3 38941 and dfpre4 38943.

Our definition is a special case of the widely recognised general 𝑅 -predecessor class df-pred 6284 (the class of all elements 𝑚 of 𝐴 such that 𝑚𝑅𝑁, dfpred3g 6296, cf. also df-bnj14 34949) in several respects. Its most abstract property as a specialisation is that it has a unique existing value by default. This is in contrast to the general version. The uniqueness (conditional on existence) is implied by the property of this specific instance of the general case involving the successor map df-sucmap 38925 in place of 𝑅, so that 𝑚 SucMap 𝑁, cf. sucmapleftuniq 38953, which originates from suc11reg 9571. Existence 𝑚𝑚 SucMap 𝑁 holds exactly on 𝑁 ∈ ran SucMap, cf. elrng 5865.

Note that dom SucMap = V (see dmsucmap 38931), so the equivalent definition dfpre 38939 uses (℩𝑚𝑚 ∈ Pred( SucMap , V, 𝑁)). (Contributed by Peter Mazsa, 27-Jan-2026.)

pre 𝑁 = (℩𝑚𝑚 ∈ Pred( SucMap , dom SucMap , 𝑁))
 
26-Jan-2026dfpre4 38943 Alternate definition of the predecessor of the 𝑁 set. The SucMap is just the "PreMap"; we did not define it because we do not expect to use it extensively in future (cf. the comments of df-sucmap 38925). (Contributed by Peter Mazsa, 26-Jan-2026.)
(𝑁𝑉 → pre 𝑁 = (℩𝑚𝑚 ∈ [𝑁] SucMap ))
 
26-Jan-2026dfpred4 38942 Alternate definition of the predecessor class when 𝑁 is a set. (Contributed by Peter Mazsa, 26-Jan-2026.)
(𝑁𝑉 → Pred(𝑅, 𝐴, 𝑁) = [𝑁](𝑅𝐴))
 
25-Jan-2026df-shiftstable 38945 Define shift-stability, a general "procedure" pattern for "the one-step backward shift/transport of 𝐹 along 𝑆", and then 𝐹 enforces "and it already holds here".

Let 𝐹 be a relation encoding a property that depends on a "level" coordinate (for example, a feasibility condition indexed by a carrier, a grade, or a stage in a construction). Let 𝑆 be a shift relation between levels (for example, the successor map SucMap, or any other grading step).

The composed relation (𝑆𝐹) transports 𝐹 one step along the shift: 𝑟(𝑆𝐹)𝑛 means there exists a predecessor level 𝑚 such that 𝑟𝐹𝑚 and 𝑚𝑆𝑛 (e.g., 𝑚 SucMap 𝑛). We do not introduce a separate notation for "Shift" because it is simply the standard relational composition df-co 5654.

The intersection ((𝑆𝐹) ∩ 𝐹) is the locally shift-stable fragment of 𝐹: it consists exactly of those points where the property holds at some immediate predecessor that shifts to 𝑛 and also holds at level 𝑛. In other words, it isolates the part of 𝐹 that is already compatible with one-step tower coherence.

This definition packages a common construction pattern used throughout the development: "constrain by one-step stability under a chosen shift, then additionally constrain by 𝐹". Iterating the operator (𝑋 ↦ ((𝑆𝑋) ∩ 𝑋) corresponds to multi-step/tower coherence; the one-step definition here is the economical kernel from which such "tower" readings can be developed when needed. (Contributed by Peter Mazsa, 25-Jan-2026.)

(𝑆 ShiftStable 𝐹) = ((𝑆𝐹) ∩ 𝐹)
 
25-Jan-2026df-succl 38932 Define Suc as the class of all successors, i.e. the range of the successor map: 𝑛 ∈ Suc iff 𝑚suc 𝑚 = 𝑛 (see dfsuccl2 38933). By injectivity of suc (suc11reg 9571), every 𝑛 ∈ Suc has at most one predecessor, which is exactly what pre 𝑛 (df-pre 38938) names. Cf. dfsuccl3 38936 and dfsuccl4 38937. (Contributed by Peter Mazsa, 25-Jan-2026.)
Suc = ran SucMap
 
25-Jan-2026df-sucmap 38925 Define the successor map, directly as the graph of the successor operation, using only elementary set theory (ordered-pair class abstraction). This avoids committing to any particular construction of the successor function/class from other operators (e.g. a union/composition presentation), while remaining provably equivalent to those presentations (cf. dfsucmap2 38927 and dfsucmap3 38926 vs. df-succf 36184 and dfsuccf2 36255). For maximum mappy shape, see dfsucmap4 38928.

We also treat the successor relation as the default shift relation for grading/tower arguments (cf. df-shiftstable 38945). Because it is used pervasively in shift-lift infrastructure, we adopt the short name SucMap rather than the fully systematic "SucAdjLiftMap".

You may also define the predecessor relation as the converse graph "PreMap" as SucMap, which reverses successor edges ( cf. cnvopab 6121) and sends each successor to its (unique) predecessor when it exists. (Contributed by Peter Mazsa, 25-Jan-2026.)

SucMap = {⟨𝑚, 𝑛⟩ ∣ suc 𝑚 = 𝑛}
 
25-Jan-2026ecxrncnvep2 38873 The (𝑅 E )-coset of a set is the Cartesian product of its 𝑅-coset and the set. (Contributed by Peter Mazsa, 25-Jan-2026.)
(𝐴𝑉 → [𝐴](𝑅 E ) = ([𝐴]𝑅 × 𝐴))
 
25-Jan-2026omprcomonb 35380 The class of all finite ordinals is a proper class iff all ordinal sets are finite. (Contributed by BTernaryTau, 25-Jan-2026.)
(¬ ω ∈ V ↔ ω = On)
 
25-Jan-2026fineqvomonb 35379 All sets are finite iff all ordinal sets are finite. (Contributed by BTernaryTau, 25-Jan-2026.)
(Fin = V ↔ ω = On)
 
25-Jan-2026r1omfv 35370 Value of the cumulative hierarchy of sets function at ω. (Contributed by BTernaryTau, 25-Jan-2026.)
(𝑅1‘ω) = (𝑅1 “ ω)
 
25-Jan-2026r12 35355 Value of the cumulative hierarchy of sets function at 2o. (Contributed by BTernaryTau, 25-Jan-2026.)
(𝑅1‘2o) = 2o
 
25-Jan-2026xoromon 35348 ω is either an ordinal set or the proper class of all ordinal sets, but not both. This is a stronger version of omon 7854. (Contributed by BTernaryTau, 25-Jan-2026.)
(ω ∈ On ⊻ ω = On)
 
25-Jan-2026esplyind 33833 A recursive formula for the elementary symmetric polynomials. (Contributed by Thierry Arnoux, 25-Jan-2026.)
𝑊 = (𝐼 mPoly 𝑅)    &   𝑉 = (𝐼 mVar 𝑅)    &    + = (+g𝑊)    &    · = (.r𝑊)    &   𝐷 = { ∈ (ℕ0m 𝐼) ∣ finSupp 0}    &   𝐺 = ((𝐼extendVars𝑅)‘𝑌)    &   (𝜑𝐼 ∈ Fin)    &   (𝜑𝑅 ∈ Ring)    &   (𝜑𝑌𝐼)    &   𝐽 = (𝐼 ∖ {𝑌})    &   𝐸 = (𝐽eSymPoly𝑅)    &   (𝜑𝐾 ∈ (1...(♯‘𝐼)))    &   𝐶 = { ∈ (ℕ0m 𝐽) ∣ finSupp 0}       (𝜑 → ((𝐼eSymPoly𝑅)‘𝐾) = (((𝑉𝑌) · (𝐺‘(𝐸‘(𝐾 − 1)))) + (𝐺‘(𝐸𝐾))))
 
25-Jan-2026esplyfval3 33830 Alternate expression for the value of the 𝐾-th elementary symmetric polynomial. (Contributed by Thierry Arnoux, 25-Jan-2026.)
𝐷 = { ∈ (ℕ0m 𝐼) ∣ finSupp 0}    &   (𝜑𝐼 ∈ Fin)    &   (𝜑𝑅 ∈ Ring)    &   (𝜑𝐾 ∈ ℕ0)    &    0 = (0g𝑅)    &    1 = (1r𝑅)       (𝜑 → ((𝐼eSymPoly𝑅)‘𝐾) = (𝑓𝐷 ↦ if((ran 𝑓 ⊆ {0, 1} ∧ (♯‘(𝑓 supp 0)) = 𝐾), 1 , 0 )))
 
25-Jan-2026esplyfval2 33823 When 𝐾 is out-of-bounds, the 𝐾-th elementary symmetric polynomial is zero. (Contributed by Thierry Arnoux, 25-Jan-2026.)
𝐷 = { ∈ (ℕ0m 𝐼) ∣ finSupp 0}    &   (𝜑𝐼 ∈ Fin)    &   (𝜑𝑅 ∈ Ring)    &   (𝜑𝐾 ∈ (ℕ0 ∖ (0...(♯‘𝐼))))    &   𝑍 = (0g‘(𝐼 mPoly 𝑅))       (𝜑 → ((𝐼eSymPoly𝑅)‘𝐾) = 𝑍)
 
25-Jan-2026mplmulmvr 33797 Multiply a polynomial 𝐹 with a variable 𝑋 (i.e. with a monic monomial). (Contributed by Thierry Arnoux, 25-Jan-2026.)
𝑃 = (𝐼 mPoly 𝑅)    &   𝑋 = ((𝐼 mVar 𝑅)‘𝑌)    &   𝑀 = (Base‘𝑃)    &    · = (.r𝑃)    &    0 = (0g𝑅)    &   𝐷 = { ∈ (ℕ0m 𝐼) ∣ finSupp 0}    &   𝐴 = ((𝟭‘𝐼)‘{𝑌})    &   (𝜑𝐼𝑉)    &   (𝜑𝑌𝐼)    &   (𝜑𝑅 ∈ Ring)    &   (𝜑𝐹𝑀)       (𝜑 → (𝑋 · 𝐹) = (𝑏𝐷 ↦ if((𝑏𝑌) = 0, 0 , (𝐹‘(𝑏f𝐴)))))
 
25-Jan-2026mvrvalind 33796 Value of the generating elements of the power series structure, expressed using the indicator function. (Contributed by Thierry Arnoux, 25-Jan-2026.)
𝑉 = (𝐼 mVar 𝑅)    &   𝐷 = { ∈ (ℕ0m 𝐼) ∣ ( “ ℕ) ∈ Fin}    &    0 = (0g𝑅)    &    1 = (1r𝑅)    &   (𝜑𝐼𝑊)    &   (𝜑𝑅𝑌)    &   (𝜑𝑋𝐼)    &   (𝜑𝐹𝐷)    &   𝐴 = ((𝟭‘𝐼)‘{𝑋})       (𝜑 → ((𝑉𝑋)‘𝐹) = if(𝐹 = 𝐴, 1 , 0 ))
 
25-Jan-2026extvfvalf 33795 The "variable extension" function maps polynomials with variables indexed in 𝐽 to polynomials with variables indexed in 𝐼. (Contributed by Thierry Arnoux, 25-Jan-2026.)
𝐷 = { ∈ (ℕ0m 𝐼) ∣ finSupp 0}    &    0 = (0g𝑅)    &   (𝜑𝐼𝑉)    &   (𝜑𝑅 ∈ Ring)    &   𝐵 = (Base‘𝑅)    &   𝐽 = (𝐼 ∖ {𝐴})    &   𝑀 = (Base‘(𝐽 mPoly 𝑅))    &   (𝜑𝐴𝐼)    &   𝑁 = (Base‘(𝐼 mPoly 𝑅))       (𝜑 → ((𝐼extendVars𝑅)‘𝐴):𝑀𝑁)
 
25-Jan-2026extvfvcl 33794 Closure for the "variable extension" function evaluated for converting a given polynomial 𝐹 by adding a variable with index 𝐴. (Contributed by Thierry Arnoux, 25-Jan-2026.)
𝐷 = { ∈ (ℕ0m 𝐼) ∣ finSupp 0}    &    0 = (0g𝑅)    &   (𝜑𝐼𝑉)    &   (𝜑𝑅 ∈ Ring)    &   𝐵 = (Base‘𝑅)    &   𝐽 = (𝐼 ∖ {𝐴})    &   𝑀 = (Base‘(𝐽 mPoly 𝑅))    &   (𝜑𝐴𝐼)    &   (𝜑𝐹𝑀)    &   𝑁 = (Base‘(𝐼 mPoly 𝑅))       (𝜑 → (((𝐼extendVars𝑅)‘𝐴)‘𝐹) ∈ 𝑁)
 
25-Jan-2026extvfvvcl 33793 Closure for the "variable extension" function evaluated for converting a given polynomial 𝐹 by adding a variable with index 𝐴. (Contributed by Thierry Arnoux, 25-Jan-2026.)
𝐷 = { ∈ (ℕ0m 𝐼) ∣ finSupp 0}    &    0 = (0g𝑅)    &   (𝜑𝐼𝑉)    &   (𝜑𝑅 ∈ Ring)    &   𝐵 = (Base‘𝑅)    &   𝐽 = (𝐼 ∖ {𝐴})    &   𝑀 = (Base‘(𝐽 mPoly 𝑅))    &   (𝜑𝐴𝐼)    &   (𝜑𝐹𝑀)    &   (𝜑𝑋𝐷)       (𝜑 → ((((𝐼extendVars𝑅)‘𝐴)‘𝐹)‘𝑋) ∈ 𝐵)
 
25-Jan-2026extvfvv 33792 The "variable extension" function evaluated for converting a given polynomial 𝐹 by adding a variable with index 𝐴. (Contributed by Thierry Arnoux, 25-Jan-2026.)
𝐷 = { ∈ (ℕ0m 𝐼) ∣ finSupp 0}    &    0 = (0g𝑅)    &   (𝜑𝐼𝑉)    &   (𝜑𝑅𝑊)    &   (𝜑𝐴𝐼)    &   𝐽 = (𝐼 ∖ {𝐴})    &   𝑀 = (Base‘(𝐽 mPoly 𝑅))    &   (𝜑𝐹𝑀)    &   (𝜑𝑋𝐷)       (𝜑 → ((((𝐼extendVars𝑅)‘𝐴)‘𝐹)‘𝑋) = if((𝑋𝐴) = 0, (𝐹‘(𝑋𝐽)), 0 ))
 
25-Jan-2026extvfv 33791 The "variable extension" function evaluated for converting a given polynomial 𝐹 by adding a variable with index 𝐴. (Contributed by Thierry Arnoux, 25-Jan-2026.)
𝐷 = { ∈ (ℕ0m 𝐼) ∣ finSupp 0}    &    0 = (0g𝑅)    &   (𝜑𝐼𝑉)    &   (𝜑𝑅𝑊)    &   (𝜑𝐴𝐼)    &   𝐽 = (𝐼 ∖ {𝐴})    &   𝑀 = (Base‘(𝐽 mPoly 𝑅))    &   (𝜑𝐹𝑀)       (𝜑 → (((𝐼extendVars𝑅)‘𝐴)‘𝐹) = (𝑥𝐷 ↦ if((𝑥𝐴) = 0, (𝐹‘(𝑥𝐽)), 0 )))
 
25-Jan-2026extvfval 33790 The "variable extension" function evaluated for adding a variable with index 𝐴. (Contributed by Thierry Arnoux, 25-Jan-2026.)
𝐷 = { ∈ (ℕ0m 𝐼) ∣ finSupp 0}    &    0 = (0g𝑅)    &   (𝜑𝐼𝑉)    &   (𝜑𝑅𝑊)    &   (𝜑𝐴𝐼)    &   𝐽 = (𝐼 ∖ {𝐴})    &   𝑀 = (Base‘(𝐽 mPoly 𝑅))       (𝜑 → ((𝐼extendVars𝑅)‘𝐴) = (𝑓𝑀 ↦ (𝑥𝐷 ↦ if((𝑥𝐴) = 0, (𝑓‘(𝑥𝐽)), 0 ))))
 
25-Jan-2026extvval 33789 Value of the "variable extension" function. (Contributed by Thierry Arnoux, 25-Jan-2026.)
𝐷 = { ∈ (ℕ0m 𝐼) ∣ finSupp 0}    &    0 = (0g𝑅)    &   (𝜑𝐼𝑉)    &   (𝜑𝑅𝑊)    &   𝐽 = (𝐼 ∖ {𝑎})    &   𝑀 = (Base‘(𝐽 mPoly 𝑅))       (𝜑 → (𝐼extendVars𝑅) = (𝑎𝐼 ↦ (𝑓𝑀 ↦ (𝑥𝐷 ↦ if((𝑥𝑎) = 0, (𝑓‘(𝑥 ↾ (𝐼 ∖ {𝑎}))), 0 )))))
 
25-Jan-2026nn0diffz0 32946 Upper set of the nonnegative integers. (Contributed by Thierry Arnoux, 25-Jan-2026.)
(𝑁 ∈ ℕ0 → (ℕ0 ∖ (0...𝑁)) = (ℤ‘(𝑁 + 1)))
 
25-Jan-2026rnressnsn 32829 The range of a restriction to a singleton is a singleton. See dmressnsn 6007. (Contributed by Thierry Arnoux, 25-Jan-2026.)
((Fun 𝐹𝐴 ∈ dom 𝐹) → ran (𝐹 ↾ {𝐴}) = {(𝐹𝐴)})
 
25-Jan-2026partfun2 32828 Rewrite a function defined by parts, using a mapping and an if construct, into a union of functions on disjoint domains. See also partfun 6664 and ifmpt2v 7494. (Contributed by Thierry Arnoux, 25-Jan-2026.)
𝐷 = {𝑥𝐴𝜑}       (𝑥𝐴 ↦ if(𝜑, 𝐵, 𝐶)) = ((𝑥𝐷𝐵) ∪ (𝑥 ∈ (𝐴𝐷) ↦ 𝐶))
 
25-Jan-2026indconst1 12205 Indicator of the whole set. (Contributed by Thierry Arnoux, 25-Jan-2026.)
(𝑂𝑉 → ((𝟭‘𝑂)‘𝑂) = (𝑂 × {1}))
 
25-Jan-2026indconst0 12204 Indicator of the empty set. (Contributed by Thierry Arnoux, 25-Jan-2026.)
(𝑂𝑉 → ((𝟭‘𝑂)‘∅) = (𝑂 × {0}))
 
25-Jan-2026tz6.12-2 6850 Function value when 𝐹 is not a function. Theorem 6.12(2) of [TakeutiZaring] p. 27. (Contributed by NM, 30-Apr-2004.) (Proof shortened by Mario Carneiro, 31-Aug-2015.) Avoid ax-10 2174, ax-11 2190, ax-12 2211. (Revised by TM, 25-Jan-2026.)
(¬ ∃!𝑥 𝐴𝐹𝑥 → (𝐹𝐴) = ∅)
 
24-Jan-2026r1omhfb 35372 The class of all hereditarily finite sets is the only class with the property that all sets are members of it iff they are finite and all of their elements are members of it. (Contributed by BTernaryTau, 24-Jan-2026.)
(𝐻 = (𝑅1 “ ω) ↔ ∀𝑥(𝑥𝐻 ↔ (𝑥 ∈ Fin ∧ ∀𝑦𝑥 𝑦𝐻)))
 
24-Jan-2026trssfir1om 35371 If every element in a transitive class is finite, then every element is also hereditarily finite. (Contributed by BTernaryTau, 24-Jan-2026.)
((Tr 𝐴𝐴 ⊆ Fin) → 𝐴 (𝑅1 “ ω))
 
24-Jan-2026r11 35354 Value of the cumulative hierarchy of sets function at 1o. (Contributed by BTernaryTau, 24-Jan-2026.)
(𝑅1‘1o) = 1o
 
24-Jan-2026rnco 6235 The range of the composition of two classes. (Contributed by NM, 12-Dec-2006.) (Proof shortened by Peter Mazsa, 2-Oct-2022.) Avoid ax-11 2190. (Revised by TM, 24-Jan-2026.)
ran (𝐴𝐵) = ran (𝐴 ↾ ran 𝐵)
 
24-Jan-2026dm0rn0 5898 An empty domain is equivalent to an empty range. (Contributed by NM, 21-May-1998.) Avoid ax-10 2174, ax-11 2190, ax-12 2211. (Revised by TM, 24-Jan-2026.)
(dom 𝐴 = ∅ ↔ ran 𝐴 = ∅)
 
24-Jan-2026eqabcbw 2835 Version of eqabcb 2901 using implicit substitution, which requires fewer axioms. (Contributed by TM, 24-Jan-2026.)
(𝑥 = 𝑦 → (𝜑𝜓))       ({𝑥𝜑} = 𝐴 ↔ ∀𝑦(𝜓𝑦𝐴))
 
24-Jan-2026excomw 2065 Weak version of excom 2195 and biconditional form of excomimw 2063. Uses only Tarski's FOL axiom schemes. (Contributed by TM, 24-Jan-2026.)
(𝑥 = 𝑤 → (𝜑𝜓))    &   (𝑦 = 𝑧 → (𝜑𝜒))       (∃𝑥𝑦𝜑 ↔ ∃𝑦𝑥𝜑)
 
22-Jan-2026chnsubseq 47420 An order-preserving subsequence of an ordered chain is itself a chain. (Contributed by Ender Ting, 22-Jan-2026.)
(𝜑𝑊 ∈ ( < Chain 𝐴))    &   (𝜑𝐼 ∈ ( < Chain (0..^(♯‘𝑊))))    &   (𝜑< Po 𝐴)       (𝜑 → (𝑊𝐼) ∈ ( < Chain 𝐴))
 
22-Jan-2026chnsubseqwl 47419 A subsequence of a chain has the same length as its indexing sequence. (Contributed by Ender Ting, 22-Jan-2026.)
(𝜑𝑊 ∈ ( < Chain 𝐴))    &   (𝜑𝐼 ∈ ( < Chain (0..^(♯‘𝑊))))       (𝜑 → (♯‘(𝑊𝐼)) = (♯‘𝐼))
 
22-Jan-2026chnsubseqword 47418 A subsequence of a chain is a word. (Contributed by Ender Ting, 22-Jan-2026.)
(𝜑𝑊 ∈ ( < Chain 𝐴))    &   (𝜑𝐼 ∈ ( < Chain (0..^(♯‘𝑊))))       (𝜑 → (𝑊𝐼) ∈ Word 𝐴)
 
22-Jan-2026r1filim 35364 A finite set appears in the cumulative hierarchy prior to a limit ordinal iff all of its elements appear in the cumulative hierarchy prior to that limit ordinal. (Contributed by BTernaryTau, 22-Jan-2026.)
((𝐴 ∈ Fin ∧ Lim 𝐵) → (𝐴 (𝑅1𝐵) ↔ ∀𝑥𝐴 𝑥 (𝑅1𝐵)))
 
22-Jan-2026rankfilimb 35362 The rank of a finite well-founded set is less than a limit ordinal iff the ranks of all of its elements are less than that limit ordinal. (Contributed by BTernaryTau, 22-Jan-2026.)
((𝐴 ∈ Fin ∧ 𝐴 (𝑅1 “ On) ∧ Lim 𝐵) → ((rank‘𝐴) ∈ 𝐵 ↔ ∀𝑥𝐴 (rank‘𝑥) ∈ 𝐵))
 
21-Jan-2026r1omhfbregs 35397 The class of all hereditarily finite sets is the only class with the property that all sets are members of it iff they are finite and all of their elements are members of it. This version of r1omhfb 35372 replaces setinds2 9703 with setinds2regs 35391 and trssfir1om 35371 with trssfir1omregs 35396. (Contributed by BTernaryTau, 21-Jan-2026.)
(𝐻 = (𝑅1 “ ω) ↔ ∀𝑥(𝑥𝐻 ↔ (𝑥 ∈ Fin ∧ ∀𝑦𝑥 𝑦𝐻)))
 
20-Jan-2026trssfir1omregs 35396 If every element in a transitive class is finite, then every element is also hereditarily finite. This version of trssfir1om 35371 replaces setinds2 9703 with setinds2regs 35391. (Contributed by BTernaryTau, 20-Jan-2026.)
((Tr 𝐴𝐴 ⊆ Fin) → 𝐴 (𝑅1 “ ω))
 
20-Jan-2026df-extv 33788 Define the "variable extension" function. The function ((𝐼extendVars𝑅)‘𝐴) converts polynomials with variables indexed by (𝐼 ∖ {𝐴}) into polynomials indexed by 𝐼, and therefore maps elements of ((𝐼 ∖ {𝐴}) mPoly 𝑅) onto (𝐼 mPoly 𝑅). (Contributed by Thierry Arnoux, 20-Jan-2026.)
extendVars = (𝑖 ∈ V, 𝑟 ∈ V ↦ (𝑎𝑖 ↦ (𝑓 ∈ (Base‘((𝑖 ∖ {𝑎}) mPoly 𝑟)) ↦ (𝑥 ∈ { ∈ (ℕ0m 𝑖) ∣ finSupp 0} ↦ if((𝑥𝑎) = 0, (𝑓‘(𝑥 ↾ (𝑖 ∖ {𝑎}))), (0g𝑟))))))
 
20-Jan-2026chnfibg 18651 Given a partial order, the set of chains is finite iff the alphabet is finite. (Contributed by Ender Ting, 20-Jan-2026.)
( < Po 𝐴 → (𝐴 ∈ Fin ↔ ( < Chain 𝐴) ∈ Fin))
 
20-Jan-2026chninf 18650 There is an infinite number of chains for any infinite alphabet and any relation. For instance, all the singletons of alphabet characters match. (Contributed by Ender Ting, 20-Jan-2026.)
(𝐴 ∉ Fin → ( < Chain 𝐴) ∉ Fin)
 
20-Jan-2026chnfi 18649 There is a finite number of chains over finite domain, as long as the relation orders it. (Contributed by Ender Ting, 20-Jan-2026.)
((𝐴 ∈ Fin ∧ < Po 𝐴) → ( < Chain 𝐴) ∈ Fin)
 
20-Jan-2026chnpolfz 18648 Provided that chain's relation is a partial order, the chain length is restricted to a specific integer range. (Contributed by Ender Ting, 20-Jan-2026.)
(𝜑< Po 𝐴)    &   (𝜑𝐵 ∈ ( < Chain 𝐴))    &   (𝜑𝐴 ∈ Fin)       (𝜑 → (♯‘𝐵) ∈ (0...(♯‘𝐴)))
 
20-Jan-2026chnpolleha 18647 A chain under relation which orders the alphabet has at most alphabet's size elements in it. (Contributed by Ender Ting, 20-Jan-2026.)
(𝜑< Po 𝐴)    &   (𝜑𝐵 ∈ ( < Chain 𝐴))    &   (𝜑𝐴𝑉)       (𝜑 → (♯‘𝐵) ≤ (♯‘𝐴))
 
20-Jan-2026chnpoadomd 18646 A chain under relation which orders the alphabet cannot have more elements than the alphabet itself. (Contributed by Ender Ting, 20-Jan-2026.)
(𝜑< Po 𝐴)    &   (𝜑𝐵 ∈ ( < Chain 𝐴))    &   (𝜑𝐴𝑉)       (𝜑 → (0..^(♯‘𝐵)) ≼ 𝐴)
 
20-Jan-2026chnpof1 18645 A chain under relation which orders the alphabet is a one-to-one function from its domain to alphabet. (Contributed by Ender Ting, 20-Jan-2026.)
(𝜑< Po 𝐴)    &   (𝜑𝐵 ∈ ( < Chain 𝐴))       (𝜑𝐵:(0..^(♯‘𝐵))–1-1𝐴)
 
20-Jan-2026chnf 18644 A chain is a zero-based finite sequence with a recoverable upper limit. (Contributed by Ender Ting, 20-Jan-2026.)
(𝐵 ∈ ( < Chain 𝐴) → 𝐵:(0..^(♯‘𝐵))⟶𝐴)
 
20-Jan-2026chnrev 18642 Reverse of a chain is chain under the converse relation and same domain. (Contributed by Ender Ting, 20-Jan-2026.)
(𝐵 ∈ ( < Chain 𝐴) → (reverse‘𝐵) ∈ ( < Chain 𝐴))
 
20-Jan-2026chnccat 18641 Concatenate two chains. (Contributed by Ender Ting, 20-Jan-2026.)
(𝜑𝑇 ∈ ( < Chain 𝐴))    &   (𝜑𝑈 ∈ ( < Chain 𝐴))    &   (𝜑 → (𝑇 = ∅ ∨ 𝑈 = ∅ ∨ (lastS‘𝑇) < (𝑈‘0)))       (𝜑 → (𝑇 ++ 𝑈) ∈ ( < Chain 𝐴))
 
20-Jan-2026chnrdss 18632 Subset theorem for chains. (Contributed by Ender Ting, 20-Jan-2026.)
(( <𝑅𝐴𝐵) → ( < Chain 𝐴) ⊆ (𝑅 Chain 𝐵))
 
20-Jan-2026chndss 18631 Chains with an alphabet are also chains with any superset alphabet. (Contributed by Ender Ting, 20-Jan-2026.)
(𝐴𝐵 → ( < Chain 𝐴) ⊆ ( < Chain 𝐵))
 
20-Jan-2026chnrss 18630 Chains under a relation are also chains under any superset relation. (Contributed by Ender Ting, 20-Jan-2026.)
( <𝑅 → ( < Chain 𝐴) ⊆ (𝑅 Chain 𝐴))
 
20-Jan-2026nfchnd 18626 Bound-variable hypothesis builder for chain collection constructor. (Contributed by Ender Ting, 20-Jan-2026.)
(𝜑𝑥 < )    &   (𝜑𝑥𝐴)       (𝜑𝑥( < Chain 𝐴))
 
19-Jan-2026r1omhf 35366 A set is hereditarily finite iff it is finite and all of its elements are hereditarily finite. (Contributed by BTernaryTau, 19-Jan-2026.)
(𝐴 (𝑅1 “ ω) ↔ (𝐴 ∈ Fin ∧ ∀𝑥𝐴 𝑥 (𝑅1 “ ω)))
 
19-Jan-2026r1filimi 35363 If all elements in a finite set appear in the cumulative hierarchy prior to a limit ordinal, then that set also appears in the cumulative hierarchy prior to the limit ordinal. (Contributed by BTernaryTau, 19-Jan-2026.)
((𝐴 ∈ Fin ∧ ∀𝑥𝐴 𝑥 (𝑅1𝐵) ∧ Lim 𝐵) → 𝐴 (𝑅1𝐵))
 
19-Jan-2026rankfilimbi 35361 If all elements in a finite well-founded set have a rank less than a limit ordinal, then the rank of that set is also less than the limit ordinal. (Contributed by BTernaryTau, 19-Jan-2026.)
(((𝐴 ∈ Fin ∧ 𝐴 (𝑅1 “ On)) ∧ (∀𝑥𝐴 (rank‘𝑥) ∈ 𝐵 ∧ Lim 𝐵)) → (rank‘𝐴) ∈ 𝐵)
 
19-Jan-2026rankval4b 35360 The rank of a set is the supremum of the successors of the ranks of its members. Exercise 9.1 of [Jech] p. 72. Also a special case of Theorem 7V(b) of [Enderton] p. 204. This variant of rankval4 9822 does not use Regularity, and so requires the assumption that 𝐴 is in the range of 𝑅1. (Contributed by BTernaryTau, 19-Jan-2026.)
(𝐴 (𝑅1 “ On) → (rank‘𝐴) = 𝑥𝐴 suc (rank‘𝑥))
 
19-Jan-2026rankval2b 35359 Value of an alternate definition of the rank function. Definition of [BellMachover] p. 478. This variant of rankval2 9773 does not use Regularity, and so requires the assumption that 𝐴 is in the range of 𝑅1. (Contributed by BTernaryTau, 19-Jan-2026.)
(𝐴 (𝑅1 “ On) → (rank‘𝐴) = {𝑥 ∈ On ∣ 𝐴 ⊆ (𝑅1𝑥)})
 
19-Jan-2026r1wf 35356 Each stage in the cumulative hierarchy is well-founded. (Contributed by BTernaryTau, 19-Jan-2026.)
(𝑅1𝐴) ∈ (𝑅1 “ On)
 
18-Jan-2026esplysply 33829 The 𝐾-th elementary symmetric polynomial is symmetric. (Contributed by Thierry Arnoux, 18-Jan-2026.)
𝐷 = { ∈ (ℕ0m 𝐼) ∣ finSupp 0}    &   (𝜑𝐼 ∈ Fin)    &   (𝜑𝑅 ∈ Ring)    &   (𝜑𝐾 ∈ (0...(♯‘𝐼)))       (𝜑 → ((𝐼eSymPoly𝑅)‘𝐾) ∈ (𝐼SymPoly𝑅))
 
18-Jan-2026esplyfv 33828 Coefficient for the 𝐾-th elementary symmetric polynomial and a bag of variables 𝐹: the coefficient is 1 for the bags of exactly 𝐾 variables, having exponent at most 1. (Contributed by Thierry Arnoux, 18-Jan-2026.)
𝐷 = { ∈ (ℕ0m 𝐼) ∣ finSupp 0}    &   (𝜑𝐼 ∈ Fin)    &   (𝜑𝑅 ∈ Ring)    &   (𝜑𝐾 ∈ (0...(♯‘𝐼)))    &   (𝜑𝐹𝐷)    &    0 = (0g𝑅)    &    1 = (1r𝑅)       (𝜑 → (((𝐼eSymPoly𝑅)‘𝐾)‘𝐹) = if((ran 𝐹 ⊆ {0, 1} ∧ (♯‘(𝐹 supp 0)) = 𝐾), 1 , 0 ))
 
18-Jan-2026esplyfv1 33827 Coefficient for the 𝐾-th elementary symmetric polynomial and a bag of variables 𝐹 where variables are not raised to a power. (Contributed by Thierry Arnoux, 18-Jan-2026.)
𝐷 = { ∈ (ℕ0m 𝐼) ∣ finSupp 0}    &   (𝜑𝐼 ∈ Fin)    &   (𝜑𝑅 ∈ Ring)    &   (𝜑𝐾 ∈ (0...(♯‘𝐼)))    &   (𝜑𝐹𝐷)    &    0 = (0g𝑅)    &    1 = (1r𝑅)    &   (𝜑 → ran 𝐹 ⊆ {0, 1})       (𝜑 → (((𝐼eSymPoly𝑅)‘𝐾)‘𝐹) = if((♯‘(𝐹 supp 0)) = 𝐾, 1 , 0 ))
 
18-Jan-2026esplymhp 33826 The 𝐾-th elementary symmetric polynomial is homogeneous of degree 𝐾. (Contributed by Thierry Arnoux, 18-Jan-2026.)
𝐷 = { ∈ (ℕ0m 𝐼) ∣ finSupp 0}    &   (𝜑𝐼 ∈ Fin)    &   (𝜑𝑅 ∈ Ring)    &   (𝜑𝐾 ∈ ℕ0)    &   𝐻 = (𝐼 mHomP 𝑅)       (𝜑 → ((𝐼eSymPoly𝑅)‘𝐾) ∈ (𝐻𝐾))
 
18-Jan-2026esplympl 33825 Elementary symmetric polynomials are polynomials. (Contributed by Thierry Arnoux, 18-Jan-2026.)
𝐷 = { ∈ (ℕ0m 𝐼) ∣ finSupp 0}    &   (𝜑𝐼 ∈ Fin)    &   (𝜑𝑅 ∈ Ring)    &   (𝜑𝐾 ∈ ℕ0)    &   𝑀 = (Base‘(𝐼 mPoly 𝑅))       (𝜑 → ((𝐼eSymPoly𝑅)‘𝐾) ∈ 𝑀)
 
18-Jan-2026esplylem 33824 Lemma for esplyfv 33828 and others. (Contributed by Thierry Arnoux, 18-Jan-2026.)
𝐷 = { ∈ (ℕ0m 𝐼) ∣ finSupp 0}    &   (𝜑𝐼 ∈ Fin)    &   (𝜑𝑅 ∈ Ring)    &   (𝜑𝐾 ∈ ℕ0)       (𝜑 → ((𝟭‘𝐼) “ {𝑐 ∈ 𝒫 𝐼 ∣ (♯‘𝑐) = 𝐾}) ⊆ 𝐷)
 
18-Jan-2026esplyfval 33821 The 𝐾-th elementary polynomial for a given index 𝐼 of variables and base ring 𝑅. (Contributed by Thierry Arnoux, 18-Jan-2026.)
𝐷 = { ∈ (ℕ0m 𝐼) ∣ finSupp 0}    &   (𝜑𝐼𝑉)    &   (𝜑𝑅𝑊)    &   (𝜑𝐾 ∈ ℕ0)       (𝜑 → ((𝐼eSymPoly𝑅)‘𝐾) = ((ℤRHom‘𝑅) ∘ ((𝟭‘𝐷)‘((𝟭‘𝐼) “ {𝑐 ∈ 𝒫 𝐼 ∣ (♯‘𝑐) = 𝐾}))))
 
18-Jan-2026esplyval 33820 The elementary polynomials for a given index 𝐼 of variables and base ring 𝑅. (Contributed by Thierry Arnoux, 18-Jan-2026.)
𝐷 = { ∈ (ℕ0m 𝐼) ∣ finSupp 0}    &   (𝜑𝐼𝑉)    &   (𝜑𝑅𝑊)       (𝜑 → (𝐼eSymPoly𝑅) = (𝑘 ∈ ℕ0 ↦ ((ℤRHom‘𝑅) ∘ ((𝟭‘𝐷)‘((𝟭‘𝐼) “ {𝑐 ∈ 𝒫 𝐼 ∣ (♯‘𝑐) = 𝑘})))))
 
18-Jan-2026issply 33819 Conditions for being a symmetric polynomial. (Contributed by Thierry Arnoux, 18-Jan-2026.)
𝑆 = (SymGrp‘𝐼)    &   𝑃 = (Base‘𝑆)    &   𝑀 = (Base‘(𝐼 mPoly 𝑅))    &   𝐷 = { ∈ (ℕ0m 𝐼) ∣ finSupp 0}    &   (𝜑𝐼𝑉)    &   (𝜑𝑅𝑊)    &   (𝜑𝐹𝑀)    &   (((𝜑𝑝𝑃) ∧ 𝑥𝐷) → (𝐹‘(𝑥𝑝)) = (𝐹𝑥))       (𝜑𝐹 ∈ (𝐼SymPoly𝑅))
 
18-Jan-2026df-esply 33816 Define elementary symmetric polynomials. (Contributed by Thierry Arnoux, 18-Jan-2026.)
eSymPoly = (𝑖 ∈ V, 𝑟 ∈ V ↦ (𝑘 ∈ ℕ0 ↦ ((ℤRHom‘𝑟) ∘ ((𝟭‘{ ∈ (ℕ0m 𝑖) ∣ finSupp 0})‘((𝟭‘𝑖) “ {𝑐 ∈ 𝒫 𝑖 ∣ (♯‘𝑐) = 𝑘})))))
 
18-Jan-2026gsumind 33492 The group sum of an indicator function of the set 𝐴 gives the size of 𝐴. (Contributed by Thierry Arnoux, 18-Jan-2026.)
(𝜑𝑂𝑉)    &   (𝜑𝐴𝑂)    &   (𝜑𝐴 ∈ Fin)       (𝜑 → (ℂfld Σg ((𝟭‘𝑂)‘𝐴)) = (♯‘𝐴))
 
18-Jan-2026indfsid 33008 Conditions for a function to be an indicator function. (Contributed by Thierry Arnoux, 18-Jan-2026.)
(𝜑𝑂𝑉)    &   (𝜑𝐹:𝑂⟶{0, 1})       (𝜑𝐹 = ((𝟭‘𝑂)‘(𝐹 supp 0)))
 
18-Jan-2026indfsd 33007 The indicator function of a finite set has finite support. (Contributed by Thierry Arnoux, 18-Jan-2026.)
(𝜑𝑂𝑉)    &   (𝜑𝐴𝑂)    &   (𝜑𝐴 ∈ Fin)       (𝜑 → ((𝟭‘𝑂)‘𝐴) finSupp 0)
 
18-Jan-2026hashimaf1 32963 Taking the image of a set by a one-to-one function does not affect size. (Contributed by Thierry Arnoux, 18-Jan-2026.)
(𝜑𝐹:𝐴1-1𝐵)    &   (𝜑𝐶𝐴)    &   (𝜑𝐴𝑉)       (𝜑 → (♯‘(𝐹𝐶)) = (♯‘𝐶))
 
18-Jan-2026pw2cut2 28532 Cut expression for powers of two. Theorem 12 of [Conway] p. 12-13. (Contributed by Scott Fenton, 18-Jan-2026.)
((𝐴 ∈ ℤs𝑁 ∈ ℕ0s) → (𝐴 /su (2ss𝑁)) = ({((𝐴 -s 1s ) /su (2ss𝑁))} |s {((𝐴 +s 1s ) /su (2ss𝑁))}))
 
18-Jan-2026pw2ltsdiv1d 28522 Surreal less-than relationship for division by a power of two. (Contributed by Scott Fenton, 18-Jan-2026.)
(𝜑𝐴 No )    &   (𝜑𝐵 No )    &   (𝜑𝑁 ∈ ℕ0s)       (𝜑 → (𝐴 <s 𝐵 ↔ (𝐴 /su (2ss𝑁)) <s (𝐵 /su (2ss𝑁))))
 
18-Jan-2026sltssnb 27839 Surreal set less-than of two singletons. (Contributed by Scott Fenton, 18-Jan-2026.)
(𝜑𝐴 No )    &   (𝜑𝐵 No )       (𝜑 → ({𝐴} <<s {𝐵} ↔ 𝐴 <s 𝐵))
 
17-Jan-2026ex-chn2 18653 Example: sequence <" ZZ NN QQ "> is a valid chain under the equinumerosity relation in universal domain. (Contributed by Ender Ting, 17-Jan-2026.)
⟨“ℤℕℚ”⟩ ∈ ( ≈ Chain V)
 
17-Jan-2026ex-chn1 18652 Example: a doubleton of twos is a valid chain under the identity relation and domain of integers. (Contributed by Ender Ting, 17-Jan-2026.)
⟨“22”⟩ ∈ ( I Chain ℤ)
 
17-Jan-2026chnflenfi 18643 There is a finite number of chains with fixed length over finite alphabet. Trivially holds for invalid lengths as there're no matching sequences. (Contributed by Ender Ting, 5-Jan-2025.) (Revised by Ender Ting, 17-Jan-2026.)
(𝐴 ∈ Fin → {𝑎 ∈ ( < Chain 𝐴) ∣ (♯‘𝑎) = 𝑇} ∈ Fin)
 
17-Jan-2026nulchn 18634 Empty set is an increasing chain for every range and every relation. (Contributed by Ender Ting, 19-Nov-2024.) (Revised by Ender Ting, 17-Jan-2026.)
∅ ∈ ( < Chain 𝐴)
 
17-Jan-2026chnexg 18633 Chains with a set given for range form a set. (Contributed by Ender Ting, 21-Nov-2024.) (Revised by Ender Ting, 17-Jan-2026.)
(𝐴𝑉 → ( < Chain 𝐴) ∈ V)
 
17-Jan-2026chneq12 18629 Equality theorem for chains. (Contributed by Ender Ting, 17-Jan-2026.)
(( < = 𝑅𝐴 = 𝐵) → ( < Chain 𝐴) = (𝑅 Chain 𝐵))
 
17-Jan-2026chneq2 18628 Equality theorem for chains. (Contributed by Ender Ting, 17-Jan-2026.)
(𝐴 = 𝐵 → ( < Chain 𝐴) = ( < Chain 𝐵))
 
17-Jan-2026chneq1 18627 Equality theorem for chains. (Contributed by Ender Ting, 17-Jan-2026.)
( < = 𝑅 → ( < Chain 𝐴) = (𝑅 Chain 𝐴))
 
15-Jan-2026r1ssel 35367 A set is a subset of the value of the cumulative hierarchy of sets function iff it is an element of the value at the successor. (Contributed by BTernaryTau, 15-Jan-2026.)
(𝐵 ∈ On → (𝐴 ⊆ (𝑅1𝐵) ↔ 𝐴 ∈ (𝑅1‘suc 𝐵)))
 
15-Jan-2026fissorduni 35349 The union (supremum) of a finite set of ordinals less than a nonzero ordinal class is an element of that ordinal class. (Contributed by BTernaryTau, 15-Jan-2026.)
((𝐴 ∈ Fin ∧ 𝐴𝐵 ∧ (Ord 𝐵𝐵 ≠ ∅)) → 𝐴𝐵)
 
15-Jan-2026splysubrg 33818 The symmetric polynomials form a subring of the ring of polynomials. (Contributed by Thierry Arnoux, 15-Jan-2026.)
𝑆 = (SymGrp‘𝐼)    &   𝑃 = (Base‘𝑆)    &   𝑀 = (Base‘(𝐼 mPoly 𝑅))    &   𝐴 = (𝑑𝑃, 𝑓𝑀 ↦ (𝑥 ∈ { ∈ (ℕ0m 𝐼) ∣ finSupp 0} ↦ (𝑓‘(𝑥𝑑))))    &   (𝜑𝐼𝑉)    &   (𝜑𝑅 ∈ Ring)       (𝜑 → (𝐼SymPoly𝑅) ∈ (SubRing‘(𝐼 mPoly 𝑅)))
 
15-Jan-2026mplvrpmrhm 33805 The action of permuting variables in a multivariate polynomial is a ring homomorphism. (Contributed by Thierry Arnoux, 15-Jan-2026.)
𝑆 = (SymGrp‘𝐼)    &   𝑃 = (Base‘𝑆)    &   𝑀 = (Base‘(𝐼 mPoly 𝑅))    &   𝐴 = (𝑑𝑃, 𝑓𝑀 ↦ (𝑥 ∈ { ∈ (ℕ0m 𝐼) ∣ finSupp 0} ↦ (𝑓‘(𝑥𝑑))))    &   (𝜑𝐼𝑉)    &   𝐹 = (𝑓𝑀 ↦ (𝐷𝐴𝑓))    &   𝑊 = (𝐼 mPoly 𝑅)    &   (𝜑𝑅 ∈ Ring)    &   (𝜑𝐷𝑃)       (𝜑𝐹 ∈ (𝑊 RingHom 𝑊))
 
15-Jan-2026cocnvf1o 32881 Composing with the inverse of a bijection. (Contributed by Thierry Arnoux, 15-Jan-2026.)
(𝜑𝐹:𝐴𝐵)    &   (𝜑𝐺:𝐴𝐵)    &   (𝜑𝐻:𝐴1-1-onto𝐴)       (𝜑 → (𝐹 = (𝐺𝐻) ↔ 𝐺 = (𝐹𝐻)))
 
15-Jan-2026ofrco 32762 Function relation between function compositions. (Contributed by Thierry Arnoux, 15-Jan-2026.)
(𝜑𝐹 Fn 𝐴)    &   (𝜑𝐺 Fn 𝐴)    &   (𝜑𝐻:𝐶𝐴)    &   (𝜑𝐴𝑉)    &   (𝜑𝐶𝑊)    &   (𝜑𝐹r 𝑅𝐺)       (𝜑 → (𝐹𝐻) ∘r 𝑅(𝐺𝐻))
 
15-Jan-2026fnfvor 32761 Relation between two functions implies the same relation for the function value at a given 𝑋. See also fnfvof 7673. (Contributed by Thierry Arnoux, 15-Jan-2026.)
(𝜑𝐹 Fn 𝐴)    &   (𝜑𝐺 Fn 𝐴)    &   (𝜑𝐴𝑉)    &   (𝜑𝐹r 𝑅𝐺)    &   (𝜑𝑋𝐴)       (𝜑 → (𝐹𝑋)𝑅(𝐺𝑋))
 
15-Jan-2026elrabrd 32646 Deduction version of elrab 3650, just like elrabd 3652, but backwards direction. (Contributed by Thierry Arnoux, 15-Jan-2026.)
(𝑥 = 𝐴 → (𝜓𝜒))    &   (𝜑𝐴 ∈ {𝑥𝐵𝜓})       (𝜑𝜒)
 
12-Jan-2026preel 38963 Predecessor is a subset of its successor. (Contributed by Peter Mazsa, 12-Jan-2026.)
(𝑁 ∈ Suc → pre 𝑁𝑁)
 
12-Jan-2026press 38962 Predecessor is a subset of its successor. (Contributed by Peter Mazsa, 12-Jan-2026.)
(𝑁 ∈ Suc → pre 𝑁𝑁)
 
12-Jan-2026presuc 38961 pre is a left-inverse of suc. This theorem gives a clean rewrite rule that eliminates pre on explicit successors. (Contributed by Peter Mazsa, 12-Jan-2026.)
(𝑀𝑉 → pre suc 𝑀 = 𝑀)
 
12-Jan-2026preuniqval 38959 Uniqueness/canonicity of pre. presucmap 38958 gives one witness; this theorem gives it is the only one. It turns any predecessor proof into an equality with pre 𝑁. (Contributed by Peter Mazsa, 12-Jan-2026.)
(𝑁 ∈ ran SucMap → ∀𝑚(𝑚 SucMap 𝑁𝑚 = pre 𝑁))
 
12-Jan-2026presucmap 38958 pre is really a predecessor (when it should be). This correctness theorem for pre makes it usable in proofs without unfolding . This theorem gives one witness; preuniqval 38959 gives it is the only one. (Contributed by Peter Mazsa, 12-Jan-2026.)
(𝑁 ∈ ran SucMap → pre 𝑁 SucMap 𝑁)
 
12-Jan-2026eupre2 38956 Unique predecessor exists on the range of the successor map. (Contributed by Peter Mazsa, 12-Jan-2026.)
(𝑁𝑉 → (𝑁 ∈ ran SucMap ↔ ∃!𝑚 𝑚 SucMap 𝑁))
 
12-Jan-2026preex 38955 The successor-predecessor exists. (Contributed by Peter Mazsa, 12-Jan-2026.)
pre 𝑁 ∈ V
 
12-Jan-2026exeupre 38954 Whenever a predecessor exists, it exists alone. (Contributed by Peter Mazsa, 12-Jan-2026.)
(𝑁𝑉 → (∃𝑚 𝑚 SucMap 𝑁 ↔ ∃!𝑚 𝑚 SucMap 𝑁))
 
12-Jan-2026dfpre3 38941 Alternate definition of the successor-predecessor. (Contributed by Peter Mazsa, 12-Jan-2026.)
(𝑁𝑉 → pre 𝑁 = (℩𝑚 suc 𝑚 = 𝑁))
 
12-Jan-2026dfpre2 38940 Alternate definition of the successor-predecessor. (Contributed by Peter Mazsa, 12-Jan-2026.)
(𝑁𝑉 → pre 𝑁 = (℩𝑚𝑚 SucMap 𝑁))
 
12-Jan-2026exeupre2 38935 Whenever a predecessor exists, it exists alone. (Contributed by Peter Mazsa, 12-Jan-2026.)
(∃𝑚 suc 𝑚 = 𝑁 ↔ ∃!𝑚 suc 𝑚 = 𝑁)
 
12-Jan-2026mopre 38934 There is at most one predecessor of 𝑁. (Contributed by Peter Mazsa, 12-Jan-2026.)
∃*𝑚 suc 𝑚 = 𝑁
 
12-Jan-2026fineqvnttrclse 35384 A counterexample demonstrating that ttrclse 9679 does not hold when all sets are finite. (Contributed by BTernaryTau, 12-Jan-2026.)
𝑅 = {⟨𝑥, 𝑦⟩ ∣ (𝑥𝐴𝑥 = suc 𝑦)}    &   𝐴 = ω       (Fin = V → (𝑅 Se 𝐴 ∧ ¬ t++(𝑅𝐴) Se 𝐴))
 
12-Jan-2026fineqvnttrclselem3 35383 Lemma for fineqvnttrclse 35384. (Contributed by BTernaryTau, 12-Jan-2026.)
𝑅 = {⟨𝑥, 𝑦⟩ ∣ (𝑥𝐴𝑥 = suc 𝑦)}    &   𝐴 = ω    &   𝐹 = (𝑣 ∈ suc suc 𝑁 {𝑑 ∈ On ∣ (𝑣 +o 𝑑) = 𝐵})       ((𝐵 ∈ (ω ∖ 1o) ∧ 𝑁𝐵) → ∀𝑎 ∈ suc 𝑁(𝐹𝑎)𝑅(𝐹‘suc 𝑎))
 
12-Jan-2026fineqvnttrclselem2 35382 Lemma for fineqvnttrclse 35384. (Contributed by BTernaryTau, 12-Jan-2026.)
𝐹 = (𝑣 ∈ suc suc 𝑁 {𝑑 ∈ On ∣ (𝑣 +o 𝑑) = 𝐵})       ((𝐵 ∈ (ω ∖ 1o) ∧ 𝑁𝐵𝐴 ∈ suc suc 𝑁) → (𝐴 +o (𝐹𝐴)) = 𝐵)
 
12-Jan-2026fineqvnttrclselem1 35381 Lemma for fineqvnttrclse 35384. (Contributed by BTernaryTau, 12-Jan-2026.)
(𝐵 ∈ (ω ∖ 1o) → {𝑑 ∈ On ∣ (𝐴 +o 𝑑) = 𝐵} ∈ ω)
 
11-Jan-2026splyval 33817 The symmetric polynomials for a given index 𝐼 of variables and base ring 𝑅. These are the fixed points of the action 𝐴 which permutes variables. (Contributed by Thierry Arnoux, 11-Jan-2026.)
𝑆 = (SymGrp‘𝐼)    &   𝑃 = (Base‘𝑆)    &   𝑀 = (Base‘(𝐼 mPoly 𝑅))    &   𝐴 = (𝑑𝑃, 𝑓𝑀 ↦ (𝑥 ∈ { ∈ (ℕ0m 𝐼) ∣ finSupp 0} ↦ (𝑓‘(𝑥𝑑))))    &   (𝜑𝐼𝑉)    &   (𝜑𝑅𝑊)       (𝜑 → (𝐼SymPoly𝑅) = (𝑀FixPts𝐴))
 
11-Jan-2026df-sply 33815 Define symmetric polynomials. See splyval 33817 for a more readable expression. (Contributed by Thierry Arnoux, 11-Jan-2026.)
SymPoly = (𝑖 ∈ V, 𝑟 ∈ V ↦ ((Base‘(𝑖 mPoly 𝑟))FixPts(𝑑 ∈ (Base‘(SymGrp‘𝑖)), 𝑓 ∈ (Base‘(𝑖 mPoly 𝑟)) ↦ (𝑥 ∈ { ∈ (ℕ0m 𝑖) ∣ finSupp 0} ↦ (𝑓‘(𝑥𝑑))))))
 
11-Jan-2026mplvrpmmhm 33804 The action of permuting variables in a multivariate polynomial is a monoid homomorphism. (Contributed by Thierry Arnoux, 11-Jan-2026.)
𝑆 = (SymGrp‘𝐼)    &   𝑃 = (Base‘𝑆)    &   𝑀 = (Base‘(𝐼 mPoly 𝑅))    &   𝐴 = (𝑑𝑃, 𝑓𝑀 ↦ (𝑥 ∈ { ∈ (ℕ0m 𝐼) ∣ finSupp 0} ↦ (𝑓‘(𝑥𝑑))))    &   (𝜑𝐼𝑉)    &   𝐹 = (𝑓𝑀 ↦ (𝐷𝐴𝑓))    &   𝑊 = (𝐼 mPoly 𝑅)    &   (𝜑𝑅 ∈ Ring)    &   (𝜑𝐷𝑃)       (𝜑𝐹 ∈ (𝑊 MndHom 𝑊))
 
11-Jan-2026mplvrpmlem 33801 Lemma for mplvrpmga 33803 and others. (Contributed by Thierry Arnoux, 11-Jan-2026.)
𝑆 = (SymGrp‘𝐼)    &   𝑃 = (Base‘𝑆)    &   (𝜑𝐼𝑉)    &   (𝜑𝐷𝑃)    &   (𝜑𝑋 ∈ { ∈ (ℕ0m 𝐼) ∣ finSupp 0})       (𝜑 → (𝑋𝐷) ∈ { ∈ (ℕ0m 𝐼) ∣ finSupp 0})
 
11-Jan-2026constcof 32773 Composition with a constant function. See also fcoconst 7112. (Contributed by Thierry Arnoux, 11-Jan-2026.)
(𝜑𝐹:𝑋𝐼)    &   (𝜑𝑌𝑉)       (𝜑 → ((𝐼 × {𝑌}) ∘ 𝐹) = (𝑋 × {𝑌}))
 
10-Jan-2026finextalg 33956 A finite field extension is algebraic. Proposition 1.1 of [Lang], p. 224. (Contributed by Thierry Arnoux, 10-Jan-2026.)
(𝜑𝐸/FinExt𝐹)       (𝜑𝐸/AlgExt𝐹)
 
10-Jan-2026bralgext 33955 Express the fact that a field extension 𝐸 / 𝐹 is algebraic. (Contributed by Thierry Arnoux, 10-Jan-2026.)
𝐵 = (Base‘𝐸)    &   𝐶 = (Base‘𝐹)    &   (𝜑𝐸𝑉)    &   (𝜑𝐹𝑉)       (𝜑 → (𝐸/AlgExt𝐹 ↔ (𝐸/FldExt𝐹 ∧ (𝐸 IntgRing 𝐶) = 𝐵)))
 
10-Jan-2026extdgfialg 33952 A finite field extension 𝐸 / 𝐹 is algebraic. Part of the proof of Proposition 1.1 of [Lang], p. 224. (Contributed by Thierry Arnoux, 10-Jan-2026.)
𝐵 = (Base‘𝐸)    &   𝐷 = (dim‘((subringAlg ‘𝐸)‘𝐹))    &   (𝜑𝐸 ∈ Field)    &   (𝜑𝐹 ∈ (SubDRing‘𝐸))    &   (𝜑𝐷 ∈ ℕ0)       (𝜑 → (𝐸 IntgRing 𝐹) = 𝐵)
 
10-Jan-2026extdgfialglem2 33951 Lemma for extdgfialg 33952. (Contributed by Thierry Arnoux, 10-Jan-2026.)
𝐵 = (Base‘𝐸)    &   𝐷 = (dim‘((subringAlg ‘𝐸)‘𝐹))    &   (𝜑𝐸 ∈ Field)    &   (𝜑𝐹 ∈ (SubDRing‘𝐸))    &   (𝜑𝐷 ∈ ℕ0)    &   𝑍 = (0g𝐸)    &    · = (.r𝐸)    &   𝐺 = (𝑛 ∈ (0...𝐷) ↦ (𝑛(.g‘(mulGrp‘((subringAlg ‘𝐸)‘𝐹)))𝑋))    &   (𝜑𝑋𝐵)    &   (𝜑𝐴:(0...𝐷)⟶𝐹)    &   (𝜑𝐴 finSupp 𝑍)    &   (𝜑 → (𝐸 Σg (𝐴f · 𝐺)) = 𝑍)    &   (𝜑𝐴 ≠ ((0...𝐷) × {𝑍}))       (𝜑𝑋 ∈ (𝐸 IntgRing 𝐹))
 
10-Jan-2026extdgfialglem1 33950 Lemma for extdgfialg 33952. (Contributed by Thierry Arnoux, 10-Jan-2026.)
𝐵 = (Base‘𝐸)    &   𝐷 = (dim‘((subringAlg ‘𝐸)‘𝐹))    &   (𝜑𝐸 ∈ Field)    &   (𝜑𝐹 ∈ (SubDRing‘𝐸))    &   (𝜑𝐷 ∈ ℕ0)    &   𝑍 = (0g𝐸)    &    · = (.r𝐸)    &   𝐺 = (𝑛 ∈ (0...𝐷) ↦ (𝑛(.g‘(mulGrp‘((subringAlg ‘𝐸)‘𝐹)))𝑋))    &   (𝜑𝑋𝐵)       (𝜑 → ∃𝑎 ∈ (𝐹m (0...𝐷))(𝑎 finSupp 𝑍 ∧ ((𝐸 Σg (𝑎f · 𝐺)) = 𝑍𝑎 ≠ ((0...𝐷) × {𝑍}))))
 
10-Jan-2026finextfldext 33922 A finite field extension is a field extension. (Contributed by Thierry Arnoux, 10-Jan-2026.)
(𝜑𝐸/FinExt𝐹)       (𝜑𝐸/FldExt𝐹)
 
10-Jan-2026srapwov 33847 The "power" operation on a subring algebra. (Contributed by Thierry Arnoux, 10-Jan-2026.)
𝐴 = ((subringAlg ‘𝑊)‘𝑆)    &   (𝜑𝑊 ∈ Ring)    &   (𝜑𝑆 ⊆ (Base‘𝑊))       (𝜑 → (.g‘(mulGrp‘𝑊)) = (.g‘(mulGrp‘𝐴)))
 
10-Jan-2026mplvrpmga 33803 The action of permuting variables in a multivariate polynomial is a group action. (Contributed by Thierry Arnoux, 10-Jan-2026.)
𝑆 = (SymGrp‘𝐼)    &   𝑃 = (Base‘𝑆)    &   𝑀 = (Base‘(𝐼 mPoly 𝑅))    &   𝐴 = (𝑑𝑃, 𝑓𝑀 ↦ (𝑥 ∈ { ∈ (ℕ0m 𝐼) ∣ finSupp 0} ↦ (𝑓‘(𝑥𝑑))))    &   (𝜑𝐼𝑉)       (𝜑𝐴 ∈ (𝑆 GrpAct 𝑀))
 
10-Jan-2026mplvrpmfgalem 33802 Permuting variables in a multivariate polynomial conserves finite support. (Contributed by Thierry Arnoux, 10-Jan-2026.)
𝑆 = (SymGrp‘𝐼)    &   𝑃 = (Base‘𝑆)    &   𝑀 = (Base‘(𝐼 mPoly 𝑅))    &   𝐴 = (𝑑𝑃, 𝑓𝑀 ↦ (𝑥 ∈ { ∈ (ℕ0m 𝐼) ∣ finSupp 0} ↦ (𝑓‘(𝑥𝑑))))    &   (𝜑𝐼𝑉)    &    0 = (0g𝑅)    &   (𝜑𝐹𝑀)    &   (𝜑𝑄𝑃)       (𝜑 → (𝑄𝐴𝐹) finSupp 0 )
 
10-Jan-2026psrbasfsupp 33769 Rewrite a finite support for nonnegative integers : For functions mapping a set 𝐼 to the nonnegative integers, having finite support can also be written as having a finite preimage of the positive integers. The latter expression is used for example in psrbas 21966, but with the former expression, theorems about finite support can be used more directly. (Contributed by Thierry Arnoux, 10-Jan-2026.)
𝐷 = {𝑓 ∈ (ℕ0m 𝐼) ∣ 𝑓 finSupp 0}       𝐷 = {𝑓 ∈ (ℕ0m 𝐼) ∣ (𝑓 “ ℕ) ∈ Fin}
 
10-Jan-2026evls1monply1 33736 Subring evaluation of a scaled monomial. (Contributed by Thierry Arnoux, 10-Jan-2026.)
𝑄 = (𝑆 evalSub1 𝑅)    &   𝐾 = (Base‘𝑆)    &   𝑊 = (Poly1𝑈)    &   𝑈 = (𝑆s 𝑅)    &   𝑋 = (var1𝑈)    &    = (.g‘(mulGrp‘𝑊))    &    = (.g‘(mulGrp‘𝑆))    &    = ( ·𝑠𝑊)    &    · = (.r𝑆)    &   (𝜑𝑆 ∈ CRing)    &   (𝜑𝑅 ∈ (SubRing‘𝑆))    &   (𝜑𝐴𝑅)    &   (𝜑𝑁 ∈ ℕ0)    &   (𝜑𝑌𝐾)       (𝜑 → ((𝑄‘(𝐴 (𝑁 𝑋)))‘𝑌) = (𝐴 · (𝑁 𝑌)))
 
10-Jan-2026fcobijfs2 32874 Composing finitely supported functions with a bijection yields a bijection between sets of finitely supported functions. See also fcobijfs 32873 and mapfien 9351. (Contributed by Thierry Arnoux, 10-Jan-2026.)
(𝜑𝐺:𝑅1-1-onto𝑆)    &   (𝜑𝑅𝑈)    &   (𝜑𝑆𝑉)    &   (𝜑𝑇𝑊)    &   (𝜑𝑂𝑇)    &   𝑋 = {𝑔 ∈ (𝑇m 𝑆) ∣ 𝑔 finSupp 𝑂}    &   𝑌 = { ∈ (𝑇m 𝑅) ∣ finSupp 𝑂}       (𝜑 → (𝑓𝑋 ↦ (𝑓𝐺)):𝑋1-1-onto𝑌)
 
10-Jan-2026f1oeq3dd 32781 Equality deduction for one-to-one onto functions. (Contributed by Thierry Arnoux, 10-Jan-2026.)
(𝜑𝐹:𝐶1-1-onto𝐴)    &   (𝜑𝐴 = 𝐵)       (𝜑𝐹:𝐶1-1-onto𝐵)
 
10-Jan-2026fconst7v 32772 An alternative way to express a constant function. (Contributed by Glauco Siliprandi, 5-Feb-2022.) Removed hyphotheses as suggested by SN (Revised by Thierry Arnoux, 10-Jan-2026.)
(𝜑𝐹 Fn 𝐴)    &   ((𝜑𝑥𝐴) → (𝐹𝑥) = 𝐵)       (𝜑𝐹 = (𝐴 × {𝐵}))
 
10-Jan-2026breq2dd 32756 Equality deduction for a binary relation. (Contributed by Thierry Arnoux, 10-Jan-2026.)
(𝜑𝐴 = 𝐵)    &   (𝜑𝐶𝑅𝐴)       (𝜑𝐶𝑅𝐵)
 
10-Jan-2026breq1dd 32755 Equality deduction for a binary relation. (Contributed by Thierry Arnoux, 10-Jan-2026.)
(𝜑𝐴 = 𝐵)    &   (𝜑𝐴𝑅𝐶)       (𝜑𝐵𝑅𝐶)
 
8-Jan-2026sucmapleftuniq 38953 Left uniqueness of the successor mapping. (Contributed by Peter Mazsa, 8-Jan-2026.)
((𝐿𝑉𝑀𝑊𝑁𝑋) → ((𝐿 SucMap 𝑁𝑀 SucMap 𝑁) → 𝐿 = 𝑀))
 
7-Jan-2026sucmapsuc 38952 A set is succeeded by its successor. (Contributed by Peter Mazsa, 7-Jan-2026.)
(𝑀𝑉𝑀 SucMap suc 𝑀)
 
7-Jan-2026dmsucmap 38931 The domain of the successor map is the universe. (Contributed by Peter Mazsa, 7-Jan-2026.)
dom SucMap = V
 
7-Jan-2026relsucmap 38930 The successor map is a relation. (Contributed by Peter Mazsa, 7-Jan-2026.)
Rel SucMap
 
6-Jan-2026brsucmap 38929 Binary relation form of the successor map, general version. (Contributed by Peter Mazsa, 6-Jan-2026.)
((𝑀𝑉𝑁𝑊) → (𝑀 SucMap 𝑁 ↔ suc 𝑀 = 𝑁))
 
6-Jan-2026dfsuccf2 36255 Alternate definition of Scott Fenton's version of Succ, cf. df-sucmap 38925. (Contributed by Peter Mazsa, 6-Jan-2026.)
Succ = {⟨𝑚, 𝑛⟩ ∣ suc 𝑚 = 𝑛}
 
1-Jan-2026rightge0 27891 A surreal is non-negative iff all its right options are positive. (Contributed by Scott Fenton, 1-Jan-2026.)
(𝜑𝐴 <<s 𝐵)    &   (𝜑𝑋 = (𝐴 |s 𝐵))       (𝜑 → ( 0s ≤s 𝑋 ↔ ∀𝑥𝑅𝐵 0s <s 𝑥𝑅))
 
31-Dec-2025tz9.1regs 35394 Every set has a transitive closure (the smallest transitive extension). This version of tz9.1 9681 depends on ax-regs 35386 instead of ax-reg 9537 and ax-inf2 9593. This suggests a possible answer to the third question posed in tz9.1 9681, namely that the missing property is that countably infinite classes must obey regularity. In ZF set theory we can prove this by showing that countably infinite classes are sets and thus ax-reg 9537 applies to them directly, but in a finitist context it seems that an axiom like ax-regs 35386 is required since countably infinite classes are proper classes.

A related candidate for the missing property is the non-existence of infinite descending -chains, proven as noinfep 9612 using ax-reg 9537 and ax-inf2 9593 and as noinfepregs 35393 using ax-regs 35386. If all sets are finite, then the existence of such a chain implies there is a set which does not have a transitive closure, as shown in fineqvinfep 35385. (Contributed by BTernaryTau, 31-Dec-2025.)

𝐴 ∈ V       𝑥(𝐴𝑥 ∧ Tr 𝑥 ∧ ∀𝑦((𝐴𝑦 ∧ Tr 𝑦) → 𝑥𝑦))
 
31-Dec-2025setinds2regs 35391 Principle of set induction (or E-induction). If a property passes from all elements of 𝑥 to 𝑥 itself, then it holds for all 𝑥. (Contributed by BTernaryTau, 31-Dec-2025.)
(𝑥 = 𝑦 → (𝜑𝜓))    &   (∀𝑦𝑥 𝜓𝜑)       𝜑
 
31-Dec-2025nelaneqOLD 9548 Obsolete version of nelaneq 9547 as of 22-Apr-2026. (Proposed by BJ, 18-Jun-2022.) (Contributed by AV, 18-Jun-2022.) (Proof shortened by TM, 31-Dec-2025.) (Proof modification is discouraged.) (New usage is discouraged.)
¬ (𝐴𝐵𝐴 = 𝐵)
 
31-Dec-2025zfregcl 9539 The Axiom of Regularity with class variables. (Contributed by NM, 5-Aug-1994.) Replace sethood hypothesis with sethood antecedent. (Revised by BJ, 27-Apr-2021.) Avoid ax-10 2174 and ax-12 2211. (Revised by TM, 31-Dec-2025.)
(𝐴𝑉 → (∃𝑥 𝑥𝐴 → ∃𝑥𝐴𝑦𝑥 ¬ 𝑦𝐴))
 
31-Dec-2025dmcosseq 5952 Domain of a composition. (Contributed by NM, 28-May-1998.) (Proof shortened by Andrew Salmon, 27-Aug-2011.) Avoid ax-11 2190. (Revised by BTernaryTau, 23-Jun-2025.) Avoid ax-10 2174 and ax-12 2211. (Revised by TM, 31-Dec-2025.)
(ran 𝐵 ⊆ dom 𝐴 → dom (𝐴𝐵) = dom 𝐵)
 
31-Dec-2025dmcoss 5949 Domain of a composition. Theorem 21 of [Suppes] p. 63. (Contributed by NM, 19-Mar-1998.) (Proof shortened by Andrew Salmon, 27-Aug-2011.) Avoid ax-10 2174 and ax-12 2211. (Revised by TM, 31-Dec-2025.)
dom (𝐴𝐵) ⊆ dom 𝐵
 
30-Dec-2025grlimedgnedg 48717 In general, the image of an edge of a graph by a local isomprphism is not an edge of the other graph, proven by an example (see gpg5edgnedg 48716). This theorem proves that the analogon (((𝐺 ∈ USPGraph ∧ 𝐻 ∈ USPGraph) ∧ (𝐹 ∈ (𝐺 GraphLocIso 𝐻) 𝐾𝐼)) → (𝐹𝐾) ∈ 𝐸) of grimedgi 48522 for ordinarily isomorphic graphs does not hold in general. (Contributed by AV, 30-Dec-2025.)
𝑔 ∈ USGraph ∃ ∈ USGraph ∃𝑓 ∈ (𝑔 GraphLocIso )∃𝑎 ∈ (Vtx‘𝑔)∃𝑏 ∈ (Vtx‘𝑔)({𝑎, 𝑏} ∈ (Edg‘𝑔) ∧ {(𝑓𝑎), (𝑓𝑏)} ∉ (Edg‘))
 
30-Dec-2025grimedgi 48522 Graph isomorphisms map edges onto the corresponding edges. (Contributed by AV, 30-Dec-2025.)
𝑉 = (Vtx‘𝐺)    &   𝐼 = (Edg‘𝐺)    &   𝐸 = (Edg‘𝐻)       ((𝐺 ∈ UHGraph ∧ 𝐻 ∈ UHGraph ∧ 𝐹 ∈ (𝐺 GraphIso 𝐻)) → (𝐾𝐼 → (𝐹𝐾) ∈ 𝐸))
 
30-Dec-2025fineqvr1ombregs 35398 All sets are finite iff all sets are hereditarily finite. (Contributed by BTernaryTau, 30-Dec-2025.)
(Fin = V ↔ (𝑅1 “ ω) = V)
 
30-Dec-2025unir1regs 35395 The cumulative hierarchy of sets covers the universe. This version of unir1 9768 replaces setind 9699 with setindregs 35390. (Contributed by BTernaryTau, 30-Dec-2025.)
(𝑅1 “ On) = V
 
30-Dec-2025setindregs 35390 Set (epsilon) induction. This version of setind 9699 replaces zfregs 9684 with axregszf 35389. (Contributed by BTernaryTau, 30-Dec-2025.)
(∀𝑥(𝑥𝐴𝑥𝐴) → 𝐴 = V)
 
30-Dec-2025axregszf 35389 Derivation of zfregs 9684 using ax-regs 35386. (Contributed by BTernaryTau, 30-Dec-2025.)
(𝐴 ≠ ∅ → ∃𝑥𝐴 (𝑥𝐴) = ∅)
 
30-Dec-2025axregscl 35388 A version of ax-regs 35386 with a class variable instead of a wff variable. Axiom D in Gödel, The Consistency of the Axiom of Choice and of the Generalized Continuum Hypothesis with the Axioms of Set Theory (1940), p. 6. (Contributed by BTernaryTau, 30-Dec-2025.)
(∃𝑥 𝑥𝐴 → ∃𝑦(𝑦𝐴 ∧ ∀𝑧(𝑧𝑦 → ¬ 𝑧𝐴)))
 
30-Dec-2025axreg 35387 Derivation of ax-reg 9537 from ax-regs 35386 and Tarski's FOL axiom schemes. This demonstrates the sense in which ax-regs 35386 is a stronger version of ax-reg 9537. (Contributed by BTernaryTau, 30-Dec-2025.)
(∃𝑦 𝑦𝑥 → ∃𝑦(𝑦𝑥 ∧ ∀𝑧(𝑧𝑦 → ¬ 𝑧𝑥)))
 
30-Dec-2025fineqvomon 35378 If all sets are finite, then the class of all natural numbers equals the proper class of all ordinal numbers. (Contributed by BTernaryTau, 30-Dec-2025.)
(Fin = V → ω = On)
 
30-Dec-2025r1omfi 35365 Hereditarily finite sets are finite sets. (Contributed by BTernaryTau, 30-Dec-2025.)
(𝑅1 “ ω) ⊆ Fin
 
30-Dec-2025r1elcl 35358 Each set of the cumulative hierarchy is closed under membership. (Contributed by BTernaryTau, 30-Dec-2025.)
((𝐴 ∈ (𝑅1𝐵) ∧ 𝐶𝐴) → 𝐶 ∈ (𝑅1𝐵))
 
30-Dec-2025elwf 35357 An element of a well-founded set is well-founded. (Contributed by BTernaryTau, 30-Dec-2025.)
((𝐴 (𝑅1 “ On) ∧ 𝐵𝐴) → 𝐵 (𝑅1 “ On))
 
29-Dec-2025gpg5edgnedg 48716 Two consecutive (according to the numbering) inside vertices of the Petersen graph G(5,2) are not connected by an edge, but are connected by an edge in a 5-prism G(5,1). (Contributed by AV, 29-Dec-2025.)
({⟨1, 0⟩, ⟨1, 1⟩} ∈ (Edg‘(5 gPetersenGr 1)) ∧ {⟨1, 0⟩, ⟨1, 1⟩} ∉ (Edg‘(5 gPetersenGr 2)))
 
29-Dec-2025axregs 35399 Derivation of ax-regs 35386 from the axioms of ZF set theory. (Contributed by BTernaryTau, 29-Dec-2025.)
(∃𝑥𝜑 → ∃𝑦(∀𝑥(𝑥 = 𝑦𝜑) ∧ ∀𝑧(𝑧𝑦 → ¬ ∀𝑥(𝑥 = 𝑧𝜑))))
 
29-Dec-2025ax-regs 35386 A strong version of the Axiom of Regularity. It states that if there exists a set with property 𝜑, then there must exist a set with property 𝜑 such that none of its elements have property 𝜑. This axiom can be derived from the axioms of ZF set theory as shown in axregs 35399, but this derivation relies on ax-inf2 9593 and is thus not possible in a finitist context. (Contributed by BTernaryTau, 29-Dec-2025.)
(∃𝑥𝜑 → ∃𝑦(∀𝑥(𝑥 = 𝑦𝜑) ∧ ∀𝑧(𝑧𝑦 → ¬ ∀𝑥(𝑥 = 𝑧𝜑))))
 
29-Dec-2025optocl 5739 Implicit substitution of class for ordered pair. (Contributed by NM, 5-Mar-1995.) Shorten and reduce axiom usage. (Revised by TM, 29-Dec-2025.)
𝐷 = (𝐵 × 𝐶)    &   (⟨𝑥, 𝑦⟩ = 𝐴 → (𝜑𝜓))    &   ((𝑥𝐵𝑦𝐶) → 𝜑)       (𝐴𝐷𝜓)
 
28-Dec-2025gpg5grlim 48679 A local isomorphism between the two generalized Petersen graphs G(N,K) of order 10 (𝑁 = 5), which are the Petersen graph G(5,2) and the 5-prism G(5,1). (Contributed by AV, 28-Dec-2025.)
( I ↾ ({0, 1} × (0..^5))) ∈ ((5 gPetersenGr 1) GraphLocIso (5 gPetersenGr 2))
 
28-Dec-2025clnbgr3stgrgrlim 48605 If all (closed) neighborhoods of the vertices in two simple graphs with the same order induce a subgraph which is isomorphic to an 𝑁-star, then any bijection between the vertices is a local isomorphism between the two graphs. (Contributed by AV, 28-Dec-2025.)
𝑁 ∈ ℕ0    &   𝑉 = (Vtx‘𝐺)    &   𝑊 = (Vtx‘𝐻)       (((𝐺 ∈ USGraph ∧ 𝐻 ∈ USGraph ∧ 𝐹:𝑉1-1-onto𝑊) ∧ ∀𝑥𝑉 (𝐺 ISubGr (𝐺 ClNeighbVtx 𝑥)) ≃𝑔𝑟 (StarGr‘𝑁) ∧ ∀𝑦𝑊 (𝐻 ISubGr (𝐻 ClNeighbVtx 𝑦)) ≃𝑔𝑟 (StarGr‘𝑁)) → 𝐹 ∈ (𝐺 GraphLocIso 𝐻))
 
28-Dec-2025grlimgredgex 48586 Local isomorphisms between simple pseudographs map an edge onto an edge with an endpoint being the image of one of the endpoints of the first edge under the local isomorphism. (Contributed by AV, 28-Dec-2025.)
𝐼 = (Edg‘𝐺)    &   𝐸 = (Edg‘𝐻)    &   𝑉 = (Vtx‘𝐻)    &   (𝜑𝐴𝑋)    &   (𝜑𝐵𝑌)    &   (𝜑 → {𝐴, 𝐵} ∈ 𝐼)    &   (𝜑𝐺 ∈ USPGraph)    &   (𝜑𝐻 ∈ USPGraph)    &   (𝜑𝐹 ∈ (𝐺 GraphLocIso 𝐻))       (𝜑 → ∃𝑣𝑉 {(𝐹𝐴), 𝑣} ∈ 𝐸)
 
28-Dec-2025grlimprclnbgrvtx 48585 For two locally isomorphic graphs 𝐺 and 𝐻 and a vertex 𝐴 of 𝐺 there is a bijection 𝑓 mapping the closed neighborhood 𝑁 of 𝐴 onto the closed neighborhood 𝑀 of (𝐹𝐴), so that the mapped vertices of an edge {𝐴, 𝐵} containing the vertex 𝐴 is an edge between the vertices in 𝑀 containing the vertex (𝐹𝐴). (Contributed by AV, 28-Dec-2025.)
𝑁 = (𝐺 ClNeighbVtx 𝐴)    &   𝐼 = (Edg‘𝐺)    &   𝐾 = {𝑥𝐼𝑥𝑁}    &   𝑀 = (𝐻 ClNeighbVtx (𝐹𝐴))    &   𝐽 = (Edg‘𝐻)    &   𝐿 = {𝑥𝐽𝑥𝑀}       (((𝐺 ∈ USPGraph ∧ 𝐻 ∈ USPGraph) ∧ 𝐹 ∈ (𝐺 GraphLocIso 𝐻) ∧ (𝐴𝑉𝐵𝑊 ∧ {𝐴, 𝐵} ∈ 𝐼)) → ∃𝑓(𝑓:𝑁1-1-onto𝑀 ∧ ({(𝐹𝐴), (𝑓𝐵)} ∈ 𝐿 ∨ {(𝐹𝐴), (𝑓𝐴)} ∈ 𝐿)))
 
28-Dec-2025clnbupgreli 48421 A member of the closed neighborhood of a vertex in a pseudograph. (Contributed by AV, 28-Dec-2025.)
𝐸 = (Edg‘𝐺)       ((𝐺 ∈ UPGraph ∧ 𝑁 ∈ (𝐺 ClNeighbVtx 𝐾)) → (𝑁 = 𝐾 ∨ {𝑁, 𝐾} ∈ 𝐸))
 
28-Dec-2025elirrvALT 9557 Alternate proof of elirrv 9542, shorter but using more axioms. (Contributed by BTernaryTau, 28-Dec-2025.) (Proof modification is discouraged.) (New usage is discouraged.)
¬ 𝑥𝑥
 
27-Dec-2025grlimgrtrilem1 48587 Lemma 3 for grlimgrtri 48589. (Contributed by AV, 24-Aug-2025.) (Proof shortened by AV, 27-Dec-2025.)
𝑉 = (Vtx‘𝐺)    &   𝑁 = (𝐺 ClNeighbVtx 𝑎)    &   𝐼 = (Edg‘𝐺)    &   𝐾 = {𝑥𝐼𝑥𝑁}       ((𝐺 ∈ UHGraph ∧ ({𝑎, 𝑏} ∈ 𝐼 ∧ {𝑎, 𝑐} ∈ 𝐼 ∧ {𝑏, 𝑐} ∈ 𝐼)) → ({𝑎, 𝑏} ∈ 𝐾 ∧ {𝑎, 𝑐} ∈ 𝐾 ∧ {𝑏, 𝑐} ∈ 𝐾))
 
27-Dec-2025grlimpredg 48584 For two locally isomorphic graphs 𝐺 and 𝐻 and a vertex 𝐴 of 𝐺 there is a bijection 𝑓 mapping the closed neighborhood 𝑁 of 𝐴 onto the closed neighborhood 𝑀 of (𝐹𝐴), so that the mapped vertices of an edge {𝐴, 𝐵} containing the vertex 𝐴 is an edge in 𝐻. (Contributed by AV, 27-Dec-2025.)
𝑁 = (𝐺 ClNeighbVtx 𝐴)    &   𝐼 = (Edg‘𝐺)    &   𝐾 = {𝑥𝐼𝑥𝑁}    &   𝑀 = (𝐻 ClNeighbVtx (𝐹𝐴))    &   𝐽 = (Edg‘𝐻)    &   𝐿 = {𝑥𝐽𝑥𝑀}       (((𝐺 ∈ USPGraph ∧ 𝐻 ∈ USPGraph) ∧ 𝐹 ∈ (𝐺 GraphLocIso 𝐻) ∧ (𝐴𝑉𝐵𝑊 ∧ {𝐴, 𝐵} ∈ 𝐼)) → ∃𝑓(𝑓:𝑁1-1-onto𝑀 ∧ {(𝑓𝐴), (𝑓𝐵)} ∈ 𝐽))
 
27-Dec-2025grlimprclnbgredg 48583 For two locally isomorphic graphs 𝐺 and 𝐻 and a vertex 𝐴 of 𝐺 there is a bijection 𝑓 mapping the closed neighborhood 𝑁 of 𝐴 onto the closed neighborhood 𝑀 of (𝐹𝐴), so that the mapped vertices of an edge {𝐴, 𝐵} containing the vertex 𝐴 is an edge between the vertices in 𝑀. (Contributed by AV, 27-Dec-2025.)
𝑁 = (𝐺 ClNeighbVtx 𝐴)    &   𝐼 = (Edg‘𝐺)    &   𝐾 = {𝑥𝐼𝑥𝑁}    &   𝑀 = (𝐻 ClNeighbVtx (𝐹𝐴))    &   𝐽 = (Edg‘𝐻)    &   𝐿 = {𝑥𝐽𝑥𝑀}       (((𝐺 ∈ USPGraph ∧ 𝐻 ∈ USPGraph) ∧ 𝐹 ∈ (𝐺 GraphLocIso 𝐻) ∧ (𝐴𝑉𝐵𝑊 ∧ {𝐴, 𝐵} ∈ 𝐼)) → ∃𝑓(𝑓:𝑁1-1-onto𝑀 ∧ {(𝑓𝐴), (𝑓𝐵)} ∈ 𝐿))
 
27-Dec-2025elirrvOLD 9543 Obsolete version of elirrv 9542 as of 21-May-2026. (Contributed by NM, 19-Aug-1993.) Reduce axiom dependencies and make use of ax-reg 9537 directly. (Revised by BTernaryTau, 27-Dec-2025.) (Proof modification is discouraged.) (New usage is discouraged.)
¬ 𝑥𝑥
 
25-Dec-2025grlimprclnbgr 48582 For two locally isomorphic graphs 𝐺 and 𝐻 and a vertex 𝐴 of 𝐺 there are two bijections 𝑓 and 𝑔 mapping the closed neighborhood 𝑁 of 𝐴 onto the closed neighborhood 𝑀 of (𝐹𝐴) and the edges between the vertices in 𝑁 onto the edges between the vertices in 𝑀, so that the mapped vertices of an edge {𝐴, 𝐵} containing the vertex 𝐴 is an edge between the vertices in 𝑀. (Contributed by AV, 25-Dec-2025.)
𝑁 = (𝐺 ClNeighbVtx 𝐴)    &   𝐼 = (Edg‘𝐺)    &   𝐾 = {𝑥𝐼𝑥𝑁}    &   𝑀 = (𝐻 ClNeighbVtx (𝐹𝐴))    &   𝐽 = (Edg‘𝐻)    &   𝐿 = {𝑥𝐽𝑥𝑀}       (((𝐺 ∈ USPGraph ∧ 𝐻 ∈ USPGraph) ∧ 𝐹 ∈ (𝐺 GraphLocIso 𝐻) ∧ (𝐴𝑉𝐵𝑊 ∧ {𝐴, 𝐵} ∈ 𝐼)) → ∃𝑓𝑔(𝑓:𝑁1-1-onto𝑀𝑔:𝐾1-1-onto𝐿 ∧ {(𝑓𝐴), (𝑓𝐵)} = (𝑔‘{𝐴, 𝐵})))
 
25-Dec-2025grlimedgclnbgr 48581 For two locally isomorphic graphs 𝐺 and 𝐻 and a vertex 𝐴 of 𝐺 there are two bijections 𝑓 and 𝑔 mapping the closed neighborhood 𝑁 of 𝐴 onto the closed neighborhood 𝑀 of (𝐹𝐴) and the edges between the vertices in 𝑁 onto the edges between the vertices in 𝑀, so that the mapped vertices of an edge 𝐸 containing the vertex 𝐴 is an edge between the vertices in 𝑀. (Contributed by AV, 25-Dec-2025.)
𝑁 = (𝐺 ClNeighbVtx 𝐴)    &   𝐼 = (Edg‘𝐺)    &   𝐾 = {𝑥𝐼𝑥𝑁}    &   𝑀 = (𝐻 ClNeighbVtx (𝐹𝐴))    &   𝐽 = (Edg‘𝐻)    &   𝐿 = {𝑥𝐽𝑥𝑀}       (((𝐺 ∈ USPGraph ∧ 𝐻 ∈ USPGraph) ∧ 𝐹 ∈ (𝐺 GraphLocIso 𝐻) ∧ (𝐸𝐼𝐴𝐸)) → ∃𝑓𝑔(𝑓:𝑁1-1-onto𝑀𝑔:𝐾1-1-onto𝐿 ∧ (𝑓𝐸) = (𝑔𝐸)))
 
25-Dec-2025clnbgrvtxedg 48580 An edge 𝐸 containing a vertex 𝐴 is an edge in the closed neighborhood of this vertex 𝐴. (Contributed by AV, 25-Dec-2025.)
𝑁 = (𝐺 ClNeighbVtx 𝐴)    &   𝐼 = (Edg‘𝐺)    &   𝐾 = {𝑥𝐼𝑥𝑁}       ((𝐺 ∈ UHGraph ∧ 𝐸𝐼𝐴𝐸) → 𝐸𝐾)
 
23-Dec-2025zsoring 28479 The surreal integers form an ordered ring. Note that we have to restrict the operations here since No is a proper class. (Contributed by Scott Fenton, 23-Dec-2025.)
s = (Base‘𝐾)    &   ( +s ↾ (ℤs × ℤs)) = (+g𝐾)    &   ( ·s ↾ (ℤs × ℤs)) = (.r𝐾)    &   ( ≤s ∩ (ℤs × ℤs)) = (le‘𝐾)    &    0s = (0g𝐾)       𝐾 ∈ oRing
 
12-Dec-2025z12subscl 28549 The dyadics are closed under subtraction. (Contributed by Scott Fenton, 12-Dec-2025.)
((𝐴 ∈ ℤs[1/2] ∧ 𝐵 ∈ ℤs[1/2]) → (𝐴 -s 𝐵) ∈ ℤs[1/2])
 
11-Dec-2025z12shalf 28550 Half of a dyadic is a dyadic. (Contributed by Scott Fenton, 11-Dec-2025.)
(𝐴 ∈ ℤs[1/2] → (𝐴 /su 2s) ∈ ℤs[1/2])
 
11-Dec-2025z12addscl 28547 The dyadics are closed under addition. (Contributed by Scott Fenton, 11-Dec-2025.)
((𝐴 ∈ ℤs[1/2] ∧ 𝐵 ∈ ℤs[1/2]) → (𝐴 +s 𝐵) ∈ ℤs[1/2])
 
11-Dec-2025z12no 28546 A dyadic is a surreal. (Contributed by Scott Fenton, 11-Dec-2025.)
(𝐴 ∈ ℤs[1/2] → 𝐴 No )
 
11-Dec-2025avglts2d 28524 Ordering property for average. (Contributed by Scott Fenton, 11-Dec-2025.)
(𝜑𝐴 No )    &   (𝜑𝐵 No )       (𝜑 → (𝐴 <s 𝐵 ↔ ((𝐴 +s 𝐵) /su 2s) <s 𝐵))
 
11-Dec-2025avglts1d 28523 Ordering property for average. (Contributed by Scott Fenton, 11-Dec-2025.)
(𝜑𝐴 No )    &   (𝜑𝐵 No )       (𝜑 → (𝐴 <s 𝐵𝐴 <s ((𝐴 +s 𝐵) /su 2s)))
 
11-Dec-2025pw2ltmuldivs2d 28521 Surreal less-than relationship between division and multiplication for powers of two. (Contributed by Scott Fenton, 11-Dec-2025.)
(𝜑𝐴 No )    &   (𝜑𝐵 No )    &   (𝜑𝑁 ∈ ℕ0s)       (𝜑 → (((2ss𝑁) ·s 𝐴) <s 𝐵𝐴 <s (𝐵 /su (2ss𝑁))))
 
11-Dec-2025pw2ltdivmulsd 28520 Surreal less-than relationship between division and multiplication for powers of two. (Contributed by Scott Fenton, 11-Dec-2025.)
(𝜑𝐴 No )    &   (𝜑𝐵 No )    &   (𝜑𝑁 ∈ ℕ0s)       (𝜑 → ((𝐴 /su (2ss𝑁)) <s 𝐵𝐴 <s ((2ss𝑁) ·s 𝐵)))
 
11-Dec-2025pw2divscan4d 28514 Cancellation law for divison by powers of two. (Contributed by Scott Fenton, 11-Dec-2025.)
(𝜑𝐴 No )    &   (𝜑𝑁 ∈ ℕ0s)    &   (𝜑𝑀 ∈ ℕ0s)       (𝜑 → (𝐴 /su (2ss𝑁)) = (((2ss𝑀) ·s 𝐴) /su (2ss(𝑁 +s 𝑀))))
 
11-Dec-2025pw2divsassd 28513 An associative law for division by powers of two. (Contributed by Scott Fenton, 11-Dec-2025.)
(𝜑𝐴 No )    &   (𝜑𝐵 No )    &   (𝜑𝑁 ∈ ℕ0s)       (𝜑 → ((𝐴 ·s 𝐵) /su (2ss𝑁)) = (𝐴 ·s (𝐵 /su (2ss𝑁))))
 
11-Dec-2025zexpscl 28504 Closure law for surreal integer exponentiation. (Contributed by Scott Fenton, 11-Dec-2025.)
((𝐴 ∈ ℤs𝑁 ∈ ℕ0s) → (𝐴s𝑁) ∈ ℤs)
 
11-Dec-2025nobdaymin 27823 Any non-empty class of surreals has a birthday-minimal element. (Contributed by Scott Fenton, 11-Dec-2025.)
((𝐴 No 𝐴 ≠ ∅) → ∃𝑥𝐴 ( bday 𝑥) = ( bday 𝐴))
 
10-Dec-2025sinnpoly 47449 Sine function is not a polynomial with complex coefficients. Indeed, it has infinitely many zeros but is not constant zero, contrary to fta1 26349. (Contributed by Ender Ting, 10-Dec-2025.)
¬ sin ∈ (Poly‘ℂ)
 
10-Dec-2025tannpoly 47448 The tangent function is not a polynomial with complex coefficients, as it is not defined on the whole complex plane. (Contributed by Ender Ting, 10-Dec-2025.)
¬ tan ∈ (Poly‘ℂ)
 
8-Dec-2025cjnpoly 47447 Complex conjugation operator is not a polynomial with complex coefficients. Indeed; if it was, then multiplying 𝑥 conjugate by 𝑥 itself and adding 1 would yield a nowhere-zero non-constant polynomial, contrary to the fta 27121. (Contributed by Ender Ting, 8-Dec-2025.)
¬ ∗ ∈ (Poly‘ℂ)
 
6-Dec-2025vonf1owevOLD 35417 Obsolete version of vonf1owev 35416 as of 11-Jun-2026. (Contributed by BTernaryTau, 6-Dec-2025.) (Proof modification is discouraged.) (New usage is discouraged.)
𝑅 = {⟨𝑥, 𝑦⟩ ∣ (𝐹𝑥) ∈ (𝐹𝑦)}       (𝐹:V–1-1-onto→On → 𝑅 We V)
 
5-Dec-2025antnestALT 36008 Alternative proof of antnest 36003 from the valid schema ((((⊤ → 𝜑) → 𝜑) → 𝜓) → 𝜓) using laws of nested antecedents. Our proof uses only the laws antnestlaw1 36005 and antnestlaw3 36007. (Contributed by Adrian Ducourtial, 5-Dec-2025.) (Proof modification is discouraged.) (New usage is discouraged.)
((((((⊤ → 𝜑) → 𝜓) → 𝜓) → 𝜑) → 𝜓) → 𝜓)
 
5-Dec-2025antnestlaw3 36007 A law of nested antecedents. Compare with looinv 205. (Contributed by Adrian Ducourtial, 5-Dec-2025.)
((((𝜑𝜓) → 𝜒) → 𝜒) ↔ (((𝜑𝜒) → 𝜓) → 𝜓))
 
5-Dec-2025antnestlaw2 36006 A law of nested antecedents. (Contributed by Adrian Ducourtial, 5-Dec-2025.)
((((𝜑𝜓) → 𝜓) → 𝜒) ↔ (((𝜑𝜒) → 𝜓) → 𝜒))
 
5-Dec-2025antnestlaw1 36005 A law of nested antecedents. The converse direction is a subschema of pm2.27 42. (Contributed by Adrian Ducourtial, 5-Dec-2025.)
((((𝜑𝜓) → 𝜓) → 𝜓) ↔ (𝜑𝜓))
 
5-Dec-2025antnestlaw3lem 36004 Lemma for antnestlaw3 36007. (Contributed by Adrian Ducourtial, 5-Dec-2025.)
(¬ (((𝜑𝜓) → 𝜒) → 𝜒) → ¬ (((𝜑𝜒) → 𝜓) → 𝜓))
 
5-Dec-2025onvf1od 35414 If 𝐺 is a global choice function, then 𝐹 is a bijection from the ordinals to the universe. This is the ZFC version of (1 2) in https://tinyurl.com/hamkins-gblac. (Contributed by BTernaryTau, 5-Dec-2025.)
(𝜑 → ∀𝑧(𝑧 ≠ ∅ → (𝐺𝑧) ∈ 𝑧))    &   𝑀 = {𝑥 ∈ On ∣ ∃𝑦 ∈ (𝑅1𝑥) ¬ 𝑦 ∈ ran 𝑤}    &   𝑁 = (𝐺‘((𝑅1𝑀) ∖ ran 𝑤))    &   𝐹 = recs((𝑤 ∈ V ↦ 𝑁))       (𝜑𝐹:On–1-1-onto→V)
 
5-Dec-2025z12zsodd 28552 A dyadic fraction is either an integer or an odd number divided by a positive power of two. (Contributed by Scott Fenton, 5-Dec-2025.)
(𝐴 ∈ ℤs[1/2] → (𝐴 ∈ ℤs ∨ ∃𝑥 ∈ ℤs𝑦 ∈ ℕs 𝐴 = (((2s ·s 𝑥) +s 1s ) /su (2ss𝑦))))
 
5-Dec-2025ltsrecd 27872 A comparison law for surreals considered as cuts of sets of surreals. (Contributed by Scott Fenton, 5-Dec-2025.)
(𝜑𝐴 <<s 𝐵)    &   (𝜑𝐶 <<s 𝐷)    &   (𝜑𝑋 = (𝐴 |s 𝐵))    &   (𝜑𝑌 = (𝐶 |s 𝐷))       (𝜑 → (𝑋 <s 𝑌 ↔ (∃𝑐𝐶 𝑋 ≤s 𝑐 ∨ ∃𝑏𝐵 𝑏 ≤s 𝑌)))
 
5-Dec-2025lesrecd 27870 A comparison law for surreals considered as cuts of sets of surreals. Definition from [Conway] p. 4. Theorem 4 of [Alling] p. 186. Theorem 2.5 of [Gonshor] p. 9. (Contributed by Scott Fenton, 5-Dec-2025.)
(𝜑𝐴 <<s 𝐵)    &   (𝜑𝐶 <<s 𝐷)    &   (𝜑𝑋 = (𝐴 |s 𝐵))    &   (𝜑𝑌 = (𝐶 |s 𝐷))       (𝜑 → (𝑋 ≤s 𝑌 ↔ (∀𝑑𝐷 𝑋 <s 𝑑 ∧ ∀𝑎𝐴 𝑎 <s 𝑌)))
 
4-Dec-2025onvf1odlem4 35413 Lemma for onvf1od 35414. If the range of 𝐹 does not exist, then it must equal the universe. (Contributed by BTernaryTau, 4-Dec-2025.)
(𝜑 → ∀𝑧(𝑧 ≠ ∅ → (𝐺𝑧) ∈ 𝑧))    &   𝑀 = {𝑥 ∈ On ∣ ∃𝑦 ∈ (𝑅1𝑥) ¬ 𝑦 ∈ ran 𝑤}    &   𝑁 = (𝐺‘((𝑅1𝑀) ∖ ran 𝑤))    &   𝐹 = recs((𝑤 ∈ V ↦ 𝑁))    &   𝐵 = {𝑢 ∈ On ∣ ∃𝑣 ∈ (𝑅1𝑢) ¬ 𝑣 ∈ (𝐹𝑡)}    &   𝐶 = (𝐺‘((𝑅1𝐵) ∖ (𝐹𝑡)))       (𝜑 → (¬ ran 𝐹 ∈ V → ran 𝐹 = V))
 
2-Dec-2025onvf1odlem3 35412 Lemma for onvf1od 35414. The value of 𝐹 at an ordinal 𝐴. (Contributed by BTernaryTau, 2-Dec-2025.)
𝑀 = {𝑥 ∈ On ∣ ∃𝑦 ∈ (𝑅1𝑥) ¬ 𝑦 ∈ ran 𝑤}    &   𝑁 = (𝐺‘((𝑅1𝑀) ∖ ran 𝑤))    &   𝐹 = recs((𝑤 ∈ V ↦ 𝑁))    &   𝐵 = {𝑢 ∈ On ∣ ∃𝑣 ∈ (𝑅1𝑢) ¬ 𝑣 ∈ (𝐹𝐴)}    &   𝐶 = (𝐺‘((𝑅1𝐵) ∖ (𝐹𝐴)))       (𝐴 ∈ On → (𝐹𝐴) = 𝐶)
 
2-Dec-2025onvf1odlem2 35411 Lemma for onvf1od 35414. (Contributed by BTernaryTau, 2-Dec-2025.)
(𝜑 → ∀𝑧(𝑧 ≠ ∅ → (𝐺𝑧) ∈ 𝑧))    &   𝑀 = {𝑥 ∈ On ∣ ∃𝑦 ∈ (𝑅1𝑥) ¬ 𝑦𝐴}    &   𝑁 = (𝐺‘((𝑅1𝑀) ∖ 𝐴))       (𝜑 → (𝐴𝑉𝑁 ∈ ((𝑅1𝑀) ∖ 𝐴)))
 
2-Dec-2025onvf1odlem1 35410 Lemma for onvf1od 35414. (Contributed by BTernaryTau, 2-Dec-2025.)
(𝐴𝑉 → ∃𝑥 ∈ On ∃𝑦 ∈ (𝑅1𝑥) ¬ 𝑦𝐴)
 
1-Dec-2025sn-msqgt0d 43072 A nonzero square is positive. (Contributed by SN, 1-Dec-2025.)
(𝜑𝐴 ∈ ℝ)    &   (𝜑𝐴 ≠ 0)       (𝜑 → 0 < (𝐴 · 𝐴))
 
1-Dec-2025sn-mullt0d 43071 The product of two negative numbers is positive. (Contributed by SN, 1-Dec-2025.)
(𝜑𝐴 ∈ ℝ)    &   (𝜑𝐵 ∈ ℝ)    &   (𝜑𝐴 < 0)    &   (𝜑𝐵 < 0)       (𝜑 → 0 < (𝐴 · 𝐵))
 
1-Dec-2025elabgt 3631 Membership in a class abstraction, using implicit substitution. (Closed theorem version of elabg 3635.) (Contributed by NM, 7-Nov-2005.) (Proof shortened by Andrew Salmon, 8-Jun-2011.) Reduce axiom usage. (Revised by GG, 12-Oct-2024.) (Proof shortened by Wolf Lammen, 11-May-2025.) (Proof shortened by SN, 1-Dec-2025.)
((𝐴𝐵 ∧ ∀𝑥(𝑥 = 𝐴 → (𝜑𝜓))) → (𝐴 ∈ {𝑥𝜑} ↔ 𝜓))
 
30-Nov-2025eluz3nn 12887 An integer greater than or equal to 3 is a positive integer. (Contributed by Alexander van der Vekens, 17-Sep-2018.) (Proof shortened by AV, 30-Nov-2025.)
(𝑁 ∈ (ℤ‘3) → 𝑁 ∈ ℕ)
 
28-Nov-2025eqcuts3 27874 A variant of the simplicity theorem - if 𝐵 lies between the cut sets of 𝐴 but none of its options do, then 𝐴 = 𝐵. Theorem 11 of [Conway] p. 23. (Contributed by Scott Fenton, 28-Nov-2025.)
(𝜑𝐿 <<s 𝑅)    &   (𝜑𝑀 <<s 𝑆)    &   (𝜑𝐴 = (𝐿 |s 𝑅))    &   (𝜑𝐵 = (𝑀 |s 𝑆))    &   (𝜑𝐿 <<s {𝐵})    &   (𝜑 → {𝐵} <<s 𝑅)    &   (𝜑 → ∀𝑥𝑂 ∈ (𝑀𝑆) ¬ (𝐿 <<s {𝑥𝑂} ∧ {𝑥𝑂} <<s 𝑅))       (𝜑𝐴 = 𝐵)
 
27-Nov-2025difmodm1lt 47923 The difference between an integer modulo a positive integer and the integer decreased by 1 modulo the same modulus is less than the modulus decreased by 1 (if the modulus is greater than 2). This theorem would not be valid for an odd 𝐴 and 𝑁 = 2, since ((𝐴 mod 𝑁) − ((𝐴 − 1) mod 𝑁)) would be (1 − 0) = 1 which is not less than (𝑁 − 1) = 1. (Contributed by AV, 6-Jun-2012.) (Proof shortened by SN, 27-Nov-2025.)
((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 2 < 𝑁) → ((𝐴 mod 𝑁) − ((𝐴 − 1) mod 𝑁)) < (𝑁 − 1))
 
26-Nov-2025cmdlan 50257 To each colimit of a diagram there is a corresponding left Kan extention of the diagram along a functor to a terminal category. The morphism parts coincide, while the object parts are one-to-one correspondent (diag1f1o 50119). (Contributed by Zhi Wang, 26-Nov-2025.)
(𝜑1 ∈ TermCat)    &   (𝜑𝐺 ∈ (𝐷 Func 1 ))    &   𝐿 = (𝐶Δfunc 1 )    &   (𝜑𝑌 = ((1st𝐿)‘𝑋))       (𝜑 → (𝑋((𝐶 Colimit 𝐷)‘𝐹)𝑀𝑌(𝐺(⟨𝐷, 1 ⟩ Lan 𝐶)𝐹)𝑀))
 
26-Nov-2025lmdran 50256 To each limit of a diagram there is a corresponding right Kan extention of the diagram along a functor to a terminal category. The morphism parts coincide, while the object parts are one-to-one correspondent (diag1f1o 50119). (Contributed by Zhi Wang, 26-Nov-2025.)
(𝜑1 ∈ TermCat)    &   (𝜑𝐺 ∈ (𝐷 Func 1 ))    &   𝐿 = (𝐶Δfunc 1 )    &   (𝜑𝑌 = ((1st𝐿)‘𝑋))       (𝜑 → (𝑋((𝐶 Limit 𝐷)‘𝐹)𝑀𝑌(𝐺(⟨𝐷, 1 ⟩ Ran 𝐶)𝐹)𝑀))
 
26-Nov-2025ranval3 50216 The set of right Kan extensions is the set of universal pairs. (Contributed by Zhi Wang, 26-Nov-2025.)
𝑂 = (oppCat‘(𝐷 FuncCat 𝐸))    &   𝑃 = (oppCat‘(𝐶 FuncCat 𝐸))    &   𝐾 = (⟨𝐷, 𝐸⟩ −∘F 𝐹)       (𝐹 ∈ (𝐶 Func 𝐷) → (𝐹(⟨𝐶, 𝐷⟩ Ran 𝐸)𝑋) = (( oppFunc ‘𝐾)(𝑂 UP 𝑃)𝑋))
 
26-Nov-2025ffthoppf 49750 The opposite functor of a fully faithful functor is also full and faithful. (Contributed by Zhi Wang, 26-Nov-2025.)
𝑂 = (oppCat‘𝐶)    &   𝑃 = (oppCat‘𝐷)    &   (𝜑𝐹 ∈ ((𝐶 Full 𝐷) ∩ (𝐶 Faith 𝐷)))       (𝜑 → ( oppFunc ‘𝐹) ∈ ((𝑂 Full 𝑃) ∩ (𝑂 Faith 𝑃)))
 
26-Nov-2025fthoppf 49749 The opposite functor of a faithful functor is also faithful. Proposition 3.43(c) in [Adamek] p. 39. (Contributed by Zhi Wang, 26-Nov-2025.)
𝑂 = (oppCat‘𝐶)    &   𝑃 = (oppCat‘𝐷)    &   (𝜑𝐹 ∈ (𝐶 Faith 𝐷))       (𝜑 → ( oppFunc ‘𝐹) ∈ (𝑂 Faith 𝑃))
 
26-Nov-2025fulloppf 49748 The opposite functor of a full functor is also full. Proposition 3.43(d) in [Adamek] p. 39. (Contributed by Zhi Wang, 26-Nov-2025.)
𝑂 = (oppCat‘𝐶)    &   𝑃 = (oppCat‘𝐷)    &   (𝜑𝐹 ∈ (𝐶 Full 𝐷))       (𝜑 → ( oppFunc ‘𝐹) ∈ (𝑂 Full 𝑃))
 
26-Nov-2025cofuoppf 49735 Composition of opposite functors. (Contributed by Zhi Wang, 26-Nov-2025.)
(𝜑 → (𝐺func 𝐹) = 𝐾)    &   (𝜑𝐹 ∈ (𝐶 Func 𝐷))    &   (𝜑𝐺 ∈ (𝐷 Func 𝐸))       (𝜑 → (( oppFunc ‘𝐺) ∘func ( oppFunc ‘𝐹)) = ( oppFunc ‘𝐾))
 
26-Nov-2025mullt0b2d 43070 When the second term is negative, the first term is positive iff the product is negative. (Contributed by SN, 26-Nov-2025.)
(𝜑𝐴 ∈ ℝ)    &   (𝜑𝐵 ∈ ℝ)    &   (𝜑𝐵 < 0)       (𝜑 → (0 < 𝐴 ↔ (𝐴 · 𝐵) < 0))
 
26-Nov-2025mullt0b1d 43069 When the first term is negative, the second term is positive iff the product is negative. (Contributed by SN, 26-Nov-2025.)
(𝜑𝐴 ∈ ℝ)    &   (𝜑𝐵 ∈ ℝ)    &   (𝜑𝐴 < 0)       (𝜑 → (0 < 𝐵 ↔ (𝐴 · 𝐵) < 0))
 
26-Nov-2025mulltgt0d 43068 Negative times positive is negative. (Contributed by SN, 26-Nov-2025.)
(𝜑𝐴 ∈ ℝ)    &   (𝜑𝐵 ∈ ℝ)    &   (𝜑𝐴 < 0)    &   (𝜑 → 0 < 𝐵)       (𝜑 → (𝐴 · 𝐵) < 0)
 
26-Nov-2025sn-reclt0d 43067 The reciprocal of a negative real is negative. (Contributed by SN, 26-Nov-2025.)
(𝜑𝐴 ∈ ℝ)    &   (𝜑𝐴 < 0)       (𝜑 → (1 / 𝐴) < 0)
 
26-Nov-2025sn-recgt0d 43063 The reciprocal of a positive real is positive. (Contributed by SN, 26-Nov-2025.)
(𝜑𝐴 ∈ ℝ)    &   (𝜑 → 0 < 𝐴)       (𝜑 → 0 < (1 / 𝐴))
 
25-Nov-2025prcofdiag 49979 A diagonal functor post-composed by a pre-composition functor is another diagonal functor. (Contributed by Zhi Wang, 25-Nov-2025.)
𝐿 = (𝐶Δfunc𝐷)    &   𝑀 = (𝐶Δfunc𝐸)    &   (𝜑𝐹 ∈ (𝐸 Func 𝐷))    &   (𝜑𝐶 ∈ Cat)    &   (𝜑 → (⟨𝐷, 𝐶⟩ −∘F 𝐹) = 𝐺)       (𝜑 → (𝐺func 𝐿) = 𝑀)
 
25-Nov-2025prcofdiag1 49978 A constant functor pre-composed by a functor is another constant functor. (Contributed by Zhi Wang, 25-Nov-2025.)
𝐿 = (𝐶Δfunc𝐷)    &   𝑀 = (𝐶Δfunc𝐸)    &   (𝜑𝐹 ∈ (𝐸 Func 𝐷))    &   (𝜑𝐶 ∈ Cat)    &   𝐵 = (Base‘𝐶)    &   (𝜑𝑋𝐵)       (𝜑 → (((1st𝐿)‘𝑋) ∘func 𝐹) = ((1st𝑀)‘𝑋))
 
25-Nov-2025uptr2a 49807 Universal property and fully faithful functor surjective on objects. (Contributed by Zhi Wang, 25-Nov-2025.)
𝐴 = (Base‘𝐶)    &   𝐵 = (Base‘𝐷)    &   (𝜑𝑌 = ((1st𝐾)‘𝑋))    &   (𝜑 → (𝐺func 𝐾) = 𝐹)    &   (𝜑𝑋𝐴)    &   (𝜑𝐺 ∈ (𝐷 Func 𝐸))    &   (𝜑𝐾 ∈ ((𝐶 Full 𝐷) ∩ (𝐶 Faith 𝐷)))    &   (𝜑 → (1st𝐾):𝐴onto𝐵)       (𝜑 → (𝑋(𝐹(𝐶 UP 𝐸)𝑍)𝑀𝑌(𝐺(𝐷 UP 𝐸)𝑍)𝑀))
 
25-Nov-2025uptr2 49806 Universal property and fully faithful functor surjective on objects. (Contributed by Zhi Wang, 25-Nov-2025.)
𝐴 = (Base‘𝐶)    &   𝐵 = (Base‘𝐷)    &   (𝜑𝑌 = (𝑅𝑋))    &   (𝜑𝑅:𝐴onto𝐵)    &   (𝜑𝑅((𝐶 Full 𝐷) ∩ (𝐶 Faith 𝐷))𝑆)    &   (𝜑 → (⟨𝐾, 𝐿⟩ ∘func𝑅, 𝑆⟩) = ⟨𝐹, 𝐺⟩)    &   (𝜑𝑋𝐴)    &   (𝜑𝐾(𝐷 Func 𝐸)𝐿)       (𝜑 → (𝑋(⟨𝐹, 𝐺⟩(𝐶 UP 𝐸)𝑍)𝑀𝑌(⟨𝐾, 𝐿⟩(𝐷 UP 𝐸)𝑍)𝑀))
 
25-Nov-2025xpco2 49442 Composition of a Cartesian product with a function. (Contributed by Zhi Wang, 25-Nov-2025.)
(𝐹:𝐴𝐵 → ((𝐵 × 𝐶) ∘ 𝐹) = (𝐴 × 𝐶))
 
25-Nov-2025ffvbr 49441 Relation with function value. (Contributed by Zhi Wang, 25-Nov-2025.)
((𝐹:𝐴𝐵𝑋𝐴) → 𝑋𝐹(𝐹𝑋))
 
25-Nov-2025rerecid2d 43031 Multiplication of a number and its reciprocal. (Contributed by SN, 25-Nov-2025.)
(𝜑𝐴 ∈ ℝ)    &   (𝜑𝐴 ≠ 0)       (𝜑 → ((1 / 𝐴) · 𝐴) = 1)
 
25-Nov-2025rerecidd 43030 Multiplication of a number and its reciprocal. (Contributed by SN, 25-Nov-2025.)
(𝜑𝐴 ∈ ℝ)    &   (𝜑𝐴 ≠ 0)       (𝜑 → (𝐴 · (1 / 𝐴)) = 1)
 
25-Nov-2025sn-rereccld 43028 Closure law for reciprocal. (Contributed by SN, 25-Nov-2025.)
(𝜑𝐴 ∈ ℝ)    &   (𝜑𝐴 ≠ 0)       (𝜑 → (1 / 𝐴) ∈ ℝ)
 
25-Nov-2025rediveq0d 43022 A ratio is zero iff the numerator is zero. (Contributed by SN, 25-Nov-2025.)
(𝜑𝐴 ∈ ℝ)    &   (𝜑𝐵 ∈ ℝ)    &   (𝜑𝐵 ≠ 0)       (𝜑 → ((𝐴 / 𝐵) = 0 ↔ 𝐴 = 0))
 
25-Nov-2025redivcan3d 43021 A cancellation law for division. (Contributed by SN, 25-Nov-2025.)
(𝜑𝐴 ∈ ℝ)    &   (𝜑𝐵 ∈ ℝ)    &   (𝜑𝐵 ≠ 0)       (𝜑 → ((𝐵 · 𝐴) / 𝐵) = 𝐴)
 
25-Nov-2025redivcan2d 43020 A cancellation law for division. (Contributed by SN, 25-Nov-2025.)
(𝜑𝐴 ∈ ℝ)    &   (𝜑𝐵 ∈ ℝ)    &   (𝜑𝐵 ≠ 0)       (𝜑 → (𝐵 · (𝐴 / 𝐵)) = 𝐴)
 
25-Nov-2025redivmuld 43018 Relationship between division and multiplication. (Contributed by SN, 25-Nov-2025.)
(𝜑𝐴 ∈ ℝ)    &   (𝜑𝐵 ∈ ℝ)    &   (𝜑𝐶 ∈ ℝ)    &   (𝜑𝐶 ≠ 0)       (𝜑 → ((𝐴 / 𝐶) = 𝐵 ↔ (𝐶 · 𝐵) = 𝐴))
 
25-Nov-2025sn-redivcld 43017 Closure law for real division. (Contributed by SN, 25-Nov-2025.)
(𝜑𝐴 ∈ ℝ)    &   (𝜑𝐵 ∈ ℝ)    &   (𝜑𝐵 ≠ 0)       (𝜑 → (𝐴 / 𝐵) ∈ ℝ)
 
25-Nov-2025rediveud 43016 Existential uniqueness of real quotients. (Contributed by SN, 25-Nov-2025.)
(𝜑𝐴 ∈ ℝ)    &   (𝜑𝐵 ∈ ℝ)    &   (𝜑𝐵 ≠ 0)       (𝜑 → ∃!𝑥 ∈ ℝ (𝐵 · 𝑥) = 𝐴)
 
25-Nov-2025redivvald 43015 Value of real division, which is the (unique) real 𝑥 such that (𝐵 · 𝑥) = 𝐴. (Contributed by SN, 25-Nov-2025.)
(𝜑𝐴 ∈ ℝ)    &   (𝜑𝐵 ∈ ℝ)    &   (𝜑𝐵 ≠ 0)       (𝜑 → (𝐴 / 𝐵) = (𝑥 ∈ ℝ (𝐵 · 𝑥) = 𝐴))
 
25-Nov-2025df-rediv 43014 Define division between real numbers. This operator saves ax-mulcom 11134 over df-div 11842 in certain situations. (Contributed by SN, 25-Nov-2025.)
/ = (𝑥 ∈ ℝ, 𝑦 ∈ (ℝ ∖ {0}) ↦ (𝑧 ∈ ℝ (𝑦 · 𝑧) = 𝑥))
 
25-Nov-2025uniqsw 8751 The union of a quotient set. More restrictive antecedent; kept for backward compatibility; for new work, prefer uniqs 8750. (Contributed by NM, 9-Dec-2008.) (Proof shortened by AV, 25-Nov-2025.)
(𝑅𝑉 (𝐴 / 𝑅) = (𝑅𝐴))
 
25-Nov-2025ecelqsw 8745 Membership of an equivalence class in a quotient set. More restrictive antecedent; kept for backward compatibility; for new work, prefer ecelqs 8744. (Contributed by Jeff Madsen, 10-Jun-2010.) (Revised by Mario Carneiro, 9-Jul-2014.) (Proof shortened by AV, 25-Nov-2025.)
((𝑅𝑉𝐵𝐴) → [𝐵]𝑅 ∈ (𝐴 / 𝑅))
 
24-Nov-2025f1omo 49478 There is at most one element in the function value of a constant function whose output is 1o. (An artifact of our function value definition.) Proof could be significantly shortened by fvconstdomi 49477 assuming ax-un 7714 (see f1omoALT 49480). (Contributed by Zhi Wang, 19-Sep-2024.) (Proof shortened by SN, 24-Nov-2025.)
(𝜑𝐹 = (𝐴 × {1o}))       (𝜑 → ∃*𝑦 𝑦 ∈ (𝐹𝑋))
 
24-Nov-2025mulgt0b2d 43064 Biconditional, deductive form of mulgt0 11257. The first factor is positive iff the product is. (Contributed by SN, 24-Nov-2025.)
(𝜑𝐴 ∈ ℝ)    &   (𝜑𝐵 ∈ ℝ)    &   (𝜑 → 0 < 𝐵)       (𝜑 → (0 < 𝐴 ↔ 0 < (𝐴 · 𝐵)))
 
24-Nov-2025sn-remul0ord 42981 A product is zero iff one of its factors are zero. (Contributed by SN, 24-Nov-2025.)
(𝜑𝐴 ∈ ℝ)    &   (𝜑𝐵 ∈ ℝ)       (𝜑 → ((𝐴 · 𝐵) = 0 ↔ (𝐴 = 0 ∨ 𝐵 = 0)))
 
23-Nov-2025lgricngricex 48715 There are two different locally isomorphic graphs which are not isomorphic. (Contributed by AV, 23-Nov-2025.)
𝑔(𝑔𝑙𝑔𝑟 ∧ ¬ 𝑔𝑔𝑟 )
 
23-Nov-2025dmqsblocks 39430 If the pet 39428 span (𝑅 ⋉ ( E ↾ 𝐴)) partitions 𝐴, then every block 𝑢𝐴 is of the form [𝑣] for some 𝑣 that not only lies in the domain but also has at least one internal element 𝑐 and at least one 𝑅-target 𝑏 (cf. also the comments of qseq 39196). It makes explicit that pet 39428 gives active representatives for each block, without ever forcing 𝑣 = 𝑢. (Contributed by Peter Mazsa, 23-Nov-2025.)
((dom (𝑅 ⋉ ( E ↾ 𝐴)) / (𝑅 ⋉ ( E ↾ 𝐴))) = 𝐴 → ∀𝑢𝐴𝑣 ∈ dom (𝑅 ⋉ ( E ↾ 𝐴))∃𝑏𝑐(𝑢 = [𝑣](𝑅 ⋉ ( E ↾ 𝐴)) ∧ 𝑐𝑣𝑣𝑅𝑏))
 
23-Nov-2025eceldmqsxrncnvepres2 38900 An (𝑅 ⋉ ( E ↾ 𝐴))-coset in its domain quotient. In the pet 39428 span (𝑅 ⋉ ( E ↾ 𝐴)), a block [ B ] lies in the domain quotient exactly when its representative 𝐵 belongs to 𝐴 and actually fires at least one arrow (has some 𝑥𝐵 and some 𝑦 with 𝐵𝑅𝑦). (Contributed by Peter Mazsa, 23-Nov-2025.)
((𝐴𝑉𝐵𝑊𝑅𝑋) → ([𝐵](𝑅 ⋉ ( E ↾ 𝐴)) ∈ (dom (𝑅 ⋉ ( E ↾ 𝐴)) / (𝑅 ⋉ ( E ↾ 𝐴))) ↔ (𝐵𝐴 ∧ ∃𝑥 𝑥𝐵 ∧ ∃𝑦 𝐵𝑅𝑦)))
 
23-Nov-2025eceldmqsxrncnvepres 38899 An (𝑅 ⋉ ( E ↾ 𝐴))-coset in its domain quotient. (Contributed by Peter Mazsa, 23-Nov-2025.)
((𝐴𝑉𝐵𝑊𝑅𝑋) → ([𝐵](𝑅 ⋉ ( E ↾ 𝐴)) ∈ (dom (𝑅 ⋉ ( E ↾ 𝐴)) / (𝑅 ⋉ ( E ↾ 𝐴))) ↔ (𝐵𝐴𝐵 ≠ ∅ ∧ [𝐵]𝑅 ≠ ∅)))
 
23-Nov-2025eldmxrncnvepres2 38898 Element of the domain of the range product with restricted converse epsilon relation. This identifies the domain of the pet 39428 span (𝑅 ⋉ ( E ↾ 𝐴)): a 𝐵 belongs to the domain of the span exactly when 𝐵 is in 𝐴 and has at least one 𝑥𝐵 and 𝑦 with 𝐵𝑅𝑦. (Contributed by Peter Mazsa, 23-Nov-2025.)
(𝐵𝑉 → (𝐵 ∈ dom (𝑅 ⋉ ( E ↾ 𝐴)) ↔ (𝐵𝐴 ∧ ∃𝑥 𝑥𝐵 ∧ ∃𝑦 𝐵𝑅𝑦)))
 
23-Nov-2025eldmxrncnvepres 38897 Element of the domain of the range product with restricted converse epsilon relation. (Contributed by Peter Mazsa, 23-Nov-2025.)
(𝐵𝑉 → (𝐵 ∈ dom (𝑅 ⋉ ( E ↾ 𝐴)) ↔ (𝐵𝐴𝐵 ≠ ∅ ∧ [𝐵]𝑅 ≠ ∅)))
 
23-Nov-2025dmxrncnvepres 38895 Domain of the range product with restricted converse epsilon relation. (Contributed by Peter Mazsa, 23-Nov-2025.)
dom (𝑅 ⋉ ( E ↾ 𝐴)) = (dom (𝑅𝐴) ∖ {∅})
 
23-Nov-2025dmxrncnvep 38852 Domain of the range product with converse epsilon relation. (Contributed by Peter Mazsa, 23-Nov-2025.)
dom (𝑅 E ) = (dom 𝑅 ∖ {∅})
 
23-Nov-2025dmcnvep 38851 Domain of converse epsilon relation. (Contributed by Peter Mazsa, 30-Jan-2018.) (Revised by Peter Mazsa, 23-Nov-2025.)
dom E = (V ∖ {∅})
 
23-Nov-2025eldmres3 38746 Elementhood in the domain of a restriction. (Contributed by Peter Mazsa, 23-Nov-2025.)
(𝐵𝑉 → (𝐵 ∈ dom (𝑅𝐴) ↔ (𝐵𝐴 ∧ [𝐵]𝑅 ≠ ∅)))
 
22-Nov-2025gpg5ngric 48714 The two generalized Petersen graphs G(5,K) of order 10, which are the Petersen graph G(5,2) and the 5-prism G(5,1), are not isomorphic. (Contributed by AV, 22-Nov-2025.)
¬ (5 gPetersenGr 1) ≃𝑔𝑟 (5 gPetersenGr 2)
 
22-Nov-2025pg4cyclnex 48713 In the Petersen graph G(5,2), there is no cycle of length 4. (Contributed by AV, 22-Nov-2025.)
¬ ∃𝑝𝑓(𝑓(Cycles‘(5 gPetersenGr 2))𝑝 ∧ (♯‘𝑓) = 4)
 
22-Nov-2025gpg5grlic 48680 The two generalized Petersen graphs G(N,K) of order 10 (𝑁 = 5), which are the Petersen graph G(5,2) and the 5-prism G(5,1), are locally isomorphic. (Contributed by AV, 29-Sep-2025.) (Proof shortened by AV, 22-Nov-2025.)
(5 gPetersenGr 1) ≃𝑙𝑔𝑟 (5 gPetersenGr 2)
 
22-Nov-2025gpg3nbgrvtx1 48664 In a generalized Petersen graph 𝐺, every inside vertex has exactly three (different) neighbors. (Contributed by AV, 3-Sep-2025.) (Proof shortened by AV, 22-Nov-2025.)
𝐽 = (1..^(⌈‘(𝑁 / 2)))    &   𝐺 = (𝑁 gPetersenGr 𝐾)    &   𝑉 = (Vtx‘𝐺)    &   𝑈 = (𝐺 NeighbVtx 𝑋)       (((𝑁 ∈ (ℤ‘3) ∧ 𝐾𝐽) ∧ (𝑋𝑉 ∧ (1st𝑋) = 1)) → (♯‘𝑈) = 3)
 
22-Nov-2025modm1nem2 47933 A nonnegative integer less than a modulus greater than 4 minus one/minus two are not equal modulo the modulus. (Contributed by AV, 22-Nov-2025.)
𝐼 = (0..^𝑁)       ((𝑁 ∈ (ℤ‘5) ∧ 𝑌𝐼) → ((𝑌 − 1) mod 𝑁) ≠ ((𝑌 − 2) mod 𝑁))
 
22-Nov-2025modm1nep2 47932 A nonnegative integer less than a modulus greater than 4 plus one/minus two are not equal modulo the modulus. (Contributed by AV, 22-Nov-2025.)
𝐼 = (0..^𝑁)       ((𝑁 ∈ (ℤ‘5) ∧ 𝑌𝐼) → ((𝑌 − 1) mod 𝑁) ≠ ((𝑌 + 2) mod 𝑁))
 
22-Nov-2025modp2nep1 47931 A nonnegative integer less than a modulus greater than 4 plus one/plus two are not equal modulo the modulus. (Contributed by AV, 22-Nov-2025.)
𝐼 = (0..^𝑁)       ((𝑁 ∈ (ℤ‘5) ∧ 𝑌𝐼) → ((𝑌 + 2) mod 𝑁) ≠ ((𝑌 + 1) mod 𝑁))
 
22-Nov-2025modm2nep1 47930 A nonnegative integer less than a modulus greater than 4 plus one/minus two are not equal modulo the modulus. (Contributed by AV, 22-Nov-2025.)
𝐼 = (0..^𝑁)       ((𝑁 ∈ (ℤ‘5) ∧ 𝑌𝐼) → ((𝑌 − 2) mod 𝑁) ≠ ((𝑌 + 1) mod 𝑁))
 
22-Nov-2025dmxrn 38850 Domain of the range product. (Contributed by Peter Mazsa, 19-Apr-2020.) (Revised by Peter Mazsa, 22-Nov-2025.)
dom (𝑅𝑆) = (dom 𝑅 ∩ dom 𝑆)
 
22-Nov-2025brxrncnvep 38849 The range product with converse epsilon relation. (Contributed by Peter Mazsa, 22-Jun-2020.) (Revised by Peter Mazsa, 22-Nov-2025.)
((𝐴𝑉𝐵𝑊𝐶𝑋) → (𝐴(𝑅 E )⟨𝐵, 𝐶⟩ ↔ (𝐶𝐴𝐴𝑅𝐵)))
 
22-Nov-2025bdayle 27986 A condition for bounding a birthday above. (Contributed by Scott Fenton, 22-Nov-2025.)
((𝑋 No ∧ Ord 𝑂) → (( bday 𝑋) ⊆ 𝑂 ↔ ∀𝑦 ∈ ( O ‘( bday 𝑋))( bday 𝑦) ∈ 𝑂))
 
22-Nov-2025bdayiun 27985 The birthday of a surreal is the least upper bound of the successors of the birthdays of its options. This is the definition of the birthday of a combinatorial game in the Lean Combinatorial Game Theory library at https://github.com/vihdzp/combinatorial-games. (Contributed by Scott Fenton, 22-Nov-2025.)
(𝐴 No → ( bday 𝐴) = 𝑥 ∈ ( O ‘( bday 𝐴))suc ( bday 𝑥))
 
22-Nov-2025nn0absidi 15441 A nonnegative integer is its own absolute value (inference form). (Contributed by AV, 22-Nov-2025.)
𝑁 ∈ ℕ0       (abs‘𝑁) = 𝑁
 
22-Nov-2025nn0absid 15440 A nonnegative integer is its own absolute value. (Contributed by AV, 22-Nov-2025.)
(𝑁 ∈ ℕ0 → (abs‘𝑁) = 𝑁)
 
22-Nov-2025eluz5nn 12889 An integer greater than or equal to 5 is a positive integer. (Contributed by AV, 22-Nov-2025.)
(𝑁 ∈ (ℤ‘5) → 𝑁 ∈ ℕ)
 
22-Nov-2025eceldmqs 8764 𝑅-coset in its domain quotient. This is the bridge between 𝐴 in the domain and its block [𝐴]𝑅 in its domain quotient. (Contributed by Peter Mazsa, 17-Apr-2019.) (Revised by Peter Mazsa, 22-Nov-2025.)
(𝑅𝑉 → ([𝐴]𝑅 ∈ (dom 𝑅 / 𝑅) ↔ 𝐴 ∈ dom 𝑅))
 
22-Nov-2025ecelqsdmb 8763 𝑅-coset of 𝐵 in a quotient set, biconditional version. (Contributed by Peter Mazsa, 17-Apr-2019.) (Revised by Peter Mazsa, 22-Nov-2025.)
(((𝑅𝐴) ∈ 𝑉 ∧ dom 𝑅 = 𝐴) → ([𝐵]𝑅 ∈ (𝐴 / 𝑅) ↔ 𝐵𝐴))
 
22-Nov-2025ecelqs 8744 Membership of an equivalence class in a quotient set. (Contributed by Jeff Madsen, 10-Jun-2010.) (Revised by Mario Carneiro, 9-Jul-2014.) (Revised by Peter Mazsa, 22-Nov-2025.)
(((𝑅𝐴) ∈ 𝑉𝐵𝐴) → [𝐵]𝑅 ∈ (𝐴 / 𝑅))
 
21-Nov-2025ranpropd 50201 If the categories have the same set of objects, morphisms, and compositions, then they have the same right Kan extensions. (Contributed by Zhi Wang, 21-Nov-2025.)
(𝜑 → (Homf𝐴) = (Homf𝐵))    &   (𝜑 → (compf𝐴) = (compf𝐵))    &   (𝜑 → (Homf𝐶) = (Homf𝐷))    &   (𝜑 → (compf𝐶) = (compf𝐷))    &   (𝜑 → (Homf𝐸) = (Homf𝐹))    &   (𝜑 → (compf𝐸) = (compf𝐹))    &   (𝜑𝐴𝑉)    &   (𝜑𝐵𝑉)    &   (𝜑𝐶𝑉)    &   (𝜑𝐷𝑉)    &   (𝜑𝐸𝑉)    &   (𝜑𝐹𝑉)       (𝜑 → (⟨𝐴, 𝐶⟩ Ran 𝐸) = (⟨𝐵, 𝐷⟩ Ran 𝐹))
 
21-Nov-2025lanpropd 50200 If the categories have the same set of objects, morphisms, and compositions, then they have the same left Kan extensions. (Contributed by Zhi Wang, 21-Nov-2025.)
(𝜑 → (Homf𝐴) = (Homf𝐵))    &   (𝜑 → (compf𝐴) = (compf𝐵))    &   (𝜑 → (Homf𝐶) = (Homf𝐷))    &   (𝜑 → (compf𝐶) = (compf𝐷))    &   (𝜑 → (Homf𝐸) = (Homf𝐹))    &   (𝜑 → (compf𝐸) = (compf𝐹))    &   (𝜑𝐴𝑉)    &   (𝜑𝐵𝑉)    &   (𝜑𝐶𝑉)    &   (𝜑𝐷𝑉)    &   (𝜑𝐸𝑉)    &   (𝜑𝐹𝑉)       (𝜑 → (⟨𝐴, 𝐶⟩ Lan 𝐸) = (⟨𝐵, 𝐷⟩ Lan 𝐹))
 
21-Nov-2025prcofpropd 49964 If the categories have the same set of objects, morphisms, and compositions, then they have the same pre-composition functors. (Contributed by Zhi Wang, 21-Nov-2025.)
(𝜑 → (Homf𝐴) = (Homf𝐵))    &   (𝜑 → (compf𝐴) = (compf𝐵))    &   (𝜑 → (Homf𝐶) = (Homf𝐷))    &   (𝜑 → (compf𝐶) = (compf𝐷))    &   (𝜑𝐴𝑉)    &   (𝜑𝐵𝑉)    &   (𝜑𝐶𝑉)    &   (𝜑𝐷𝑉)    &   (𝜑𝐹𝑊)       (𝜑 → (⟨𝐴, 𝐶⟩ −∘F 𝐹) = (⟨𝐵, 𝐷⟩ −∘F 𝐹))
 
21-Nov-2025pgnbgreunbgrlem5 48709 Lemma 5 for pgnbgreunbgr 48711. Impossible cases. (Contributed by AV, 21-Nov-2025.)
𝐺 = (5 gPetersenGr 2)    &   𝑉 = (Vtx‘𝐺)    &   𝐸 = (Edg‘𝐺)    &   𝑁 = (𝐺 NeighbVtx 𝑋)       ((𝐿 = ⟨0, (((2nd𝑋) + 1) mod 5)⟩ ∨ 𝐿 = ⟨1, (2nd𝑋)⟩ ∨ 𝐿 = ⟨0, (((2nd𝑋) − 1) mod 5)⟩) → ((𝐾 = ⟨0, (((2nd𝑋) + 1) mod 5)⟩ ∨ 𝐾 = ⟨1, (2nd𝑋)⟩ ∨ 𝐾 = ⟨0, (((2nd𝑋) − 1) mod 5)⟩) → ((𝑋 = ⟨0, 𝑦⟩ ∧ 𝑋𝑉) → ((𝐾𝐿 ∧ (𝑏 ∈ (0..^5) ∧ 𝑦 ∈ (0..^5))) → (({𝐾, ⟨1, 𝑏⟩} ∈ 𝐸 ∧ {⟨1, 𝑏⟩, 𝐿} ∈ 𝐸) → 𝑋 = ⟨1, 𝑏⟩)))))
 
21-Nov-2025pgnbgreunbgrlem5lem1 48706 Lemma 1 for pgnbgreunbgrlem5 48709. (Contributed by AV, 21-Nov-2025.)
𝐺 = (5 gPetersenGr 2)    &   𝑉 = (Vtx‘𝐺)    &   𝐸 = (Edg‘𝐺)    &   𝑁 = (𝐺 NeighbVtx 𝑋)       ((((𝐿 = ⟨0, ((𝑦 + 1) mod 5)⟩ ∧ 𝐾 = ⟨1, 𝑦⟩) ∧ (𝑏 ∈ (0..^5) ∧ 𝑦 ∈ (0..^5))) ∧ {𝐾, ⟨1, 𝑏⟩} ∈ 𝐸) → ¬ {⟨1, 𝑏⟩, 𝐿} ∈ 𝐸)
 
21-Nov-2025pgnioedg5 48698 An inside and an outside vertex not adjacent in a Petersen graph. (Contributed by AV, 21-Nov-2025.)
𝐺 = (5 gPetersenGr 2)    &   𝐸 = (Edg‘𝐺)       (𝑦 ∈ (0..^5) → ¬ {⟨1, ((𝑦 − 1) mod 5)⟩, ⟨0, ((𝑦 + 1) mod 5)⟩} ∈ 𝐸)
 
21-Nov-2025pgnioedg4 48697 An inside and an outside vertex not adjacent in a Petersen graph. (Contributed by AV, 21-Nov-2025.)
𝐺 = (5 gPetersenGr 2)    &   𝐸 = (Edg‘𝐺)       (𝑦 ∈ (0..^5) → ¬ {⟨1, ((𝑦 − 2) mod 5)⟩, ⟨0, ((𝑦 − 1) mod 5)⟩} ∈ 𝐸)
 
21-Nov-2025pgnioedg3 48696 An inside and an outside vertex not adjacent in a Petersen graph. (Contributed by AV, 21-Nov-2025.)
𝐺 = (5 gPetersenGr 2)    &   𝐸 = (Edg‘𝐺)       (𝑦 ∈ (0..^5) → ¬ {⟨1, ((𝑦 + 2) mod 5)⟩, ⟨0, ((𝑦 − 1) mod 5)⟩} ∈ 𝐸)
 
21-Nov-2025pgnioedg2 48695 An inside and an outside vertex not adjacent in a Petersen graph. (Contributed by AV, 21-Nov-2025.)
𝐺 = (5 gPetersenGr 2)    &   𝐸 = (Edg‘𝐺)       (𝑦 ∈ (0..^5) → ¬ {⟨1, ((𝑦 + 2) mod 5)⟩, ⟨0, ((𝑦 + 1) mod 5)⟩} ∈ 𝐸)
 
21-Nov-2025pgnioedg1 48694 An inside and an outside vertex not adjacent in a Petersen graph. (Contributed by AV, 21-Nov-2025.)
𝐺 = (5 gPetersenGr 2)    &   𝐸 = (Edg‘𝐺)       (𝑦 ∈ (0..^5) → ¬ {⟨1, ((𝑦 − 2) mod 5)⟩, ⟨0, ((𝑦 + 1) mod 5)⟩} ∈ 𝐸)
 
21-Nov-2025modlt0b 47927 An integer with an absolute value less than a positive integer is 0 modulo the positive integer iff it is 0. (Contributed by AV, 21-Nov-2025.)
((𝑁 ∈ ℕ ∧ 𝑋 ∈ ℤ ∧ (abs‘𝑋) < 𝑁) → ((𝑋 mod 𝑁) = 0 ↔ 𝑋 = 0))
 
21-Nov-2025zabs0b 15324 An integer has an absolute value less than 1 iff it is 0. (Contributed by AV, 21-Nov-2025.)
(𝑋 ∈ ℤ → ((abs‘𝑋) < 1 ↔ 𝑋 = 0))
 
20-Nov-2025termolmd 50255 Terminal objects are the object part of limits of the empty diagram. (Contributed by Zhi Wang, 20-Nov-2025.)
(TermO‘𝐶) = dom (∅(𝐶 Limit ∅)∅)
 
20-Nov-2025cmddu 50253 The duality of limits and colimits: colimits of a diagram are limits of an opposite diagram in opposite categories. (Contributed by Zhi Wang, 20-Nov-2025.)
𝑂 = (oppCat‘𝐶)    &   𝑃 = (oppCat‘𝐷)    &   𝐺 = ( oppFunc ‘𝐹)    &   (𝜑𝐶𝑉)    &   (𝜑𝐷𝑊)       (𝜑 → ((𝐶 Colimit 𝐷)‘𝐹) = ((𝑂 Limit 𝑃)‘𝐺))
 
20-Nov-2025lmddu 50252 The duality of limits and colimits: limits of a diagram are colimits of an opposite diagram in opposite categories. (Contributed by Zhi Wang, 20-Nov-2025.)
𝑂 = (oppCat‘𝐶)    &   𝑃 = (oppCat‘𝐷)    &   𝐺 = ( oppFunc ‘𝐹)    &   (𝜑𝐶𝑉)    &   (𝜑𝐷𝑊)       (𝜑 → ((𝐶 Limit 𝐷)‘𝐹) = ((𝑂 Colimit 𝑃)‘𝐺))
 
20-Nov-2025cmdpropd 50243 If the categories have the same set of objects, morphisms, and compositions, then they have the same colimits. (Contributed by Zhi Wang, 20-Nov-2025.)
(𝜑 → (Homf𝐴) = (Homf𝐵))    &   (𝜑 → (compf𝐴) = (compf𝐵))    &   (𝜑 → (Homf𝐶) = (Homf𝐷))    &   (𝜑 → (compf𝐶) = (compf𝐷))    &   (𝜑𝐴𝑉)    &   (𝜑𝐵𝑉)    &   (𝜑𝐶𝑉)    &   (𝜑𝐷𝑉)       (𝜑 → (𝐴 Colimit 𝐶) = (𝐵 Colimit 𝐷))
 
20-Nov-2025lmdpropd 50242 If the categories have the same set of objects, morphisms, and compositions, then they have the same limits. (Contributed by Zhi Wang, 20-Nov-2025.)
(𝜑 → (Homf𝐴) = (Homf𝐵))    &   (𝜑 → (compf𝐴) = (compf𝐵))    &   (𝜑 → (Homf𝐶) = (Homf𝐷))    &   (𝜑 → (compf𝐶) = (compf𝐷))    &   (𝜑𝐴𝑉)    &   (𝜑𝐵𝑉)    &   (𝜑𝐶𝑉)    &   (𝜑𝐷𝑉)       (𝜑 → (𝐴 Limit 𝐶) = (𝐵 Limit 𝐷))
 
20-Nov-2025cmdrcl 50237 Reverse closure for a colimit of a diagram. (Contributed by Zhi Wang, 20-Nov-2025.)
(𝑋 ∈ ((𝐶 Colimit 𝐷)‘𝐹) → 𝐹 ∈ (𝐷 Func 𝐶))
 
20-Nov-2025lmdrcl 50236 Reverse closure for a limit of a diagram. (Contributed by Zhi Wang, 20-Nov-2025.)
(𝑋 ∈ ((𝐶 Limit 𝐷)‘𝐹) → 𝐹 ∈ (𝐷 Func 𝐶))
 
20-Nov-2025diagpropd 49877 If two categories have the same set of objects, morphisms, and compositions, then they have same diagonal functors. (Contributed by Zhi Wang, 20-Nov-2025.)
(𝜑 → (Homf𝐴) = (Homf𝐵))    &   (𝜑 → (compf𝐴) = (compf𝐵))    &   (𝜑 → (Homf𝐶) = (Homf𝐷))    &   (𝜑 → (compf𝐶) = (compf𝐷))    &   (𝜑𝐴 ∈ Cat)    &   (𝜑𝐵 ∈ Cat)    &   (𝜑𝐶 ∈ Cat)    &   (𝜑𝐷 ∈ Cat)       (𝜑 → (𝐴Δfunc𝐶) = (𝐵Δfunc𝐷))
 
20-Nov-20252ndfpropd 49876 If two categories have the same set of objects, morphisms, and compositions, then they have same second projection functors. (Contributed by Zhi Wang, 20-Nov-2025.)
(𝜑 → (Homf𝐴) = (Homf𝐵))    &   (𝜑 → (compf𝐴) = (compf𝐵))    &   (𝜑 → (Homf𝐶) = (Homf𝐷))    &   (𝜑 → (compf𝐶) = (compf𝐷))    &   (𝜑𝐴 ∈ Cat)    &   (𝜑𝐵 ∈ Cat)    &   (𝜑𝐶 ∈ Cat)    &   (𝜑𝐷 ∈ Cat)       (𝜑 → (𝐴 2ndF 𝐶) = (𝐵 2ndF 𝐷))
 
20-Nov-20251stfpropd 49875 If two categories have the same set of objects, morphisms, and compositions, then they have same first projection functors. (Contributed by Zhi Wang, 20-Nov-2025.)
(𝜑 → (Homf𝐴) = (Homf𝐵))    &   (𝜑 → (compf𝐴) = (compf𝐵))    &   (𝜑 → (Homf𝐶) = (Homf𝐷))    &   (𝜑 → (compf𝐶) = (compf𝐷))    &   (𝜑𝐴 ∈ Cat)    &   (𝜑𝐵 ∈ Cat)    &   (𝜑𝐶 ∈ Cat)    &   (𝜑𝐷 ∈ Cat)       (𝜑 → (𝐴 1stF 𝐶) = (𝐵 1stF 𝐷))
 
20-Nov-2025uppropd 49766 If two categories have the same set of objects, morphisms, and compositions, then they have the same universal pairs. (Contributed by Zhi Wang, 20-Nov-2025.)
(𝜑 → (Homf𝐴) = (Homf𝐵))    &   (𝜑 → (compf𝐴) = (compf𝐵))    &   (𝜑 → (Homf𝐶) = (Homf𝐷))    &   (𝜑 → (compf𝐶) = (compf𝐷))    &   (𝜑𝐴𝑉)    &   (𝜑𝐵𝑉)    &   (𝜑𝐶𝑉)    &   (𝜑𝐷𝑉)       (𝜑 → (𝐴 UP 𝐶) = (𝐵 UP 𝐷))
 
20-Nov-2025reueqbidva 49391 Formula-building rule for restricted existential uniqueness quantifier. Deduction form. General version of reueqbidv 3402. (Contributed by Zhi Wang, 20-Nov-2025.)
(𝜑𝐴 = 𝐵)    &   ((𝜑𝑥𝐴) → (𝜓𝜒))       (𝜑 → (∃!𝑥𝐴 𝜓 ↔ ∃!𝑥𝐵 𝜒))
 
20-Nov-2025pgnbgreunbgrlem6 48710 Lemma 6 for pgnbgreunbgr 48711. (Contributed by AV, 20-Nov-2025.)
𝐺 = (5 gPetersenGr 2)    &   𝑉 = (Vtx‘𝐺)    &   𝐸 = (Edg‘𝐺)    &   𝑁 = (𝐺 NeighbVtx 𝑋)       (((𝐾𝑁𝐿𝑁𝐾𝐿) ∧ 𝑏 ∈ (0..^5)) → (({𝐾, ⟨1, 𝑏⟩} ∈ 𝐸 ∧ {⟨1, 𝑏⟩, 𝐿} ∈ 𝐸) → 𝑋 = ⟨1, 𝑏⟩))
 
20-Nov-2025pgnbgreunbgrlem5lem3 48708 Lemma 3 for pgnbgreunbgrlem5 48709. (Contributed by AV, 20-Nov-2025.)
𝐺 = (5 gPetersenGr 2)    &   𝑉 = (Vtx‘𝐺)    &   𝐸 = (Edg‘𝐺)    &   𝑁 = (𝐺 NeighbVtx 𝑋)       ((((𝐿 = ⟨0, ((𝑦 + 1) mod 5)⟩ ∧ 𝐾 = ⟨0, ((𝑦 − 1) mod 5)⟩) ∧ (𝑏 ∈ (0..^5) ∧ 𝑦 ∈ (0..^5))) ∧ {𝐾, ⟨1, 𝑏⟩} ∈ 𝐸) → ¬ {⟨1, 𝑏⟩, 𝐿} ∈ 𝐸)
 
20-Nov-2025pgnbgreunbgrlem5lem2 48707 Lemma 2 for pgnbgreunbgrlem5 48709. (Contributed by AV, 20-Nov-2025.)
𝐺 = (5 gPetersenGr 2)    &   𝑉 = (Vtx‘𝐺)    &   𝐸 = (Edg‘𝐺)    &   𝑁 = (𝐺 NeighbVtx 𝑋)       ((((𝐿 = ⟨0, ((𝑦 − 1) mod 5)⟩ ∧ 𝐾 = ⟨1, 𝑦⟩) ∧ (𝑏 ∈ (0..^5) ∧ 𝑦 ∈ (0..^5))) ∧ {𝐾, ⟨1, 𝑏⟩} ∈ 𝐸) → ¬ {⟨1, 𝑏⟩, 𝐿} ∈ 𝐸)
 
20-Nov-2025pgnbgreunbgrlem4 48705 Lemma 4 for pgnbgreunbgr 48711. (Contributed by AV, 20-Nov-2025.)
𝐺 = (5 gPetersenGr 2)    &   𝑉 = (Vtx‘𝐺)    &   𝐸 = (Edg‘𝐺)    &   𝑁 = (𝐺 NeighbVtx 𝑋)       ((𝐿 = ⟨1, (((2nd𝑋) + 2) mod 5)⟩ ∨ 𝐿 = ⟨0, (2nd𝑋)⟩ ∨ 𝐿 = ⟨1, (((2nd𝑋) − 2) mod 5)⟩) → ((𝐾 = ⟨1, (((2nd𝑋) + 2) mod 5)⟩ ∨ 𝐾 = ⟨0, (2nd𝑋)⟩ ∨ 𝐾 = ⟨1, (((2nd𝑋) − 2) mod 5)⟩) → ((𝑋𝑉𝑋 = ⟨1, 𝑦⟩) → ((𝐾𝐿 ∧ (𝑏 ∈ (0..^5) ∧ 𝑦 ∈ (0..^5))) → (({𝐾, ⟨1, 𝑏⟩} ∈ 𝐸 ∧ {⟨1, 𝑏⟩, 𝐿} ∈ 𝐸) → 𝑋 = ⟨1, 𝑏⟩)))))
 
20-Nov-2025gpgedg2iv 48653 The edges of the generalized Petersen graph GPG(N,K) between two inside vertices. (Contributed by AV, 20-Nov-2025.)
𝐽 = (1..^(⌈‘(𝑁 / 2)))    &   𝐼 = (0..^𝑁)    &   𝐺 = (𝑁 gPetersenGr 𝐾)    &   𝐸 = (Edg‘𝐺)       ((𝑁 ∈ (ℤ‘5) ∧ (𝑋𝐼𝑌𝐼) ∧ (𝐾𝐽 ∧ ((4 · 𝐾) mod 𝑁) ≠ 0)) → (({⟨1, ((𝑌𝐾) mod 𝑁)⟩, ⟨1, 𝑋⟩} ∈ 𝐸 ∧ {⟨1, 𝑋⟩, ⟨1, ((𝑌 + 𝐾) mod 𝑁)⟩} ∈ 𝐸) ↔ 𝑋 = 𝑌))
 
20-Nov-20258mod5e3 47924 8 modulo 5 is 3. (Contributed by AV, 20-Nov-2025.)
(8 mod 5) = 3
 
19-Nov-2025oppfdiag 50001 A diagonal functor for opposite categories is the opposite functor of the diagonal functor for original categories post-composed by an isomorphism (fucoppc 49995). (Contributed by Zhi Wang, 19-Nov-2025.)
𝑂 = (oppCat‘𝐶)    &   𝑃 = (oppCat‘𝐷)    &   𝐿 = (𝐶Δfunc𝐷)    &   (𝜑𝐶 ∈ Cat)    &   (𝜑𝐷 ∈ Cat)    &   (𝜑𝐹 = ( oppFunc ↾ (𝐷 Func 𝐶)))    &   𝑁 = (𝐷 Nat 𝐶)    &   (𝜑𝐺 = (𝑚 ∈ (𝐷 Func 𝐶), 𝑛 ∈ (𝐷 Func 𝐶) ↦ ( I ↾ (𝑛𝑁𝑚))))       (𝜑 → (⟨𝐹, 𝐺⟩ ∘func ( oppFunc ‘𝐿)) = (𝑂Δfunc𝑃))
 
19-Nov-2025oppfdiag1a 50000 A constant functor for opposite categories is the opposite functor of the constant functor for original categories. (Contributed by Zhi Wang, 19-Nov-2025.)
𝑂 = (oppCat‘𝐶)    &   𝑃 = (oppCat‘𝐷)    &   𝐿 = (𝐶Δfunc𝐷)    &   (𝜑𝐶 ∈ Cat)    &   (𝜑𝐷 ∈ Cat)    &   𝐴 = (Base‘𝐶)    &   (𝜑𝑋𝐴)       (𝜑 → ( oppFunc ‘((1st𝐿)‘𝑋)) = ((1st ‘(𝑂Δfunc𝑃))‘𝑋))
 
19-Nov-2025oppfdiag1 49999 A constant functor for opposite categories is the opposite functor of the constant functor for original categories. (Contributed by Zhi Wang, 19-Nov-2025.)
𝑂 = (oppCat‘𝐶)    &   𝑃 = (oppCat‘𝐷)    &   𝐿 = (𝐶Δfunc𝐷)    &   (𝜑𝐶 ∈ Cat)    &   (𝜑𝐷 ∈ Cat)    &   (𝜑𝐹 = ( oppFunc ↾ (𝐷 Func 𝐶)))    &   𝐴 = (Base‘𝐶)    &   (𝜑𝑋𝐴)       (𝜑 → (𝐹‘((1st𝐿)‘𝑋)) = ((1st ‘(𝑂Δfunc𝑃))‘𝑋))
 
19-Nov-2025fucoppcfunc 49997 A functor from the opposite category of functors to the category of opposite functors. (Contributed by Zhi Wang, 19-Nov-2025.)
𝑂 = (oppCat‘𝐶)    &   𝑃 = (oppCat‘𝐷)    &   𝑄 = (𝐶 FuncCat 𝐷)    &   𝑅 = (oppCat‘𝑄)    &   𝑆 = (𝑂 FuncCat 𝑃)    &   𝑁 = (𝐶 Nat 𝐷)    &   (𝜑𝐹 = ( oppFunc ↾ (𝐶 Func 𝐷)))    &   (𝜑𝐺 = (𝑥 ∈ (𝐶 Func 𝐷), 𝑦 ∈ (𝐶 Func 𝐷) ↦ ( I ↾ (𝑦𝑁𝑥))))    &   (𝜑𝐶 ∈ Cat)    &   (𝜑𝐷 ∈ Cat)       (𝜑𝐹(𝑅 Func 𝑆)𝐺)
 
19-Nov-2025fucoppcffth 49996 A fully faithful functor from the opposite category of functors to the category of opposite functors. (Contributed by Zhi Wang, 19-Nov-2025.)
𝑂 = (oppCat‘𝐶)    &   𝑃 = (oppCat‘𝐷)    &   𝑄 = (𝐶 FuncCat 𝐷)    &   𝑅 = (oppCat‘𝑄)    &   𝑆 = (𝑂 FuncCat 𝑃)    &   𝑁 = (𝐶 Nat 𝐷)    &   (𝜑𝐹 = ( oppFunc ↾ (𝐶 Func 𝐷)))    &   (𝜑𝐺 = (𝑥 ∈ (𝐶 Func 𝐷), 𝑦 ∈ (𝐶 Func 𝐷) ↦ ( I ↾ (𝑦𝑁𝑥))))    &   (𝜑𝐶 ∈ Cat)    &   (𝜑𝐷 ∈ Cat)       (𝜑𝐹((𝑅 Full 𝑆) ∩ (𝑅 Faith 𝑆))𝐺)
 
19-Nov-2025opf12 49989 The object part of the op functor on functor categories. Lemma for oppfdiag 50001. (Contributed by Zhi Wang, 19-Nov-2025.)
(𝜑𝐹 = ( oppFunc ↾ (𝐶 Func 𝐷)))    &   (𝜑𝑋 ∈ (𝐶 Func 𝐷))       (𝜑 → (𝑀(2nd ‘(𝐹𝑋))𝑁) = (𝑁(2nd𝑋)𝑀))
 
19-Nov-2025oppc2ndf 49874 The opposite functor of the second projection functor is the second projection functor of opposite categories. (Contributed by Zhi Wang, 19-Nov-2025.)
𝑂 = (oppCat‘𝐶)    &   𝑃 = (oppCat‘𝐷)    &   (𝜑𝐶𝑉)    &   (𝜑𝐷𝑊)       (𝜑 → ( oppFunc ‘(𝐶 2ndF 𝐷)) = (𝑂 2ndF 𝑃))
 
19-Nov-2025oppc1stf 49873 The opposite functor of the first projection functor is the first projection functor of opposite categories. (Contributed by Zhi Wang, 19-Nov-2025.)
𝑂 = (oppCat‘𝐶)    &   𝑃 = (oppCat‘𝐷)    &   (𝜑𝐶𝑉)    &   (𝜑𝐷𝑊)       (𝜑 → ( oppFunc ‘(𝐶 1stF 𝐷)) = (𝑂 1stF 𝑃))
 
19-Nov-2025oppc1stflem 49872 A utility theorem for proving theorems on projection functors of opposite categories. (Contributed by Zhi Wang, 19-Nov-2025.)
𝑂 = (oppCat‘𝐶)    &   𝑃 = (oppCat‘𝐷)    &   (𝜑𝐶𝑉)    &   (𝜑𝐷𝑊)    &   ((𝜑 ∧ (𝐶 ∈ Cat ∧ 𝐷 ∈ Cat)) → ( oppFunc ‘(𝐶𝐹𝐷)) = (𝑂𝐹𝑃))    &   𝐹 = (𝑐 ∈ Cat, 𝑑 ∈ Cat ↦ 𝑌)       (𝜑 → ( oppFunc ‘(𝐶𝐹𝐷)) = (𝑂𝐹𝑃))
 
19-Nov-2025uobffth 49803 A fully faithful functor generates equal sets of universal objects. (Contributed by Zhi Wang, 19-Nov-2025.)
𝐵 = (Base‘𝐷)    &   (𝜑𝑋𝐵)    &   (𝜑𝐹 ∈ (𝐶 Func 𝐷))    &   (𝜑 → (𝐾func 𝐹) = 𝐺)    &   (𝜑 → ((1st𝐾)‘𝑋) = 𝑌)    &   (𝜑𝐾 ∈ ((𝐷 Full 𝐸) ∩ (𝐷 Faith 𝐸)))       (𝜑 → dom (𝐹(𝐶 UP 𝐷)𝑋) = dom (𝐺(𝐶 UP 𝐸)𝑌))
 
19-Nov-2025oppf2 49725 Value of the morphism part of the opposite functor. (Contributed by Zhi Wang, 19-Nov-2025.)
(𝜑𝐹 ∈ (𝐶 Func 𝐷))       (𝜑 → (𝑀(2nd ‘( oppFunc ‘𝐹))𝑁) = (𝑁(2nd𝐹)𝑀))
 
19-Nov-2025oppf1 49724 Value of the object part of the opposite functor. (Contributed by Zhi Wang, 19-Nov-2025.)
(𝜑𝐹 ∈ (𝐶 Func 𝐷))       (𝜑 → (1st ‘( oppFunc ‘𝐹)) = (1st𝐹))
 
19-Nov-2025oppfval3 49723 Value of the opposite functor. (Contributed by Zhi Wang, 19-Nov-2025.)
(𝜑𝐹 = ⟨𝐺, 𝐾⟩)    &   (𝜑𝐹 ∈ (𝐶 Func 𝐷))       (𝜑 → ( oppFunc ‘𝐹) = ⟨𝐺, tpos 𝐾⟩)
 
19-Nov-2025eqfnovd 49451 Deduction for equality of operations. (Contributed by Zhi Wang, 19-Nov-2025.)
(𝜑𝐹 Fn (𝐴 × 𝐵))    &   (𝜑𝐺 Fn (𝐴 × 𝐵))    &   ((𝜑 ∧ (𝑥𝐴𝑦𝐵)) → (𝑥𝐹𝑦) = (𝑥𝐺𝑦))       (𝜑𝐹 = 𝐺)
 
19-Nov-2025cos4t3rdpi 42929 The cosine of 4 · (π / 3) is -1 / 2. (Contributed by SN, 19-Nov-2025.)
(cos‘(4 · (π / 3))) = -(1 / 2)
 
19-Nov-2025sin4t3rdpi 42928 The sine of 4 · (π / 3) is -(√3) / 2. (Contributed by SN, 19-Nov-2025.)
(sin‘(4 · (π / 3))) = -((√‘3) / 2)
 
19-Nov-2025cos2t3rdpi 42927 The cosine of 2 · (π / 3) is -1 / 2. (Contributed by SN, 19-Nov-2025.)
(cos‘(2 · (π / 3))) = -(1 / 2)
 
19-Nov-2025sin2t3rdpi 42926 The sine of 2 · (π / 3) is (√3) / 2. (Contributed by SN, 19-Nov-2025.)
(sin‘(2 · (π / 3))) = ((√‘3) / 2)
 
19-Nov-2025cospim 42924 Cosine of a number subtracted from π. (Contributed by SN, 19-Nov-2025.)
(𝐴 ∈ ℂ → (cos‘(π − 𝐴)) = -(cos‘𝐴))
 
19-Nov-2025sinpim 42923 Sine of a number subtracted from π. (Contributed by SN, 19-Nov-2025.)
(𝐴 ∈ ℂ → (sin‘(π − 𝐴)) = (sin‘𝐴))
 
19-Nov-20253rdpwhole 42865 A third of a number plus the number is four thirds of the number. (Contributed by SN, 19-Nov-2025.)
(𝐴 ∈ ℂ → ((𝐴 / 3) + 𝐴) = (4 · (𝐴 / 3)))
 
19-Nov-20251p3e4 42838 1 + 3 = 4. (Contributed by SN, 19-Nov-2025.)
(1 + 3) = 4
 
19-Nov-2025spsv 2006 Generalization of antecedent. A trivial weak version of sps 2219 avoiding ax-12 2211. (Contributed by SN, 13-Nov-2025.) (Proof shortened by WL, 19-Nov-2025.)
(𝜑𝜓)       (∀𝑥𝜑𝜓)
 
18-Nov-2025fucoppccic 49998 The opposite category of functors is isomorphic to the category of opposite functors. (Contributed by Zhi Wang, 18-Nov-2025.)
𝐶 = (CatCat‘𝑈)    &   𝐵 = (Base‘𝐶)    &   𝑋 = (oppCat‘(𝐷 FuncCat 𝐸))    &   𝑌 = ((oppCat‘𝐷) FuncCat (oppCat‘𝐸))    &   (𝜑𝑋𝐵)    &   (𝜑𝑌𝐵)    &   (𝜑𝐷𝑉)    &   (𝜑𝐸𝑊)       (𝜑𝑋( ≃𝑐𝐶)𝑌)
 
18-Nov-2025fucoppc 49995 The isomorphism from the opposite category of functors to the category of opposite functors. (Contributed by Zhi Wang, 18-Nov-2025.)
𝑂 = (oppCat‘𝐶)    &   𝑃 = (oppCat‘𝐷)    &   𝑄 = (𝐶 FuncCat 𝐷)    &   𝑅 = (oppCat‘𝑄)    &   𝑆 = (𝑂 FuncCat 𝑃)    &   𝑁 = (𝐶 Nat 𝐷)    &   (𝜑𝐹 = ( oppFunc ↾ (𝐶 Func 𝐷)))    &   (𝜑𝐺 = (𝑥 ∈ (𝐶 Func 𝐷), 𝑦 ∈ (𝐶 Func 𝐷) ↦ ( I ↾ (𝑦𝑁𝑥))))    &   𝑇 = (CatCat‘𝑈)    &   𝐵 = (Base‘𝑇)    &   𝐼 = (Iso‘𝑇)    &   (𝜑𝐶𝑉)    &   (𝜑𝐷𝑊)    &   (𝜑𝑅𝐵)    &   (𝜑𝑆𝐵)       (𝜑𝐹(𝑅𝐼𝑆)𝐺)
 
18-Nov-2025fucoppcco 49994 The opposite category of functors is compatible with the category of opposite functors in terms of composition. (Contributed by Zhi Wang, 18-Nov-2025.)
𝑂 = (oppCat‘𝐶)    &   𝑃 = (oppCat‘𝐷)    &   𝑄 = (𝐶 FuncCat 𝐷)    &   𝑅 = (oppCat‘𝑄)    &   𝑆 = (𝑂 FuncCat 𝑃)    &   𝑁 = (𝐶 Nat 𝐷)    &   (𝜑𝐹 = ( oppFunc ↾ (𝐶 Func 𝐷)))    &   (𝜑𝐺 = (𝑥 ∈ (𝐶 Func 𝐷), 𝑦 ∈ (𝐶 Func 𝐷) ↦ ( I ↾ (𝑦𝑁𝑥))))    &   (𝜑𝐴 ∈ (𝑋(Hom ‘𝑅)𝑌))    &   (𝜑𝐵 ∈ (𝑌(Hom ‘𝑅)𝑍))       (𝜑 → ((𝑋𝐺𝑍)‘(𝐵(⟨𝑋, 𝑌⟩(comp‘𝑅)𝑍)𝐴)) = (((𝑌𝐺𝑍)‘𝐵)(⟨(𝐹𝑋), (𝐹𝑌)⟩(comp‘𝑆)(𝐹𝑍))((𝑋𝐺𝑌)‘𝐴)))
 
18-Nov-2025fucoppcid 49993 The opposite category of functors is compatible with the category of opposite functors in terms of identity morphism. (Contributed by Zhi Wang, 18-Nov-2025.)
𝑂 = (oppCat‘𝐶)    &   𝑃 = (oppCat‘𝐷)    &   𝑄 = (𝐶 FuncCat 𝐷)    &   𝑅 = (oppCat‘𝑄)    &   𝑆 = (𝑂 FuncCat 𝑃)    &   𝑁 = (𝐶 Nat 𝐷)    &   (𝜑𝐹 = ( oppFunc ↾ (𝐶 Func 𝐷)))    &   (𝜑𝐺 = (𝑥 ∈ (𝐶 Func 𝐷), 𝑦 ∈ (𝐶 Func 𝐷) ↦ ( I ↾ (𝑦𝑁𝑥))))    &   (𝜑𝑋 ∈ (𝐶 Func 𝐷))       (𝜑 → ((𝑋𝐺𝑋)‘((Id‘𝑅)‘𝑋)) = ((Id‘𝑆)‘(𝐹𝑋)))
 
18-Nov-2025fucoppclem 49992 Lemma for fucoppc 49995. (Contributed by Zhi Wang, 18-Nov-2025.)
𝑂 = (oppCat‘𝐶)    &   𝑃 = (oppCat‘𝐷)    &   𝑁 = (𝐶 Nat 𝐷)    &   (𝜑𝐹 = ( oppFunc ↾ (𝐶 Func 𝐷)))    &   (𝜑𝑋 ∈ (𝐶 Func 𝐷))    &   (𝜑𝑌 ∈ (𝐶 Func 𝐷))       (𝜑 → (𝑌𝑁𝑋) = ((𝐹𝑋)(𝑂 Nat 𝑃)(𝐹𝑌)))
 
18-Nov-2025opf2 49991 The morphism part of the op functor on functor categories. Lemma for fucoppc 49995. (Contributed by Zhi Wang, 18-Nov-2025.)
(𝜑𝐹 = (𝑥𝐴, 𝑦𝐵 ↦ ( I ↾ (𝑦𝑁𝑥))))    &   (𝜑𝑋𝐴)    &   (𝜑𝑌𝐵)    &   (𝜑𝐶 = 𝐷)    &   (𝜑𝐷 ∈ (𝑌𝑁𝑋))       (𝜑 → ((𝑋𝐹𝑌)‘𝐶) = 𝐷)
 
18-Nov-2025opf2fval 49990 The morphism part of the op functor on functor categories. Lemma for fucoppc 49995. (Contributed by Zhi Wang, 18-Nov-2025.)
(𝜑𝐹 = (𝑥𝐴, 𝑦𝐵 ↦ ( I ↾ (𝑦𝑁𝑥))))    &   (𝜑𝑋𝐴)    &   (𝜑𝑌𝐵)       (𝜑 → (𝑋𝐹𝑌) = ( I ↾ (𝑌𝑁𝑋)))
 
18-Nov-2025opf11 49988 The object part of the op functor on functor categories. Lemma for fucoppc 49995. (Contributed by Zhi Wang, 18-Nov-2025.)
(𝜑𝐹 = ( oppFunc ↾ (𝐶 Func 𝐷)))    &   (𝜑𝑋 ∈ (𝐶 Func 𝐷))       (𝜑 → (1st ‘(𝐹𝑋)) = (1st𝑋))
 
18-Nov-2025natoppfb 49816 A natural transformation is natural between opposite functors, and vice versa. (Contributed by Zhi Wang, 18-Nov-2025.)
𝑂 = (oppCat‘𝐶)    &   𝑃 = (oppCat‘𝐷)    &   𝑁 = (𝐶 Nat 𝐷)    &   𝑀 = (𝑂 Nat 𝑃)    &   (𝜑𝐾 = ( oppFunc ‘𝐹))    &   (𝜑𝐿 = ( oppFunc ‘𝐺))    &   (𝜑𝐶𝑉)    &   (𝜑𝐷𝑊)       (𝜑 → (𝐹𝑁𝐺) = (𝐿𝑀𝐾))
 
18-Nov-2025natoppf2 49815 A natural transformation is natural between opposite functors. (Contributed by Zhi Wang, 18-Nov-2025.)
𝑂 = (oppCat‘𝐶)    &   𝑃 = (oppCat‘𝐷)    &   𝑁 = (𝐶 Nat 𝐷)    &   𝑀 = (𝑂 Nat 𝑃)    &   (𝜑𝐾 = ( oppFunc ‘𝐹))    &   (𝜑𝐿 = ( oppFunc ‘𝐺))    &   (𝜑𝐴 ∈ (𝐹𝑁𝐺))       (𝜑𝐴 ∈ (𝐿𝑀𝐾))
 
18-Nov-2025natoppf 49814 A natural transformation is natural between opposite functors. (Contributed by Zhi Wang, 18-Nov-2025.)
𝑂 = (oppCat‘𝐶)    &   𝑃 = (oppCat‘𝐷)    &   𝑁 = (𝐶 Nat 𝐷)    &   𝑀 = (𝑂 Nat 𝑃)    &   (𝜑𝐴 ∈ (⟨𝐹, 𝐺𝑁𝐾, 𝐿⟩))       (𝜑𝐴 ∈ (⟨𝐾, tpos 𝐿𝑀𝐹, tpos 𝐺⟩))
 
18-Nov-2025eloppf2 49719 Both components of a pre-image of a non-empty opposite functor exist; and the second component is a relation on triples. (Contributed by Zhi Wang, 18-Nov-2025.)
(𝐹 oppFunc 𝐺) = 𝐾    &   (𝜑𝑋𝐾)       (𝜑 → ((𝐹 ∈ V ∧ 𝐺 ∈ V) ∧ (Rel 𝐺 ∧ Rel dom 𝐺)))
 
18-Nov-2025eloppf 49718 The pre-image of a non-empty opposite functor is non-empty; and the second component of the pre-image is a relation on triples. (Contributed by Zhi Wang, 18-Nov-2025.)
𝐺 = ( oppFunc ‘𝐹)    &   (𝜑𝑋𝐺)       (𝜑 → (𝐹 ≠ ∅ ∧ (Rel (2nd𝐹) ∧ Rel dom (2nd𝐹))))
 
18-Nov-2025pgnbgreunbgrlem3 48704 Lemma 3 for pgnbgreunbgr 48711. (Contributed by AV, 18-Nov-2025.)
𝐺 = (5 gPetersenGr 2)    &   𝑉 = (Vtx‘𝐺)    &   𝐸 = (Edg‘𝐺)    &   𝑁 = (𝐺 NeighbVtx 𝑋)       (((𝐾𝑁𝐿𝑁𝐾𝐿) ∧ 𝑏 ∈ (0..^5)) → (({𝐾, ⟨0, 𝑏⟩} ∈ 𝐸 ∧ {⟨0, 𝑏⟩, 𝐿} ∈ 𝐸) → 𝑋 = ⟨0, 𝑏⟩))
 
18-Nov-2025pgnbgreunbgrlem2 48703 Lemma 2 for pgnbgreunbgr 48711. Impossible cases. (Contributed by AV, 18-Nov-2025.)
𝐺 = (5 gPetersenGr 2)    &   𝑉 = (Vtx‘𝐺)    &   𝐸 = (Edg‘𝐺)    &   𝑁 = (𝐺 NeighbVtx 𝑋)       ((𝐿 = ⟨1, (((2nd𝑋) + 2) mod 5)⟩ ∨ 𝐿 = ⟨0, (2nd𝑋)⟩ ∨ 𝐿 = ⟨1, (((2nd𝑋) − 2) mod 5)⟩) → ((𝐾 = ⟨1, (((2nd𝑋) + 2) mod 5)⟩ ∨ 𝐾 = ⟨0, (2nd𝑋)⟩ ∨ 𝐾 = ⟨1, (((2nd𝑋) − 2) mod 5)⟩) → ((𝑋 = ⟨1, 𝑦⟩ ∧ 𝑋𝑉) → ((𝐾𝐿 ∧ (𝑏 ∈ (0..^5) ∧ 𝑦 ∈ (0..^5))) → (({𝐾, ⟨0, 𝑏⟩} ∈ 𝐸 ∧ {⟨0, 𝑏⟩, 𝐿} ∈ 𝐸) → 𝑋 = ⟨0, 𝑏⟩)))))
 
18-Nov-2025fxpsdrg 33316 The fixed points of a group action 𝐴 on a division ring 𝑊 is a sub-division-ring. Since sub-division-rings of fields are subfields (see fldsdrgfld 20827), (𝐶FixPts𝐴) might be called the fixed subfield under 𝐴. (Contributed by Thierry Arnoux, 18-Nov-2025.)
𝐵 = (Base‘𝐺)    &   𝐶 = (Base‘𝑊)    &   𝐹 = (𝑥𝐶 ↦ (𝑝𝐴𝑥))    &   (𝜑𝐴 ∈ (𝐺 GrpAct 𝐶))    &   ((𝜑𝑝𝐵) → 𝐹 ∈ (𝑊 RingHom 𝑊))    &   (𝜑𝑊 ∈ DivRing)       (𝜑 → (𝐶FixPts𝐴) ∈ (SubDRing‘𝑊))
 
18-Nov-2025fxpsubrg 33315 The fixed points of a group action 𝐴 on a ring 𝑊 is a subgring. (Contributed by Thierry Arnoux, 18-Nov-2025.)
𝐵 = (Base‘𝐺)    &   𝐶 = (Base‘𝑊)    &   𝐹 = (𝑥𝐶 ↦ (𝑝𝐴𝑥))    &   (𝜑𝐴 ∈ (𝐺 GrpAct 𝐶))    &   ((𝜑𝑝𝐵) → 𝐹 ∈ (𝑊 RingHom 𝑊))       (𝜑 → (𝐶FixPts𝐴) ∈ (SubRing‘𝑊))
 
18-Nov-2025fxpsubg 33314 The fixed points of a group action 𝐴 on a group 𝑊 is a subgroup. (Contributed by Thierry Arnoux, 18-Nov-2025.)
𝐵 = (Base‘𝐺)    &   𝐶 = (Base‘𝑊)    &   𝐹 = (𝑥𝐶 ↦ (𝑝𝐴𝑥))    &   (𝜑𝐴 ∈ (𝐺 GrpAct 𝐶))    &   ((𝜑𝑝𝐵) → 𝐹 ∈ (𝑊 GrpHom 𝑊))       (𝜑 → (𝐶FixPts𝐴) ∈ (SubGrp‘𝑊))
 
18-Nov-2025fxpsubm 33313 Provided the group action 𝐴 induces monoid automorphisms, the set of fixed points of 𝐴 on a monoid 𝑊 is a submonoid, which could be called the fixed submonoid under 𝐴. (Contributed by Thierry Arnoux, 18-Nov-2025.)
𝐵 = (Base‘𝐺)    &   𝐶 = (Base‘𝑊)    &   𝐹 = (𝑥𝐶 ↦ (𝑝𝐴𝑥))    &   (𝜑𝐴 ∈ (𝐺 GrpAct 𝐶))    &   ((𝜑𝑝𝐵) → 𝐹 ∈ (𝑊 MndHom 𝑊))       (𝜑 → (𝐶FixPts𝐴) ∈ (SubMnd‘𝑊))
 
18-Nov-2025cntrval2 33312 Express the center 𝑍 of a group 𝑀 as the set of fixed points of the conjugation operation . (Contributed by Thierry Arnoux, 18-Nov-2025.)
𝐵 = (Base‘𝑀)    &    + = (+g𝑀)    &    = (-g𝑀)    &    = (𝑥𝐵, 𝑦𝐵 ↦ ((𝑥 + 𝑦) 𝑥))    &   𝑍 = (Cntr‘𝑀)       (𝑀 ∈ Grp → 𝑍 = (𝐵FixPts ))
 
18-Nov-2025conjga 33311 Group conjugation induces a group action. (Contributed by Thierry Arnoux, 18-Nov-2025.)
𝐵 = (Base‘𝑀)    &    + = (+g𝑀)    &    = (-g𝑀)    &    = (𝑥𝐵, 𝑦𝐵 ↦ ((𝑥 + 𝑦) 𝑥))       (𝑀 ∈ Grp → ∈ (𝑀 GrpAct 𝐵))
 
18-Nov-2025fxpgaeq 33310 A fixed point 𝑋 is invariant under group action 𝐴. (Contributed by Thierry Arnoux, 18-Nov-2025.)
𝑈 = (Base‘𝐺)    &   (𝜑𝐴 ∈ (𝐺 GrpAct 𝐶))    &   (𝜑𝑋 ∈ (𝐶FixPts𝐴))    &   (𝜑𝑃𝑈)       (𝜑 → (𝑃𝐴𝑋) = 𝑋)
 
18-Nov-2025isfxp 33309 Property of being a fixed point. (Contributed by Thierry Arnoux, 18-Nov-2025.)
𝑈 = (Base‘𝐺)    &   (𝜑𝐴 ∈ (𝐺 GrpAct 𝐶))    &   (𝜑𝑋𝐶)       (𝜑 → (𝑋 ∈ (𝐶FixPts𝐴) ↔ ∀𝑝𝑈 (𝑝𝐴𝑋) = 𝑋))
 
18-Nov-2025fxpgaval 33308 Value of the set of fixed points for a group action 𝐴. (Contributed by Thierry Arnoux, 18-Nov-2025.)
𝑈 = (Base‘𝐺)    &   (𝜑𝐴 ∈ (𝐺 GrpAct 𝐶))       (𝜑 → (𝐶FixPts𝐴) = {𝑥𝐶 ∣ ∀𝑝𝑈 (𝑝𝐴𝑥) = 𝑥})
 
18-Nov-2025fxpss 33307 The set of fixed points is a subset of the set acted upon. (Contributed by Thierry Arnoux, 18-Nov-2025.)
(𝜑𝐵𝑉)    &   (𝜑𝐴𝑊)       (𝜑 → (𝐵FixPts𝐴) ⊆ 𝐵)
 
18-Nov-2025fxpval 33306 Value of the set of fixed points. (Contributed by Thierry Arnoux, 18-Nov-2025.)
(𝜑𝐵𝑉)    &   (𝜑𝐴𝑊)       (𝜑 → (𝐵FixPts𝐴) = {𝑥𝐵 ∣ ∀𝑝 ∈ dom dom 𝐴(𝑝𝐴𝑥) = 𝑥})
 
18-Nov-2025df-fxp 33305 Define the set of fixed points left unchanged by a group action. (Contributed by Thierry Arnoux, 18-Nov-2025.)
FixPts = (𝑏 ∈ V, 𝑎 ∈ V ↦ {𝑥𝑏 ∣ ∀𝑝 ∈ dom dom 𝑎(𝑝𝑎𝑥) = 𝑥})
 
18-Nov-2025ralimd6v 3214 Deduction sextupally quantifying both antecedent and consequent. (Contributed by Scott Fenton, 5-Mar-2025.) Reduce DV conditions. (Revised by Eric Schmidt, 18-Nov-2025.)
(𝜑 → (𝜓𝜒))       (𝜑 → (∀𝑥𝐴𝑦𝐵𝑧𝐶𝑤𝐷𝑝𝐸𝑞𝐹 𝜓 → ∀𝑥𝐴𝑦𝐵𝑧𝐶𝑤𝐷𝑝𝐸𝑞𝐹 𝜒))
 
18-Nov-2025ralimd4v 3212 Deduction quadrupally quantifying both antecedent and consequent. (Contributed by Scott Fenton, 2-Mar-2025.) Reduce DV conditions. (Revised by Eric Schmidt, 18-Nov-2025.)
(𝜑 → (𝜓𝜒))       (𝜑 → (∀𝑥𝐴𝑦𝐵𝑧𝐶𝑤𝐷 𝜓 → ∀𝑥𝐴𝑦𝐵𝑧𝐶𝑤𝐷 𝜒))
 
18-Nov-2025ralimdvv 3210 Deduction doubly quantifying both antecedent and consequent. (Contributed by Scott Fenton, 2-Mar-2025.) Shorten and reduce DV conditions. (Revised by Eric Schmidt, 18-Nov-2025.)
(𝜑 → (𝜓𝜒))       (𝜑 → (∀𝑥𝐴𝑦𝐵 𝜓 → ∀𝑥𝐴𝑦𝐵 𝜒))
 
17-Nov-2025initocmd 50254 Initial objects are the object part of colimits of the empty diagram. (Contributed by Zhi Wang, 17-Nov-2025.)
(InitO‘𝐶) = dom (∅(𝐶 Colimit ∅)∅)
 
17-Nov-2025isinito4a 50133 The predicate "is an initial object" of a category, using universal property. (Contributed by Zhi Wang, 17-Nov-2025.)
(𝜑1 ∈ TermCat)    &   (𝜑𝑋 ∈ (Base‘ 1 ))    &   𝐹 = ((1st ‘( 1 Δfunc𝐶))‘𝑋)       (𝜑 → (𝐼 ∈ (InitO‘𝐶) ↔ 𝐼 ∈ dom (𝐹(𝐶 UP 1 )𝑋)))
 
17-Nov-2025isinito4 50132 The predicate "is an initial object" of a category, using universal property. (Contributed by Zhi Wang, 17-Nov-2025.)
(𝜑1 ∈ TermCat)    &   (𝜑𝑋 ∈ (Base‘ 1 ))    &   (𝜑𝐹 ∈ (𝐶 Func 1 ))       (𝜑 → (𝐼 ∈ (InitO‘𝐶) ↔ 𝐼 ∈ dom (𝐹(𝐶 UP 1 )𝑋)))
 
17-Nov-2025uobeqterm 50131 Universal objects and terminal categories. (Contributed by Zhi Wang, 17-Nov-2025.)
𝐴 = (Base‘𝐷)    &   𝐵 = (Base‘𝐸)    &   (𝜑𝑋𝐴)    &   (𝜑𝑌𝐵)    &   (𝜑𝐹 ∈ (𝐶 Func 𝐷))    &   (𝜑𝐺 ∈ (𝐶 Func 𝐸))    &   (𝜑𝐷 ∈ TermCat)    &   (𝜑𝐸 ∈ TermCat)       (𝜑 → dom (𝐹(𝐶 UP 𝐷)𝑋) = dom (𝐺(𝐶 UP 𝐸)𝑌))
 
17-Nov-2025cofuterm 50130 Post-compose with a functor to a terminal category. (Contributed by Zhi Wang, 17-Nov-2025.)
(𝜑𝐹 ∈ (𝐶 Func 𝐷))    &   (𝜑𝐺 ∈ (𝐷 Func 𝐸))    &   (𝜑𝐾 ∈ (𝐶 Func 𝐸))    &   (𝜑𝐸 ∈ TermCat)       (𝜑 → (𝐺func 𝐹) = 𝐾)
 
17-Nov-2025termfucterm 50129 All functors between two terminal categories are isomorphisms. (Contributed by Zhi Wang, 17-Nov-2025.)
𝐶 = (CatCat‘𝑈)    &   𝐵 = (Base‘𝐶)    &   𝐼 = (Iso‘𝐶)    &   (𝜑𝑋𝐵)    &   (𝜑𝑋 ∈ TermCat)    &   (𝜑𝑌𝐵)    &   (𝜑𝑌 ∈ TermCat)       (𝜑 → (𝑋 Func 𝑌) = (𝑋𝐼𝑌))
 
17-Nov-20250fucterm 50128 The category of functors from an initial category is terminal. (Contributed by Zhi Wang, 17-Nov-2025.)
(𝜑𝐶𝑉)    &   (𝜑 → ∅ = (Base‘𝐶))    &   (𝜑𝐷 ∈ Cat)    &   𝑄 = (𝐶 FuncCat 𝐷)       (𝜑𝑄 ∈ TermCat)
 
17-Nov-2025fucterm 50127 The category of functors to a terminal category is terminal. (Contributed by Zhi Wang, 17-Nov-2025.)
𝑄 = (𝐶 FuncCat 𝐷)    &   (𝜑𝐶 ∈ Cat)    &   (𝜑𝐷 ∈ TermCat)       (𝜑𝑄 ∈ TermCat)
 
17-Nov-2025funcsn 50126 The category of one functor to a thin category is terminal. (Contributed by Zhi Wang, 17-Nov-2025.)
𝑄 = (𝐶 FuncCat 𝐷)    &   (𝜑𝐹𝑉)    &   (𝜑 → (𝐶 Func 𝐷) = {𝐹})    &   (𝜑𝐷 ∈ ThinCat)       (𝜑𝑄 ∈ TermCat)
 
17-Nov-2025termco 50066 The object of a terminal category. (Contributed by Zhi Wang, 17-Nov-2025.)
(𝜑𝐶 ∈ TermCat)    &   𝐵 = (Base‘𝐶)       (𝜑 𝐵𝐵)
 
17-Nov-2025uobeq3 49987 An isomorphism between categories generates equal sets of universal objects. (Contributed by Zhi Wang, 17-Nov-2025.)
𝐵 = (Base‘𝐷)    &   (𝜑𝑋𝐵)    &   (𝜑𝐹 ∈ (𝐶 Func 𝐷))    &   (𝜑 → (𝐾func 𝐹) = 𝐺)    &   (𝜑 → ((1st𝐾)‘𝑋) = 𝑌)    &   𝑄 = (CatCat‘𝑈)    &   𝐼 = (Iso‘𝑄)    &   (𝜑𝐾 ∈ (𝐷𝐼𝐸))       (𝜑 → dom (𝐹(𝐶 UP 𝐷)𝑋) = dom (𝐺(𝐶 UP 𝐸)𝑌))
 
17-Nov-2025uobeq2 49986 If a full functor (in fact, a full embedding) is a section, then the sets of universal objects are equal. (Contributed by Zhi Wang, 17-Nov-2025.)
𝐵 = (Base‘𝐷)    &   (𝜑𝑋𝐵)    &   (𝜑𝐹 ∈ (𝐶 Func 𝐷))    &   (𝜑 → (𝐾func 𝐹) = 𝐺)    &   (𝜑 → ((1st𝐾)‘𝑋) = 𝑌)    &   𝑄 = (CatCat‘𝑈)    &   𝑆 = (Sect‘𝑄)    &   (𝜑𝐾 ∈ (𝐷 Full 𝐸))    &   (𝜑𝐾 ∈ dom (𝐷𝑆𝐸))       (𝜑 → dom (𝐹(𝐶 UP 𝐷)𝑋) = dom (𝐺(𝐶 UP 𝐸)𝑌))
 
17-Nov-2025catcisoi 49985 A functor is an isomorphism of categories only if it is full and faithful, and is a bijection on the objects. Remark 3.28(2) in [Adamek] p. 34. (Contributed by Zhi Wang, 17-Nov-2025.)
𝐶 = (CatCat‘𝑈)    &   𝑅 = (Base‘𝑋)    &   𝑆 = (Base‘𝑌)    &   𝐼 = (Iso‘𝐶)    &   (𝜑𝐹 ∈ (𝑋𝐼𝑌))       (𝜑 → (𝐹 ∈ ((𝑋 Full 𝑌) ∩ (𝑋 Faith 𝑌)) ∧ (1st𝐹):𝑅1-1-onto𝑆))
 
17-Nov-2025uobeq 49805 If a full functor (in fact, a full embedding) is a section of a functor (surjective on objects), then the sets of universal objects are equal. (Contributed by Zhi Wang, 17-Nov-2025.)
𝐵 = (Base‘𝐷)    &   (𝜑𝑋𝐵)    &   (𝜑𝐹 ∈ (𝐶 Func 𝐷))    &   (𝜑 → (𝐾func 𝐹) = 𝐺)    &   (𝜑 → ((1st𝐾)‘𝑋) = 𝑌)    &   𝐼 = (idfunc𝐷)    &   (𝜑𝐾 ∈ (𝐷 Full 𝐸))    &   (𝜑 → (𝐿func 𝐾) = 𝐼)    &   (𝜑𝐿 ∈ (𝐸 Func 𝐷))       (𝜑 → dom (𝐹(𝐶 UP 𝐷)𝑋) = dom (𝐺(𝐶 UP 𝐸)𝑌))
 
17-Nov-2025uobeqw 49804 If a full functor (in fact, a full embedding) is a section of a fully faithful functor (surjective on objects), then the sets of universal objects are equal. (Contributed by Zhi Wang, 17-Nov-2025.)
𝐵 = (Base‘𝐷)    &   (𝜑𝑋𝐵)    &   (𝜑𝐹 ∈ (𝐶 Func 𝐷))    &   (𝜑 → (𝐾func 𝐹) = 𝐺)    &   (𝜑 → ((1st𝐾)‘𝑋) = 𝑌)    &   𝐼 = (idfunc𝐷)    &   (𝜑𝐾 ∈ (𝐷 Full 𝐸))    &   (𝜑 → (𝐿func 𝐾) = 𝐼)    &   (𝜑𝐿 ∈ ((𝐸 Full 𝐷) ∩ (𝐸 Faith 𝐷)))       (𝜑 → dom (𝐹(𝐶 UP 𝐷)𝑋) = dom (𝐺(𝐶 UP 𝐸)𝑌))
 
17-Nov-2025uptrar 49801 Universal property and fully faithful functor. (Contributed by Zhi Wang, 17-Nov-2025.)
(𝜑 → ((1st𝐾)‘𝑋) = 𝑌)    &   (𝜑𝐾 ∈ ((𝐷 Full 𝐸) ∩ (𝐷 Faith 𝐸)))    &   (𝜑 → (𝐾func 𝐹) = 𝐺)    &   𝐵 = (Base‘𝐷)    &   (𝜑𝑋𝐵)    &   (𝜑𝐹 ∈ (𝐶 Func 𝐷))    &   (𝜑 → ((𝑋(2nd𝐾)((1st𝐹)‘𝑍))‘𝑁) = 𝑀)    &   (𝜑𝑍(𝐺(𝐶 UP 𝐸)𝑌)𝑁)       (𝜑𝑍(𝐹(𝐶 UP 𝐷)𝑋)𝑀)
 
17-Nov-2025uobrcl 49778 Reverse closure for universal object. (Contributed by Zhi Wang, 17-Nov-2025.)
(𝑋 ∈ dom (𝐹(𝐷 UP 𝐸)𝑊) → (𝐷 ∈ Cat ∧ 𝐸 ∈ Cat))
 
17-Nov-2025oppff1o 49734 The operation generating opposite functors is bijective. (Contributed by Zhi Wang, 17-Nov-2025.)
𝑂 = (oppCat‘𝐶)    &   𝑃 = (oppCat‘𝐷)    &   (𝜑𝐶𝑉)    &   (𝜑𝐷𝑊)       (𝜑 → ( oppFunc ↾ (𝐶 Func 𝐷)):(𝐶 Func 𝐷)–1-1-onto→(𝑂 Func 𝑃))
 
17-Nov-2025oppff1 49733 The operation generating opposite functors is injective. (Contributed by Zhi Wang, 17-Nov-2025.)
𝑂 = (oppCat‘𝐶)    &   𝑃 = (oppCat‘𝐷)       ( oppFunc ↾ (𝐶 Func 𝐷)):(𝐶 Func 𝐷)–1-1→(𝑂 Func 𝑃)
 
17-Nov-20252oppffunc 49731 The opposite functor of an opposite functor is a functor on the original categories. (Contributed by Zhi Wang, 14-Nov-2025.) The functor in opposite categories does not have to be an opposite functor. (Revised by Zhi Wang, 17-Nov-2025.)
𝑂 = (oppCat‘𝐶)    &   𝑃 = (oppCat‘𝐷)    &   (𝜑𝐶𝑉)    &   (𝜑𝐷𝑊)    &   (𝜑𝐹 ∈ (𝑂 Func 𝑃))       (𝜑 → ( oppFunc ‘𝐹) ∈ (𝐶 Func 𝐷))
 
17-Nov-2025oppffn 49709 oppFunc is a function on (V × V). (Contributed by Zhi Wang, 17-Nov-2025.)
oppFunc Fn (V × V)
 
17-Nov-2025isoval2 49620 The isomorphisms are the domain of the inverse relation. (Contributed by Zhi Wang, 17-Nov-2025.)
𝑁 = (Inv‘𝐶)    &   𝐼 = (Iso‘𝐶)       (𝑋𝐼𝑌) = dom (𝑋𝑁𝑌)
 
17-Nov-2025isorcl2 49619 Reverse closure for isomorphism relations. (Contributed by Zhi Wang, 17-Nov-2025.)
𝐼 = (Iso‘𝐶)    &   (𝜑𝐹 ∈ (𝑋𝐼𝑌))    &   𝐵 = (Base‘𝐶)       (𝜑 → (𝑋𝐵𝑌𝐵))
 
17-Nov-2025isorcl 49618 Reverse closure for isomorphism relations. (Contributed by Zhi Wang, 17-Nov-2025.)
𝐼 = (Iso‘𝐶)    &   (𝜑𝐹 ∈ (𝑋𝐼𝑌))       (𝜑𝐶 ∈ Cat)
 
17-Nov-2025pgnbgreunbgrlem2lem3 48702 Lemma 3 for pgnbgreunbgrlem2 48703. (Contributed by AV, 17-Nov-2025.)
𝐺 = (5 gPetersenGr 2)    &   𝑉 = (Vtx‘𝐺)    &   𝐸 = (Edg‘𝐺)    &   𝑁 = (𝐺 NeighbVtx 𝑋)       ((((𝐿 = ⟨1, ((𝑦 + 2) mod 5)⟩ ∧ 𝐾 = ⟨1, ((𝑦 − 2) mod 5)⟩) ∧ (𝑏 ∈ (0..^5) ∧ 𝑦 ∈ (0..^5))) ∧ {𝐾, ⟨0, 𝑏⟩} ∈ 𝐸) → ¬ {⟨0, 𝑏⟩, 𝐿} ∈ 𝐸)
 
16-Nov-2025uptrai 49802 Universal property and fully faithful functor. (Contributed by Zhi Wang, 16-Nov-2025.)
(𝜑 → ((1st𝐾)‘𝑋) = 𝑌)    &   (𝜑𝐾 ∈ ((𝐷 Full 𝐸) ∩ (𝐷 Faith 𝐸)))    &   (𝜑 → (𝐾func 𝐹) = 𝐺)    &   (𝜑 → ((𝑋(2nd𝐾)((1st𝐹)‘𝑍))‘𝑀) = 𝑁)    &   (𝜑𝑍(𝐹(𝐶 UP 𝐷)𝑋)𝑀)       (𝜑𝑍(𝐺(𝐶 UP 𝐸)𝑌)𝑁)
 
16-Nov-2025uptra 49800 Universal property and fully faithful functor. (Contributed by Zhi Wang, 16-Nov-2025.)
(𝜑 → ((1st𝐾)‘𝑋) = 𝑌)    &   (𝜑𝐾 ∈ ((𝐷 Full 𝐸) ∩ (𝐷 Faith 𝐸)))    &   (𝜑 → (𝐾func 𝐹) = 𝐺)    &   𝐵 = (Base‘𝐷)    &   (𝜑𝑋𝐵)    &   (𝜑𝐹 ∈ (𝐶 Func 𝐷))    &   (𝜑 → ((𝑋(2nd𝐾)((1st𝐹)‘𝑍))‘𝑀) = 𝑁)    &   𝐽 = (Hom ‘𝐷)    &   (𝜑𝑀 ∈ (𝑋𝐽((1st𝐹)‘𝑍)))       (𝜑 → (𝑍(𝐹(𝐶 UP 𝐷)𝑋)𝑀𝑍(𝐺(𝐶 UP 𝐸)𝑌)𝑁))
 
16-Nov-2025uptri 49799 Universal property and fully faithful functor. (Contributed by Zhi Wang, 16-Nov-2025.)
(𝜑 → (𝑅𝑋) = 𝑌)    &   (𝜑𝑅((𝐷 Full 𝐸) ∩ (𝐷 Faith 𝐸))𝑆)    &   (𝜑 → (⟨𝑅, 𝑆⟩ ∘func𝐹, 𝐺⟩) = ⟨𝐾, 𝐿⟩)    &   (𝜑 → ((𝑋𝑆(𝐹𝑍))‘𝑀) = 𝑁)    &   (𝜑𝑍(⟨𝐹, 𝐺⟩(𝐶 UP 𝐷)𝑋)𝑀)       (𝜑𝑍(⟨𝐾, 𝐿⟩(𝐶 UP 𝐸)𝑌)𝑁)

Older news:

(29-Jul-2020) Mario Carneiro presented MM0 at the CICM conference. See this Google Group post which includes a YouTube link.

(20-Jul-2020) Rohan Ridenour found 5 shorter D-proofs in our Shortest known proofs... file. In particular, he reduced *4.39 from 901 to 609 steps. A note on the Metamath Solitaire page mentions a tool that he worked with.

(19-Jul-2020) David A. Wheeler posted a video (https://youtu.be/3R27Qx69jHc) on how to (re)prove Schwabh�user 4.6 for the Metamath Proof Explorer. See also his older videos.

(19-Jul-2020) In version 0.184 of the metamath program, "verify markup" now checks that mathboxes are independent i.e. do not cross-reference each other. To turn off this check, use "/mathbox_skip"

(30-Jun-2020) In version 0.183 of the metamath program, (1) "verify markup" now has checking for (i) underscores in labels, (ii) that *ALT and *OLD theorems have both discouragement tags, and (iii) that lines don't have trailing spaces. (2) "save proof.../rewrap" no longer left-aligns $p/$a comments that contain the string "<HTML>"; see this note.

(5-Apr-2020) Glauco Siliprandi added a new proof to the 100 theorem list, e is Transcendental etransc, bringing the Metamath total to 74.

(12-Feb-2020) A bug in the 'minimize' command of metamath.exe versions 0.179 (29-Nov-2019) and 0.180 (10-Dec-2019) may incorrectly bring in the use of new axioms. Version 0.181 fixes it.

(20-Jan-2020) David A. Wheeler created a video called Walkthrough of the tutorial in mmj2. See the Google Group announcement for more details. (All of his videos are listed on the Other Metamath-Related Topics page.)

(18-Jan-2020) The FOMM 2020 talks are on youtube now. Mario Carneiro's talk is Metamath Zero, or: How to Verify a Verifier. Since they are washed out in the video, the PDF slides are available separately.

(14-Dec-2019) Glauco Siliprandi added a new proof to the 100 theorem list, Fourier series convergence fourier, bringing the Metamath total to 73.

(25-Nov-2019) Alexander van der Vekens added a new proof to the 100 theorem list, The Cayley-Hamilton Theorem cayleyhamilton, bringing the Metamath total to 72.

(25-Oct-2019) Mario Carneiro's paper "Metamath Zero: The Cartesian Theorem Prover" (submitted to CPP 2020) is now available on arXiv: https://arxiv.org/abs/1910.10703. There is a related discussion on Hacker News.

(30-Sep-2019) Mario Carneiro's talk about MM0 at ITP 2019 is available on YouTube: x86 verification from scratch (24 minutes). Google Group discussion: Metamath Zero.

(29-Sep-2019) David Wheeler created a fascinating Gource video that animates the construction of set.mm, available on YouTube: Metamath set.mm contributions viewed with Gource through 2019-09-26 (4 minutes). Google Group discussion: Gource video of set.mm contributions.

(24-Sep-2019) nLab added a page for Metamath. It mentions Stefan O'Rear's Busy Beaver work using the set.mm axiomatization (and fails to mention Mario's definitional soundness checker)

(1-Sep-2019) Xuanji Li published a Visual Studio Code extension to support metamath syntax highlighting.

(10-Aug-2019) (revised 21-Sep-2019) Version 0.178 of the metamath program has the following changes: (1) "minimize_with" will now prevent dependence on new $a statements unless the new qualifier "/allow_new_axioms" is specified. For routine usage, it is suggested that you use "minimize_with * /allow_new_axioms * /no_new_axioms_from ax-*" instead of just "minimize_with *". See "help minimize_with" and this Google Group post. Also note that the qualifier "/allow_growth" has been renamed to "/may_grow". (2) "/no_versioning" was added to "write theorem_list".

(8-Jul-2019) Jon Pennant announced the creation of a Metamath search engine. Try it and feel free to comment on it at https://groups.google.com/d/msg/metamath/cTeU5AzUksI/5GesBfDaCwAJ.

(16-May-2019) Set.mm now has a major new section on elementary geometry. This begins with definitions that implement Tarski's axioms of geometry (including concepts such as congruence and betweenness). This uses set.mm's extensible structures, making them easier to use for many circumstances. The section then connects Tarski geometry with geometry in Euclidean places. Most of the work in this section is due to Thierry Arnoux, with earlier work by Mario Carneiro and Scott Fenton. [Reported by DAW.]

(9-May-2019) We are sad to report that long-time contributor Alan Sare passed away on Mar. 23. There is some more information at the top of his mathbox (click on "Mathbox for Alan Sare") and his obituary. We extend our condolences to his family.

(10-Mar-2019) Jon Pennant and Mario Carneiro added a new proof to the 100 theorem list, Heron's formula heron, bringing the Metamath total to 71.

(22-Feb-2019) Alexander van der Vekens added a new proof to the 100 theorem list, Cramer's rule cramer, bringing the Metamath total to 70.

(6-Feb-2019) David A. Wheeler has made significant improvements and updates to the Metamath book. Any comments, errors found, or suggestions are welcome and should be turned into an issue or pull request at https://github.com/metamath/metamath-book (or sent to me if you prefer).

(26-Dec-2018) I added Appendix 8 to the MPE Home Page that cross-references new and old axiom numbers.

(20-Dec-2018) The axioms have been renumbered according to this Google Groups post.

(24-Nov-2018) Thierry Arnoux created a new page on topological structures. The page along with its SVG files are maintained on GitHub.

(11-Oct-2018) Alexander van der Vekens added a new proof to the 100 theorem list, the Friendship Theorem friendship, bringing the Metamath total to 69.

(1-Oct-2018) Naip Moro has written gramm, a Metamath proof verifier written in Antlr4/Java.

(16-Sep-2018) The definition df-riota has been simplified so that it evaluates to the empty set instead of an Undef value. This change affects a significant part of set.mm.

(2-Sep-2018) Thierry Arnoux added a new proof to the 100 theorem list, Euler's partition theorem eulerpart, bringing the Metamath total to 68.

(1-Sep-2018) The Kate editor now has Metamath syntax highlighting built in. (Communicated by Wolf Lammen.)

(15-Aug-2018) The Intuitionistic Logic Explorer now has a Most Recent Proofs page.

(4-Aug-2018) Version 0.163 of the metamath program now indicates (with an asterisk) which Table of Contents headers have associated comments.

(10-May-2018) George Szpiro, journalist and author of several books on popular mathematics such as Poincare's Prize and Numbers Rule, used a genetic algorithm to find shorter D-proofs of "*3.37" and "meredith" in our Shortest known proofs... file.

(19-Apr-2018) The EMetamath Eclipse plugin has undergone many improvements since its initial release as the change log indicates. Thierry uses it as his main proof assistant and writes, "I added support for mmj2's auto-transformations, which allows it to infer several steps when building proofs. This added a lot of comfort for writing proofs.... I can now switch back and forth between the proof assistant and editing the Metamath file.... I think no other proof assistant has this feature."

(11-Apr-2018) Benoît Jubin solved an open problem about the "Axiom of Twoness," showing that it is necessary for completeness. See item 14 on the "Open problems and miscellany" page.

(25-Mar-2018) Giovanni Mascellani has announced mmpp, a new proof editing environment for the Metamath language.

(27-Feb-2018) Bill Hale has released an app for the Apple iPad and desktop computer that allows you to browse Metamath theorems and their proofs.

(17-Jan-2018) Dylan Houlihan has kindly provided a new mirror site. He has also provided an rsync server; type "rsync uk.metamath.org::" in a bash shell to check its status (it should return "metamath metamath").

(15-Jan-2018) The metamath program, version 0.157, has been updated to implement the file inclusion conventions described in the 21-Dec-2017 entry of mmnotes.txt.

(11-Dec-2017) I added a paragraph, suggested by Gérard Lang, to the distinct variable description here.

(10-Dec-2017) Per FL's request, his mathbox will be removed from set.mm. If you wish to export any of his theorems, today's version (master commit 1024a3a) is the last one that will contain it.

(11-Nov-2017) Alan Sare updated his completeusersproof program.

(3-Oct-2017) Sean B. Palmer created a web page that runs the metamath program under emulated Linux in JavaScript. He also wrote some programs to work with our shortest known proofs of the PM propositional calculus theorems.

(28-Sep-2017) Ivan Kuckir wrote a tutorial blog entry, Introduction to Metamath, that summarizes the language syntax. (It may have been written some time ago, but I was not aware of it before.)

(26-Sep-2017) The default directory for the Metamath Proof Explorer (MPE) has been changed from the GIF version (mpegif) to the Unicode version (mpeuni) throughout the site. Please let me know if you find broken links or other issues.

(24-Sep-2017) Saveliy Skresanov added a new proof to the 100 theorem list, Ceva's Theorem cevath, bringing the Metamath total to 67.

(3-Sep-2017) Brendan Leahy added a new proof to the 100 theorem list, Area of a Circle areacirc, bringing the Metamath total to 66.

(7-Aug-2017) Mario Carneiro added a new proof to the 100 theorem list, Principle of Inclusion/Exclusion incexc, bringing the Metamath total to 65.

(1-Jul-2017) Glauco Siliprandi added a new proof to the 100 theorem list, Stirling's Formula stirling, bringing the Metamath total to 64. Related theorems include 2 versions of Wallis' formula for π (wallispi and wallispi2).

(7-May-2017) Thierry Arnoux added a new proof to the 100 theorem list, Betrand's Ballot Problem ballotth, bringing the Metamath total to 63.

(20-Apr-2017) Glauco Siliprandi added a new proof in the supplementary list on the 100 theorem list, Stone-Weierstrass Theorem stowei.

(28-Feb-2017) David Moews added a new proof to the 100 theorem list, Product of Segments of Chords chordthm, bringing the Metamath total to 62.

(1-Jan-2017) Saveliy Skresanov added a new proof to the 100 theorem list, Isosceles triangle theorem isosctr, bringing the Metamath total to 61.

(1-Jan-2017) Mario Carneiro added 2 new proofs to the 100 theorem list, L'Hôpital's Rule lhop and Taylor's Theorem taylth, bringing the Metamath total to 60.

(28-Dec-2016) David A. Wheeler is putting together a page on Metamath (specifically set.mm) conventions. Comments are welcome on the Google Group thread.

(24-Dec-2016) Mario Carneiro introduced the abbreviation "F/ x ph" (symbols: turned F, x, phi) in df-nf to represent the "effectively not free" idiom "A. x ( ph -> A. x ph )". Theorem nf2 shows a version without nested quantifiers.

(22-Dec-2016) Naip Moro has developed a Metamath database for G. Spencer-Brown's Laws of Form. You can follow the Google Group discussion here.

(20-Dec-2016) In metamath program version 0.137, 'verify markup *' now checks that ax-XXX $a matches axXXX $p when the latter exists, per the discussion at https://groups.google.com/d/msg/metamath/Vtz3CKGmXnI/Fxq3j1I_EQAJ.

(24-Nov-2016) Mingl Yuan has kindly provided a mirror site in Beijing, China. He has also provided an rsync server; type "rsync cn.metamath.org::" in a bash shell to check its status (it should return "metamath metamath").

(14-Aug-2016) All HTML pages on this site should now be mobile-friendly and pass the Mobile-Friendly Test. If you find one that does not, let me know.

(14-Aug-2016) Daniel Whalen wrote a paper describing the use of using deep learning to prove 14% of test theorems taken from set.mm: Holophrasm: a neural Automated Theorem Prover for higher-order logic. The associated program is called Holophrasm.

(14-Aug-2016) David A. Wheeler created a video called Metamath Proof Explorer: A Modern Principia Mathematica

(12-Aug-2016) A Gitter chat room has been created for Metamath.

(9-Aug-2016) Mario Carneiro wrote a Metamath proof verifier in the Scala language as part of the ongoing Metamath -> MMT import project

(9-Aug-2016) David A. Wheeler created a GitHub project called metamath-test (last execution run) to check that different verifiers both pass good databases and detect errors in defective ones.

(4-Aug-2016) Mario gave two presentations at CICM 2016.

(17-Jul-2016) Thierry Arnoux has written EMetamath, a Metamath plugin for the Eclipse IDE.

(16-Jul-2016) Mario recovered Chris Capel's collapsible proof demo.

(13-Jul-2016) FL sent me an updated version of PDF (LaTeX source) developed with Lamport's pf2 package. See the 23-Apr-2012 entry below.

(12-Jul-2016) David A. Wheeler produced a new video for mmj2 called "Creating functions in Metamath". It shows a more efficient approach than his previous recent video "Creating functions in Metamath" (old) but it can be of interest to see both approaches.

(10-Jul-2016) Metamath program version 0.132 changes the command 'show restricted' to 'show discouraged' and adds a new command, 'set discouragement'. See the mmnotes.txt entry of 11-May-2016 (updated 10-Jul-2016).

(12-Jun-2016) Dan Getz has written Metamath.jl, a Metamath proof verifier written in the Julia language.

(10-Jun-2016) If you are using metamath program versions 0.128, 0.129, or 0.130, please update to version 0.131. (In the bad versions, 'minimize_with' ignores distinct variable violations.)

(1-Jun-2016) Mario Carneiro added new proofs to the 100 theorem list, the Prime Number Theorem pnt and the Perfect Number Theorem perfect, bringing the Metamath total to 58.

(12-May-2016) Mario Carneiro added a new proof to the 100 theorem list, Dirichlet's theorem dirith, bringing the Metamath total to 56. (Added 17-May-2016) An informal exposition of the proof can be found at http://metamath-blog.blogspot.com/2016/05/dirichlets-theorem.html

(10-Mar-2016) Metamath program version 0.125 adds a new qualifier, /fast, to 'save proof'. See the mmnotes.txt entry of 10-Mar-2016.

(6-Mar-2016) The most recent set.mm has a large update converting variables from letters to symbols. See this Google Groups post.

(16-Feb-2016) Mario Carneiro's new paper "Models for Metamath" can be found here and on arxiv.org.

(6-Feb-2016) There are now 22 math symbols that can be used as variable names. See mmascii.html near the 50th table row, starting with "./\".

(29-Jan-2016) Metamath program version 0.123 adds /packed and /explicit qualifiers to 'save proof' and 'show proof'. See this Google Groups post.

(13-Jan-2016) The Unicode math symbols now provide for external CSS and use the XITS web font. Thanks to David A. Wheeler, Mario Carneiro, Cris Perdue, Jason Orendorff, and Frédéric Liné for discussions on this topic. Two commands, htmlcss and htmlfont, were added to the $t comment in set.mm and are recognized by Metamath program version 0.122.

(21-Dec-2015) Axiom ax-12, now renamed ax-12o, was replaced by a new shorter equivalent, ax-12. The equivalence is provided by theorems ax12o and ax12.

(13-Dec-2015) A new section on the theory of classes was added to the MPE Home Page. Thanks to Gérard Lang for suggesting this section and improvements to it.

(17-Nov-2015) Metamath program version 0.121: 'verify markup' was added to check comment markup consistency; see 'help verify markup'. You are encouraged to make sure 'verify markup */f' has no warnings prior to mathbox submissions. The date consistency rules are given in this Google Groups post.

(23-Sep-2015) Drahflow wrote, "I am currently working on yet another proof assistant, main reason being: I understand stuff best if I code it. If anyone is interested: https://github.com/Drahflow/Igor (but in my own programming language, so expect a complicated build process :P)"

(23-Aug-2015) Ivan Kuckir created MM Tool, a Metamath proof verifier and editor written in JavaScript that runs in a browser.

(25-Jul-2015) Axiom ax-10 is shown to be redundant by theorem ax10 , so it was removed from the predicate calculus axiom list.

(19-Jul-2015) Mario Carneiro gave two talks related to Metamath at CICM 2015, which are linked to at Other Metamath-Related Topics.

(18-Jul-2015) The metamath program has been updated to version 0.118. 'show trace_back' now has a '/to' qualifier to show the path back to a specific axiom such as ax-ac. See 'help show trace_back'.

(12-Jul-2015) I added the HOL Explorer for Mario Carneiro's hol.mm database. Although the home page needs to be filled out, the proofs can be accessed.

(11-Jul-2015) I started a new page, Other Metamath-Related Topics, that will hold miscellaneous material that doesn't fit well elsewhere (or is hard to find on this site). Suggestions welcome.

(23-Jun-2015) Metamath's mascot, Penny the cat (2007 photo), passed away today. She was 18 years old.

(21-Jun-2015) Mario Carneiro added 3 new proofs to the 100 theorem list: All Primes (1 mod 4) Equal the Sum of Two Squares 2sq, The Law of Quadratic Reciprocity lgsquad and the AM-GM theorem amgm, bringing the Metamath total to 55.

(13-Jun-2015) Stefan O'Rear's smm, written in JavaScript, can now be used as a standalone proof verifier. This brings the total number of independent Metamath verifiers to 8, written in just as many languages (C, Java. JavaScript, Python, Haskell, Lua, C#, C++).

(12-Jun-2015) David A. Wheeler added 2 new proofs to the 100 theorem list: The Law of Cosines lawcos and Ptolemy's Theorem ptolemy, bringing the Metamath total to 52.

(30-May-2015) The metamath program has been updated to version 0.117. (1) David A. Wheeler provided an enhancement to speed up the 'improve' command by 28%; see README.TXT for more information. (2) In web pages with proofs, local hyperlinks on step hypotheses no longer clip the Expression cell at the top of the page.

(9-May-2015) Stefan O'Rear has created an archive of older set.mm releases back to 1998: https://github.com/sorear/set.mm-history/.

(7-May-2015) The set.mm dated 7-May-2015 is a major revision, updated by Mario, that incorporates the new ordered pair definition df-op that was agreed upon. There were 700 changes, listed at the top of set.mm. Mathbox users are advised to update their local mathboxes. As usual, if any mathbox user has trouble incorporating these changes into their mathbox in progress, Mario or I will be glad to do them for you.

(7-May-2015) Mario has added 4 new theorems to the 100 theorem list: Ramsey's Theorem ramsey, The Solution of a Cubic cubic, The Solution of the General Quartic Equation quart, and The Birthday Problem birthday. In the Supplementary List, Stefan O'Rear added the Hilbert Basis Theorem hbt.

(28-Apr-2015) A while ago, Mario Carneiro wrote up a proof of the unambiguity of set.mm's grammar, which has now been added to this site: grammar-ambiguity.txt.

(22-Apr-2015) The metamath program has been updated to version 0.114. In MM-PA, 'show new_proof/unknown' now shows the relative offset (-1, -2,...) used for 'assign' arguments, suggested by Stefan O'Rear.

(20-Apr-2015) I retrieved an old version of the missing "Metamath 100" page from archive.org and updated it to what I think is the current state: mm_100.html. Anyone who wants to edit it can email updates to this page to me.

(19-Apr-2015) The metamath program has been updated to version 0.113, mostly with patches provided by Stefan O'Rear. (1) 'show statement %' (or any command allowing label wildcards) will select statements whose proofs were changed in current session. ('help search' will show all wildcard matching rules.) (2) 'show statement =' will select the statement being proved in MM-PA. (3) The proof date stamp is now created only if the proof is complete.

(18-Apr-2015) There is now a section for Scott Fenton's NF database: New Foundations Explorer.

(16-Apr-2015) Mario describes his recent additions to set.mm at https://groups.google.com/forum/#!topic/metamath/VAGNmzFkHCs. It include 2 new additions to the Formalizing 100 Theorems list, Leibniz' series for pi (leibpi) and the Konigsberg Bridge problem (konigsberg)

(10-Mar-2015) Mario Carneiro has written a paper, "Arithmetic in Metamath, Case Study: Bertrand's Postulate," for CICM 2015. A preprint is available at arXiv:1503.02349.

(23-Feb-2015) Scott Fenton has created a Metamath formalization of NF set theory: https://github.com/sctfn/metamath-nf/. For more information, see the Metamath Google Group posting.

(28-Jan-2015) Mario Carneiro added Wilson's Theorem (wilth), Ascending or Descending Sequences (erdsze, erdsze2), and Derangements Formula (derangfmla, subfaclim), bringing the Metamath total for Formalizing 100 Theorems to 44.

(19-Jan-2015) Mario Carneiro added Sylow's Theorem (sylow1, sylow2, sylow2b, sylow3), bringing the Metamath total for Formalizing 100 Theorems to 41.

(9-Jan-2015) The hypothesis order of mpbi*an* was changed. See the Notes entry of 9-Jan-2015.

(1-Jan-2015) Mario Carneiro has written a paper, "Conversion of HOL Light proofs into Metamath," that has been submitted to the Journal of Formalized Reasoning. A preprint is available on arxiv.org.

(22-Nov-2014) Stefan O'Rear added the Solutions to Pell's Equation (rmxycomplete) and Liouville's Theorem and the Construction of Transcendental Numbers (aaliou), bringing the Metamath total for Formalizing 100 Theorems to 40.

(22-Nov-2014) The metamath program has been updated with version 0.111. (1) Label wildcards now have a label range indicator "~" so that e.g. you can show or search all of the statements in a mathbox. See 'help search'. (Stefan O'Rear added this to the program.) (2) A qualifier was added to 'minimize_with' to prevent the use of any axioms not already used in the proof e.g. 'minimize_with * /no_new_axioms_from ax-*' will prevent the use of ax-ac if the proof doesn't already use it. See 'help minimize_with'.

(10-Oct-2014) Mario Carneiro has encoded the axiomatic basis for the HOL theorem prover into a Metamath source file, hol.mm.

(24-Sep-2014) Mario Carneiro added the Sum of the Angles of a Triangle (ang180), bringing the Metamath total for Formalizing 100 Theorems to 38.

(15-Sep-2014) Mario Carneiro added the Fundamental Theorem of Algebra (fta), bringing the Metamath total for Formalizing 100 Theorems to 37.

(3-Sep-2014) Mario Carneiro added the Fundamental Theorem of Integral Calculus (ftc1, ftc2). This brings the Metamath total for Formalizing 100 Theorems to 35. (added 14-Sep-2014) Along the way, he added the Mean Value Theorem (mvth), bringing the total to 36.

(16-Aug-2014) Mario Carneiro started a Metamath blog at http://metamath-blog.blogspot.com/.

(10-Aug-2014) Mario Carneiro added Erdős's proof of the divergence of the inverse prime series (prmrec). This brings the Metamath total for Formalizing 100 Theorems to 34.

(31-Jul-2014) Mario Carneiro added proofs for Euler's Summation of 1 + (1/2)^2 + (1/3)^2 + .... (basel) and The Factor and Remainder Theorems (facth, plyrem). This brings the Metamath total for Formalizing 100 Theorems to 33.

(16-Jul-2014) Mario Carneiro added proofs for Four Squares Theorem (4sq), Formula for the Number of Combinations (hashbc), and Divisibility by 3 Rule (3dvds). This brings the Metamath total for Formalizing 100 Theorems to 31.

(11-Jul-2014) Mario Carneiro added proofs for Divergence of the Harmonic Series (harmonic), Order of a Subgroup (lagsubg), and Lebesgue Measure and Integration (itgcl). This brings the Metamath total for Formalizing 100 Theorems to 28.

(7-Jul-2014) Mario Carneiro presented a talk, "Natural Deduction in the Metamath Proof Language," at the 6PCM conference. Slides Audio

(25-Jun-2014) In version 0.108 of the metamath program, the 'minimize_with' command is now more automated. It now considers compressed proof length; it scans the statements in forward and reverse order and chooses the best; and it avoids $d conflicts. The '/no_distinct', '/brief', and '/reverse' qualifiers are obsolete, and '/verbose' no longer lists all statements scanned but gives more details about decision criteria.

(12-Jun-2014) To improve naming uniformity, theorems about operation values now use the abbreviation "ov". For example, df-opr, opreq1, oprabval5, and oprvres are now called df-ov, oveq1, ov5, and ovres respectively.

(11-Jun-2014) Mario Carneiro finished a major revision of set.mm. His notes are under the 11-Jun-2014 entry in the Notes

(4-Jun-2014) Mario Carneiro provided instructions and screenshots for syntax highlighting for the jEdit editor for use with Metamath and mmj2 source files.

(19-May-2014) Mario Carneiro added a feature to mmj2, in the build at https://github.com/digama0/mmj2/raw/dev-build/mmj2jar/mmj2.jar, which tests all but 5 definitions in set.mm for soundness. You can turn on the test by adding
SetMMDefinitionsCheckWithExclusions,ax-*,df-bi,df-clab,df-cleq,df-clel,df-sbc
to your RunParms.txt file.

(17-May-2014) A number of labels were changed in set.mm, listed at the top of set.mm as usual. Note in particular that the heavily-used visset, elisseti, syl11anc, syl111anc were changed respectively to vex, elexi, syl2anc, syl3anc.

(16-May-2014) Scott Fenton formalized a proof for "Sum of kth powers": fsumkthpow. This brings the Metamath total for Formalizing 100 Theorems to 25.

(9-May-2014) I (Norm Megill) presented an overview of Metamath at the "Formalization of mathematics in proof assistants" workshop at the Institut Henri Poincar� in Paris. The slides for this talk are here.

(22-Jun-2014) Version 0.107 of the metamath program adds a "PART" indention level to the Statement List table of contents, adds 'show proof ... /size' to show source file bytes used, and adds 'show elapsed_time'. The last one is helpful for measuring the run time of long commands. See 'help write theorem_list', 'help show proof', and 'help show elapsed_time' for more information.

(2-May-2014) Scott Fenton formalized a proof of Sum of the Reciprocals of the Triangular Numbers: trirecip. This brings the Metamath total for Formalizing 100 Theorems to 24.

(19-Apr-2014) Scott Fenton formalized a proof of the Formula for Pythagorean Triples: pythagtrip. This brings the Metamath total for Formalizing 100 Theorems to 23.

(11-Apr-2014) David A. Wheeler produced a much-needed and well-done video for mmj2, called "Introduction to Metamath & mmj2". Thanks, David!

(15-Mar-2014) Mario Carneiro formalized a proof of Bertrand's postulate: bpos. This brings the Metamath total for Formalizing 100 Theorems to 22.

(18-Feb-2014) Mario Carneiro proved that complex number axiom ax-cnex is redundant (theorem cnex). See also Real and Complex Numbers.

(11-Feb-2014) David A. Wheeler has created a theorem compilation that tracks those theorems in Freek Wiedijk's Formalizing 100 Theorems list that have been proved in set.mm. If you find a error or omission in this list, let me know so it can be corrected. (Update 1-Mar-2014: Mario has added eulerth and bezout to the list.)

(4-Feb-2014) Mario Carneiro writes:

The latest commit on the mmj2 development branch introduced an exciting new feature, namely syntax highlighting for mmp files in the main window. (You can pick up the latest mmj2.jar at https://github.com/digama0/mmj2/blob/develop/mmj2jar/mmj2.jar .) The reason I am asking for your help at this stage is to help with design for the syntax tokenizer, which is responsible for breaking down the input into various tokens with names like "comment", "set", and "stephypref", which are then colored according to the user's preference. As users of mmj2 and metamath, what types of highlighting would be useful to you?

One limitation of the tokenizer is that since (for performance reasons) it can be started at any line in the file, highly contextual coloring, like highlighting step references that don't exist previously in the file, is difficult to do. Similarly, true parsing of the formulas using the grammar is possible but likely to be unmanageably slow. But things like checking theorem labels against the database is quite simple to do under the current setup.

That said, how can this new feature be optimized to help you when writing proofs?

(13-Jan-2014) Mathbox users: the *19.21a*, *19.23a* series of theorems have been renamed to *alrim*, *exlim*. You can update your mathbox with a global replacement of string '19.21a' with 'alrim' and '19.23a' with 'exlim'.

(5-Jan-2014) If you downloaded mmj2 in the past 3 days, please update it with the current version, which fixes a bug introduced by the recent changes that made it unable to read in most of the proofs in the textarea properly.

(4-Jan-2014) I added a list of "Allowed substitutions" under the "Distinct variable groups" list on the theorem web pages, for example axsep. This is an experimental feature and comments are welcome.

(3-Jan-2014) Version 0.102 of the metamath program produces more space-efficient compressed proofs (still compatible with the specification in Appendix B of the Metamath book) using an algorithm suggested by Mario Carneiro. See 'help save proof' in the program. Also, mmj2 now generates proofs in the new format. The new mmj2 also has a mandatory update that fixes a bug related to the new format; you must update your mmj2 copy to use it with the latest set.mm.

(23-Dec-2013) Mario Carneiro has updated many older definitions to use the maps-to notation. If you have difficulty updating your local mathbox, contact him or me for assistance.

(1-Nov-2013) 'undo' and 'redo' commands were added to the Proof Assistant in metamath program version 0.07.99. See 'help undo' in the program.

(8-Oct-2013) Today's Notes entry describes some proof repair techniques.

(5-Oct-2013) Today's Notes entry explains some recent extensible structure improvements.

(8-Sep-2013) Mario Carneiro has revised the square root and sequence generator definitions. See today's Notes entry.

(3-Aug-2013) Mario Carneiro writes: "I finally found enough time to create a GitHub repository for development at https://github.com/digama0/mmj2. A permalink to the latest version plus source (akin to mmj2.zip) is https://github.com/digama0/mmj2/zipball/, and the jar file on its own (mmj2.jar) is at https://github.com/digama0/mmj2/blob/master/mmj2jar/mmj2.jar?raw=true. Unfortunately there is no easy way to automatically generate mmj2jar.zip, but this is available as part of the zip distribution for mmj2.zip. History tracking will be handled by the repository now. Do you have old versions of the mmj2 directory? I could add them as historical commits if you do."

(18-Jun-2013) Mario Carneiro has done a major revision and cleanup of the construction of real and complex numbers. In particular, rather than using equivalence classes as is customary for the construction of the temporary rationals, he used only "reduced fractions", so that the use of the axiom of infinity is avoided until it becomes necessary for the construction of the temporary reals.

(18-May-2013) Mario Carneiro has added the ability to produce compressed proofs to mmj2. This is not an official release but can be downloaded here if you want to try it: mmj2.jar. If you have any feedback, send it to me (NM), and I will forward it to Mario. (Disclaimer: this release has not been endorsed by Mel O'Cat. If anyone has been in contact with him, please let me know.)

(29-Mar-2013) Charles Greathouse reduced the size of our PNG symbol images using the pngout program.

(8-Mar-2013) Wolf Lammen has reorganized the theorems in the "Logical negation" section of set.mm into a more orderly, less scattered arrangement.

(27-Feb-2013) Scott Fenton has done a large cleanup of set.mm, eliminating *OLD references in 144 proofs. See the Notes entry for 27-Feb-2013.

(21-Feb-2013) *ATTENTION MATHBOX USERS* The order of hypotheses of many syl* theorems were changed, per a suggestion of Mario Carneiro. You need to update your local mathbox copy for compatibility with the new set.mm, or I can do it for you if you wish. See the Notes entry for 21-Feb-2013.

(16-Feb-2013) Scott Fenton shortened the direct-from-axiom proofs of *3.1, *3.43, *4.4, *4.41, *4.5, *4.76, *4.83, *5.33, *5.35, *5.36, and meredith in the "Shortest known proofs of the propositional calculus theorems from Principia Mathematica" (pmproofs.txt).

(27-Jan-2013) Scott Fenton writes, "I've updated Ralph Levien's mmverify.py. It's now a Python 3 program, and supports compressed proofs and file inclusion statements. This adds about fifty lines to the original program. Enjoy!"

(10-Jan-2013) A new mathbox was added for Mario Carneiro, who has contributed a number of cardinality theorems without invoking the Axiom of Choice. This is nice work, and I will be using some of these (those suffixed with "NEW") to replace the existing ones in the main part of set.mm that currently invoke AC unnecessarily.

(4-Jan-2013) As mentioned in the 19-Jun-2012 item below, Eric Schmidt discovered that the complex number axioms axaddcom (now addcom) and ax0id (now addid1) are redundant (schmidt-cnaxioms.pdf, .tex). In addition, ax1id (now mulid1) can be weakened to ax1rid. Scott Fenton has now formalized this work, so that now there are 23 instead of 25 axioms for real and complex numbers in set.mm. The Axioms for Complex Numbers page has been updated with these results. An interesting part of the proof, showing how commutativity of addition follows from other laws, is in addcomi.

(27-Nov-2012) The frequently-used theorems "an1s", "an1rs", "ancom13s", "ancom31s" were renamed to "an12s", "an32s", "an13s", "an31s" to conform to the convention for an12 etc.

(4-Nov-2012) The changes proposed in the Notes, renaming Grp to GrpOp etc., have been incorporated into set.mm. See the list of changes at the top of set.mm. If you want me to update your mathbox with these changes, send it to me along with the version of set.mm that it works with.

(20-Sep-2012) Mel O'Cat updated https://us.metamath.org/ocat/mmj2/TESTmmj2jar.zip. See the README.TXT for a description of the new features.

(21-Aug-2012) Mel O'Cat has uploaded SearchOptionsMockup9.zip, a mockup for the new search screen in mmj2. See the README.txt file for instructions. He will welcome feedback via x178g243 at yahoo.com.

(19-Jun-2012) Eric Schmidt has discovered that in our axioms for complex numbers, axaddcom and ax0id are redundant. (At some point these need to be formalized for set.mm.) He has written up these and some other nice results, including some independence results for the axioms, in schmidt-cnaxioms.pdf (schmidt-cnaxioms.tex).

(23-Apr-2012) Frédéric Liné sent me a PDF (LaTeX source) developed with Lamport's pf2 package. He wrote: "I think it works well with Metamath since the proofs are in a tree form. I use it to have a sketch of a proof. I get this way a better understanding of the proof and I can cut down its size. For instance, inpreima5 was reduced by 50% when I wrote the corresponding proof with pf2."

(5-Mar-2012) I added links to Wikiproofs and its recent changes in the "Wikis" list at the top of this page.

(12-Jan-2012) Thanks to William Hoza who sent me a ZFC T-shirt, and thanks to the ZFC models (courtesy of the Inaccessible Cardinals agency).

FrontBackDetail
ZFC T-shirt front ZFC T-shirt back ZFC T-shirt detail

(24-Nov-2011) In metamath program version 0.07.71, the 'minimize_with' command by default now scans from bottom to top instead of top to bottom, since empirically this often (although not always) results in a shorter proof. A top to bottom scan can be specified with a new qualifier '/reverse'. You can try both methods (starting from the same original proof, of course) and pick the shorter proof.

(15-Oct-2011) From Mel O'Cat:
I just uploaded mmj2.zip containing the 1-Nov-2011 (20111101) release: https://us.metamath.org/ocat/mmj2/mmj2.zip https://us.metamath.org/ocat/mmj2/mmj2.md5
A few last minute tweaks:
1. I now bless double-click starting of mmj2.bat (MacMMJ2.command in Mac OS-X)! See mmj2\QuickStart.html
2. Much improved support of Mac OS-X systems. See mmj2\QuickStart.html
3. I tweaked the Command Line Argument Options report to
a) print every time;
b) print as much as possible even if there are errors in the command line arguments -- and the last line printed corresponds to the argument in error;
c) removed Y/N argument on the command line to enable/disable the report. this simplifies things.
4) Documentation revised, including the PATutorial.
See CHGLOG.TXT for list of all changes. Good luck. And thanks for all of your help!

(15-Sep-2011) MATHBOX USERS: I made a large number of label name changes to set.mm to improve naming consistency. There is a script at the top of the current set.mm that you can use to update your mathbox or older set.mm. Or if you wish, I can do the update on your next mathbox submission - in that case, please include a .zip of the set.mm version you used.

(30-Aug-2011) Scott Fenton shortened the direct-from-axiom proofs of *3.33, *3.45, *4.36, and meredith in the "Shortest known proofs of the propositional calculus theorems from Principia Mathematica" (pmproofs.txt).

(21-Aug-2011) A post on reddit generated 60,000 hits (and a TOS violation notice from my provider...),

(18-Aug-2011) The Metamath Google Group has a discussion of my canonical conjunctions proposal. Any feedback directly to me (Norm Megill) is also welcome.

(4-Jul-2011) John Baker has provided (metamath_kindle.zip) "a modified version of [the] metamath.tex [Metamath] book source that is formatted for the Kindle. If you compile the document the resulting PDF can be loaded into into a Kindle and easily read." (Update: the PDF file is now included also.)

(3-Jul-2011) Nested 'submit' calls are now allowed, in metamath program version 0.07.68. Thus you can create or modify a command file (script) from within a command file then 'submit' it. While 'submit' cannot pass arguments (nor are there plans to add this feature), you can 'substitute' strings in the 'submit' target file before calling it in order to emulate this.

(28-Jun-2011)The metamath program version 0.07.64 adds the '/include_mathboxes' qualifier to 'minimize_with'; by default, 'minimize_with *' will now skip checking user mathboxes. Since mathboxes should be independent from each other, this will help prevent accidental cross-"contamination". Also, '/rewrap' was added to 'write source' to automatically wrap $a and $p comments so as to conform to the current formatting conventions used in set.mm. This means you no longer have to be concerned about line length < 80 etc.

(19-Jun-2011) ATTENTION MATHBOX USERS: The wff variables et, ze, si, and rh are now global. This change was made primarily to resolve some conflicts between mathboxes, but it will also let you avoid having to constantly redeclare these locally in the future. Unfortunately, this change can affect the $f hypothesis order, which can cause proofs referencing theorems that use these variables to fail. All mathbox proofs currently in set.mm have been corrected for this, and you should refresh your local copy for further development of your mathbox. You can correct your proofs that are not in set.mm as follows. Only the proofs that fail under the current set.mm (using version 0.07.62 or later of the metamath program) need to be modified.

To fix a proof that references earlier theorems using et, ze, si, and rh, do the following (using a hypothetical theorem 'abc' as an example): 'prove abc' (ignore error messages), 'delete floating', 'initialize all', 'unify all/interactive', 'improve all', 'save new_proof/compressed'. If your proof uses dummy variables, these must be reassigned manually.

To fix a proof that uses et, ze, si, and rh as local variables, make sure the proof is saved in 'compressed' format. Then delete the local declarations ($v and $f statements) and follow the same steps above to correct the proof.

I apologize for the inconvenience. If you have trouble fixing your proofs, you can contact me for assistance.

Note: Versions of the metamath program before 0.07.62 did not flag an error when global variables were redeclared locally, as it should have according to the spec. This caused these spec violations to go unnoticed in some older set.mm versions. The new error messages are in fact just informational and can be ignored when working with older set.mm versions.

(7-Jun-2011) The metamath program version 0.07.60 fixes a bug with the 'minimize_with' command found by Andrew Salmon.

(12-May-2010) Andrew Salmon shortened many proofs, shown above. For comparison, I have temporarily kept the old version, which is suffixed with OLD, such as oridmOLD for oridm.

(9-Dec-2010) Eric Schmidt has written a Metamath proof verifier in C++, called checkmm.cpp.

(3-Oct-2010) The following changes were made to the tokens in set.mm. The subset and proper subset symbol changes to C_ and C. were made to prevent defeating the parenthesis matching in Emacs. Other changes were made so that all letters a-z and A-Z are now available for variable names. One-letter constants such as _V, _e, and _i are now shown on the web pages with Roman instead of italic font, to disambiguate italic variable names. The new convention is that a prefix of _ indicates Roman font and a prefix of ~ indicates a script (curly) font. Thanks to Stefan Allan and Frédéric Liné for discussions leading to this change.

OldNewDescription
C. _C binomial coefficient
E _E epsilon relation
e _e Euler's constant
I _I identity relation
i _i imaginary unit
V _V universal class
(_ C_ subset
(. C. proper subset
P~ ~P power class
H~ ~H Hilbert space

(25-Sep-2010) The metamath program (version 0.07.54) now implements the current Metamath spec, so footnote 2 on p. 92 of the Metamath book can be ignored.

(24-Sep-2010) The metamath program (version 0.07.53) fixes bug 2106, reported by Michal Burger.

(14-Sep-2010) The metamath program (version 0.07.52) has a revamped LaTeX output with 'show statement xxx /tex', which produces the combined statement, description, and proof similar to the web page generation. Also, 'show proof xxx /lemmon/renumber' now matches the web page step numbers. ('show proof xxx/renumber' still has the indented form conforming to the actual RPN proof, with slightly different numbering.)

(9-Sep-2010) The metamath program (version 0.07.51) was updated with a modification by Stefan Allan that adds hyperlinks the the Ref column of proofs.

(12-Jun-2010) Scott Fenton contributed a D-proof (directly from axioms) of Meredith's single axiom (see the end of pmproofs.txt). A description of Meredith's axiom can be found in theorem meredith.

(11-Jun-2010) A new Metamath mirror was added in Austria, courtesy of Kinder-Enduro.

(28-Feb-2010) Raph Levien's Ghilbert project now has a new Ghilbert site and a Google Group.

(26-Jan-2010) Dmitri Vlasov writes, "I admire the simplicity and power of the metamath language, but still I see its great disadvantage - the proofs in metamath are completely non-manageable by humans without proof assistants. Therefore I decided to develop another language, which would be a higher-level superstructure language towards metamath, and which will support human-readable/writable proofs directly, without proof assistants. I call this language mdl (acronym for 'mathematics development language')." The latest version of Dmitri's translators from metamath to mdl and back can be downloaded from http://mathdevlanguage.sourceforge.net/. Currently only Linux is supported, but Dmitri says is should not be difficult to port it to other platforms that have a g++ compiler.

(11-Sep-2009) The metamath program (version 0.07.48) has been updated to enforce the whitespace requirement of the current spec.

(10-Sep-2009) Matthew Leitch has written an nice article, "How to write mathematics clearly", that briefly mentions Metamath. Overall it makes some excellent points. (I have written to him about a few things I disagree with.)

(28-May-2009) AsteroidMeta is back on-line. Note the URL change.

(12-May-2009) Charles Greathouse wrote a Greasemonkey script to reformat the axiom list on Metamath web site proof pages. This is a beta version; he will appreciate feedback.

(11-May-2009) Stefan Allan modified the metamath program to add the command "show statement xxx /mnemonics", which produces the output file Mnemosyne.txt for use with the Mnemosyne project. The current Metamath program download incorporates this command. Instructions: Create the file mnemosyne.txt with e.g. "show statement ax-* /mnemonics". In the Mnemosyne program, load the file by choosing File->Import then file format "Q and A on separate lines". Notes: (1) Don't try to load all of set.mm, it will crash the program due to a bug in Mnemosyne. (2) On my computer, the arrows in ax-1 don't display. Stefan reports that they do on his computer. (Both are Windows XP.)

(3-May-2009) Steven Baldasty wrote a Metamath syntax highlighting file for the gedit editor. Screenshot.

(1-May-2009) Users on a gaming forum discuss our 2+2=4 proof. Notable comments include "Ew math!" and "Whoever wrote this has absolutely no life."

(12-Mar-2009) Chris Capel has created a Javascript theorem viewer demo that (1) shows substitutions and (2) allows expanding and collapsing proof steps. You are invited to take a look and give him feedback at his Metablog.

(28-Feb-2009) Chris Capel has written a Metamath proof verifier in C#, available at http://pdf23ds.net/bzr/MathEditor/Verifier/Verifier.cs and weighing in at 550 lines. Also, that same URL without the file on it is a Bazaar repository.

(2-Dec-2008) A new section was added to the Deduction Theorem page, called Logic, Metalogic, Metametalogic, and Metametametalogic.

(24-Aug-2008) (From ocat): The 1-Aug-2008 version of mmj2 is ready (mmj2.zip), size = 1,534,041 bytes. This version contains the Theorem Loader enhancement which provides a "sandboxing" capability for user theorems and dynamic update of new theorems to the Metamath database already loaded in memory by mmj2. Also, the new "mmj2 Service" feature enables calling mmj2 as a subroutine, or having mmj2 call your program, and provides access to the mmj2 data structures and objects loaded in memory (i.e. get started writing those Jython programs!) See also mmj2 on AsteroidMeta.

(23-May-2008) Gérard Lang pointed me to Bob Solovay's note on AC and strongly inaccessible cardinals. One of the eventual goals for set.mm is to prove the Axiom of Choice from Grothendieck's axiom, like Mizar does, and this note may be helpful for anyone wanting to attempt that. Separately, I also came across a history of the size reduction of grothprim (viewable in Firefox and some versions of Internet Explorer).

(14-Apr-2008) A "/join" qualifier was added to the "search" command in the metamath program (version 0.07.37). This qualifier will join the $e hypotheses to the $a or $p for searching, so that math tokens in the $e's can be matched as well. For example, "search *com* +v" produces no results, but "search *com* +v /join" yields commutative laws involving vector addition. Thanks to Stefan Allan for suggesting this idea.

(8-Apr-2008) The 8,000th theorem, hlrel, was added to the Metamath Proof Explorer part of the database.

(2-Mar-2008) I added a small section to the end of the Deduction Theorem page.

(17-Feb-2008) ocat has uploaded the "1-Mar-2008" mmj2: mmj2.zip. See the description.

(16-Jan-2008) O'Cat has written mmj2 Proof Assistant Quick Tips.

(30-Dec-2007) "How to build a library of formalized mathematics".

(22-Dec-2007) The Metamath Proof Explorer was included in the top 30 science resources for 2007 by the University at Albany Science Library.

(17-Dec-2007) Metamath's Wikipedia entry says, "This article may require cleanup to meet Wikipedia's quality standards" (see its discussion page). Volunteers are welcome. :) (In the interest of objectivity, I don't edit this entry.)

(20-Nov-2007) Jeff Hoffman created nicod.mm and posted it to the Google Metamath Group.

(19-Nov-2007) Reinder Verlinde suggested adding tooltips to the hyperlinks on the proof pages, which I did for proof step hyperlinks. Discussion.

(5-Nov-2007) A Usenet challenge. :)

(4-Aug-2007) I added a "Request for comments on proposed 'maps to' notation" at the bottom of the AsteroidMeta set.mm discussion page.

(21-Jun-2007) A preprint (PDF file) describing Kurt Maes' axiom of choice with 5 quantifiers, proved in set.mm as ackm.

(20-Jun-2007) The 7,000th theorem, ifpr, was added to the Metamath Proof Explorer part of the database.

(29-Apr-2007) Blog mentions of Metamath: here and here.

(21-Mar-2007) Paul Chapman is working on a new proof browser, which has highlighting that allows you to see the referenced theorem before and after the substitution was made. Here is a screenshot of theorem 0nn0 and a screenshot of theorem 2p2e4.

(15-Mar-2007) A picture of Penny the cat guarding the us.metamath.org server and making the rounds.

(16-Feb-2007) For convenience, the program "drule.c" (pronounced "D-rule", not "drool") mentioned in pmproofs.txt can now be downloaded (drule.c) without having to ask me for it. The same disclaimer applies: even though this program works and has no known bugs, it was not intended for general release. Read the comments at the top of the program for instructions.

(28-Jan-2007) Jason Orendorff set up a new mailing list for Metamath: http://groups.google.com/group/metamath.

(20-Jan-2007) Bob Solovay provided a revised version of his Metamath database for Peano arithmetic, peano.mm.

(2-Jan-2007) Raph Levien has set up a wiki called Barghest for the Ghilbert language and software.

(26-Dec-2006) I posted an explanation of theorem ecoprass on Usenet.

(2-Dec-2006) Berislav Žarnić translated the Metamath Solitaire applet to Croatian.

(26-Nov-2006) Dan Getz has created an RSS feed for new theorems as they appear on this page.

(6-Nov-2006) The first 3 paragraphs in Appendix 2: Note on the Axioms were rewritten to clarify the connection between Tarski's axiom system and Metamath.

(31-Oct-2006) ocat asked for a do-over due to a bug in mmj2 -- if you downloaded the mmj2.zip version dated 10/28/2006, then download the new version dated 10/30.

(29-Oct-2006) ocat has announced that the long-awaited 1-Nov-2006 release of mmj2 is available now.
     The new "Unify+Get Hints" is quite useful, and any proof can be generated as follows. With "?" in the Hyp field and Ref field blank, select "Unify+Get Hints". Select a hint from the list and put it in the Ref field. Edit any $n dummy variables to become the desired wffs. Rinse and repeat for the new proof steps generated, until the proof is done.
     The new tutorial, mmj2PATutorial.bat, explains this in detail. One way to reduce or avoid dummy $n's is to fill in the Hyp field with a comma-separated list of any known hypothesis matches to earlier proof steps, keeping a "?" in the list to indicate that the remaining hypotheses are unknown. Then "Unify+Get Hints" can be applied. The tutorial page \mmj2\data\mmp\PATutorial\Page405.mmp has an example.
     Don't forget that the eimm export/import program lets you go back and forth between the mmj2 and the metamath program proof assistants, without exiting from either one, to exploit the best features of each as required.

(21-Oct-2006) Martin Kiselkov has written a Metamath proof verifier in the Lua scripting language, called verify.lua. While it is not practical as an everyday verifier - he writes that it takes about 40 minutes to verify set.mm on a a Pentium 4 - it could be useful to someone learning Lua or Metamath, and importantly it provides another independent way of verifying the correctness of Metamath proofs. His code looks like it is nicely structured and very readable. He is currently working on a faster version in C++.

(19-Oct-2006) New AsteroidMeta page by Raph, Distinctors_vs_binders.

(13-Oct-2006) I put a simple Metamath browser on my PDA (Palm Tungsten E) so that I don't have to lug around my laptop. Here is a screenshot. It isn't polished, but I'll provide the file + instructions if anyone wants it.

(3-Oct-2006) A blog entry, Principia for Reverse Mathematics.

(28-Sep-2006) A blog entry, Metamath responds.

(26-Sep-2006) A blog entry, Metamath isn't hygienic.

(11-Aug-2006) A blog entry, Metamath and the Peano Induction Axiom.

(26-Jul-2006) A new open problem in predicate calculus was added.

(18-Jun-2006) The 6,000th theorem, mt4d, was added to the Metamath Proof Explorer part of the database.

(9-May-2006) Luca Ciciriello has upgraded the t2mf program, which is a C program used to create the MIDI files on the Metamath Music Page, so that it works on MacOS X. This is a nice accomplishment, since the original program was written before C was standardized by ANSI and will not compile on modern compilers.
      Unfortunately, the original program source states no copyright terms. The main author, Tim Thompson, has kindly agreed to release his code to public domain, but two other authors have also contributed to the code, and so far I have been unable to contact them for copyright clearance. Therefore I cannot offer the MacOS X version for public download on this site until this is resolved. Update 10-May-2006: Another author, M. Czeiszperger, has released his contribution to public domain.
      If you are interested in Luca's modified source code, please contact me directly.

(18-Apr-2006) Incomplete proofs in progress can now be interchanged between the Metamath program's CLI Proof Assistant and mmj2's GUI Proof Assistant, using a new export-import program called eimm. This can be done without exiting either proof assistant, so that the strengths of each approach can be exploited during proof development. See "Use Case 5a" and "Use Case 5b" at mmj2ProofAssistantFeedback.

(28-Mar-2006) Scott Fenton updated his second version of Metamath Solitaire (the one that uses external axioms). He writes: "I've switched to making it a standalone program, as it seems silly to have an applet that can't be run in a web browser. Check the README file for further info." The download is mmsol-0.5.tar.gz.

(27-Mar-2006) Scott Fenton has updated the Metamath Solitaire Java applet to Java 1.5: (1) QSort has been stripped out: its functionality is in the Collections class that Sun ships; (2) all Vectors have been replaced by ArrayLists; (3) generic types have been tossed in wherever they fit: this cuts back drastically on casting; and (4) any warnings Eclipse spouted out have been dealt with. I haven't yet updated it officially, because I don't know if it will work with Microsoft's JVM in older versions of Internet Explorer. The current official version is compiled with Java 1.3, because it won't work with Microsoft's JVM if it is compiled with Java 1.4. (As distasteful as that seems, I will get complaints from users if it doesn't work with Microsoft's JVM.) If anyone can verify that Scott's new version runs on Microsoft's JVM, I would be grateful. Scott's new version is mm.java-1.5.gz; after uncompressing it, rename it to mm.java, use it to replace the existing mm.java file in the Metamath Solitaire download, and recompile according to instructions in the mm.java comments.
      Scott has also created a second version, mmsol-0.2.tar.gz, that reads the axioms from ASCII files, instead of having the axioms hard-coded in the program. This can be very useful if you want to play with custom axioms, and you can also add a collection of starting theorems as "axioms" to work from. However, it must be run from the local directory with appletviewer, since the default Java security model doesn't allow reading files from a browser. It works with the JDK 5 Update 6 Java download.
To compile (from Windows Command Prompt): C:\Program Files\Java\jdk1.5.0_06\bin\javac.exe mm.java
To run (from Windows Command Prompt): C:\Program Files\Java\jdk1.5.0_06\bin\appletviewer.exe mms.html

(21-Jan-2006) Juha Arpiainen proved the independence of axiom ax-11 from the others. This was published as an open problem in my 1995 paper (Remark 9.5 on PDF page 17). See Item 9a on the Workshop Miscellany for his seven-line proof. See also the Asteroid Meta metamathMathQuestions page under the heading "Axiom of variable substitution: ax-11". Congratulations, Juha!

(20-Oct-2005) Juha Arpiainen is working on a proof verifier in Common Lisp called Bourbaki. Its proof language has its roots in Metamath, with the goal of providing a more powerful syntax and definitional soundness checking. See its documentation and related discussion.

(17-Oct-2005) Marnix Klooster has written a Metamath proof verifier in Haskell, called Hmm. Also see his Announcement. The complete program (Hmm.hs, HmmImpl.hs, and HmmVerify.hs) has only 444 lines of code, excluding comments and blank lines. It verifies compressed as well as regular proofs; moreover, it transparently verifies both per-spec compressed proofs and the flawed format he uncovered (see comment below of 16-Oct-05).

(16-Oct-2005) Marnix Klooster noticed that for large proofs, the compressed proof format did not match the spec in the book. His algorithm to correct the problem has been put into the Metamath program (version 0.07.6). The program still verifies older proofs with the incorrect format, but the user will be nagged to update them with 'save proof *'. In set.mm, 285 out of 6376 proofs are affected. (The incorrect format did not affect proof correctness or verification, since the compression and decompression algorithms matched each other.)

(13-Sep-2005) Scott Fenton found an interesting axiom, ax46, which could be used to replace both ax-4 and ax-6.

(29-Jul-2005) Metamath was selected as site of the week by American Scientist Online.

(8-Jul-2005) Roy Longton has contributed 53 new theorems to the Quantum Logic Explorer. You can see them in the Theorem List starting at lem3.3.3lem1. He writes, "If you want, you can post an open challenge to see if anyone can find shorter proofs of the theorems I submitted."

(10-May-2005) A Usenet post I posted about the infinite prime proof; another one about indexed unions.

(3-May-2005) The theorem divexpt is the 5,000th theorem added to the Metamath Proof Explorer database.

(12-Apr-2005) Raph Levien solved the open problem in item 16 on the Workshop Miscellany page and as a corollary proved that axiom ax-9 is independent from the other axioms of predicate calculus and equality. This is the first such independence proof so far; a goal is to prove all of them independent (or to derive any redundant ones from the others).

(8-Mar-2005) I added a paragraph above our complex number axioms table, summarizing the construction and indicating where Dedekind cuts are defined. Thanks to Andrew Buhr for comments on this.

(16-Feb-2005) The Metamath Music Page is mentioned as a reference or resource for a university course called Math, Mind, and Music. .

(28-Jan-2005) Steven Cullinane parodied the Metamath Music Page in his blog.

(18-Jan-2005) Waldek Hebisch upgraded the Metamath program to run on the AMD64 64-bit processor.

(17-Jan-2005) A symbol list summary was added to the beginning of the Hilbert Space Explorer Home Page. Thanks to Mladen Pavicic for suggesting this.

(6-Jan-2005) Someone assembled an amazon.com list of some of the books in the Metamath Proof Explorer Bibliography.

(4-Jan-2005) The definition of ordinal exponentiation was decided on after this Usenet discussion.

(19-Dec-2004) A bit of trivia: my Erdös number is 2, as you can see from this list.

(20-Oct-2004) I started this Usenet discussion about the "reals are uncountable" proof (127 comments; last one on Nov. 12).

(12-Oct-2004) gch-kn shows the equivalence of the Generalized Continuum Hypothesis and Prof. Nambiar's Axiom of Combinatorial Sets. This proof answers his Open Problem 2 (PDF file).

(5-Aug-2004) I gave a talk on "Hilbert Lattice Equations" at the Argonne workshop.

(25-Jul-2004) The theorem nthruz is the 4,000th theorem added to the Metamath Proof Explorer database.

(27-May-2004) Josiah Burroughs contributed the proofs u1lemn1b, u1lem3var1, oi3oa3lem1, and oi3oa3 to the Quantum Logic Explorer database ql.mm.

(23-May-2004) Some minor typos found by Josh Purinton were corrected in the Metamath book. In addition, Josh simplified the definition of the closure of a pre-statement of a formal system in Appendix C.

(5-May-2004) Gregory Bush has found shorter proofs for 67 of the 193 propositional calculus theorems listed in Principia Mathematica, thus establishing 67 new records. (This was challenge #4 on the open problems page.)


  Copyright terms: Public domain W3C HTML validation [external]