HomeHome Intuitionistic Logic Explorer
Theorem List (p. 109 of 111)
< Previous  Next >
Bad symbols? Try the
GIF version.

Mirrors  >  Metamath Home Page  >  ILE Home Page  >  Theorem List Contents  >  Recent Proofs       This page: Page List

Theorem List for Intuitionistic Logic Explorer - 10801-10900   *Has distinct variable group(s)
Theoremqnumgt0 10801 A rational is positive iff its canonical numerator is. (Contributed by Stefan O'Rear, 15-Sep-2014.)
(𝐴 ∈ ℚ → (0 < 𝐴 ↔ 0 < (numer‘𝐴)))
Theoremqgt0numnn 10802 A rational is positive iff its canonical numerator is a positive integer. (Contributed by Stefan O'Rear, 15-Sep-2014.)
((𝐴 ∈ ℚ ∧ 0 < 𝐴) → (numer‘𝐴) ∈ ℕ)
Theoremnn0gcdsq 10803 Squaring commutes with GCD, in particular two coprime numbers have coprime squares. (Contributed by Stefan O'Rear, 15-Sep-2014.)
((𝐴 ∈ ℕ0𝐵 ∈ ℕ0) → ((𝐴 gcd 𝐵)↑2) = ((𝐴↑2) gcd (𝐵↑2)))
Theoremzgcdsq 10804 nn0gcdsq 10803 extended to integers by symmetry. (Contributed by Stefan O'Rear, 15-Sep-2014.)
((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ) → ((𝐴 gcd 𝐵)↑2) = ((𝐴↑2) gcd (𝐵↑2)))
Theoremnumdensq 10805 Squaring a rational squares its canonical components. (Contributed by Stefan O'Rear, 15-Sep-2014.)
(𝐴 ∈ ℚ → ((numer‘(𝐴↑2)) = ((numer‘𝐴)↑2) ∧ (denom‘(𝐴↑2)) = ((denom‘𝐴)↑2)))
Theoremnumsq 10806 Square commutes with canonical numerator. (Contributed by Stefan O'Rear, 15-Sep-2014.)
(𝐴 ∈ ℚ → (numer‘(𝐴↑2)) = ((numer‘𝐴)↑2))
Theoremdensq 10807 Square commutes with canonical denominator. (Contributed by Stefan O'Rear, 15-Sep-2014.)
(𝐴 ∈ ℚ → (denom‘(𝐴↑2)) = ((denom‘𝐴)↑2))
Theoremqden1elz 10808 A rational is an integer iff it has denominator 1. (Contributed by Stefan O'Rear, 15-Sep-2014.)
(𝐴 ∈ ℚ → ((denom‘𝐴) = 1 ↔ 𝐴 ∈ ℤ))
Theoremnn0sqrtelqelz 10809 If a nonnegative integer has a rational square root, that root must be an integer. (Contributed by Jim Kingdon, 24-May-2022.)
((𝐴 ∈ ℕ0 ∧ (√‘𝐴) ∈ ℚ) → (√‘𝐴) ∈ ℤ)
Theoremnonsq 10810 Any integer strictly between two adjacent squares has a non-rational square root. (Contributed by Stefan O'Rear, 15-Sep-2014.)
(((𝐴 ∈ ℕ0𝐵 ∈ ℕ0) ∧ ((𝐵↑2) < 𝐴𝐴 < ((𝐵 + 1)↑2))) → ¬ (√‘𝐴) ∈ ℚ)
4.2.5  Euler's theorem
Syntaxcphi 10811 Extend class notation with the Euler phi function.
class ϕ
Definitiondf-phi 10812* Define the Euler phi function (also called _ Euler totient function_), which counts the number of integers less than 𝑛 and coprime to it, see definition in [ApostolNT] p. 25. (Contributed by Mario Carneiro, 23-Feb-2014.)
ϕ = (𝑛 ∈ ℕ ↦ (♯‘{𝑥 ∈ (1...𝑛) ∣ (𝑥 gcd 𝑛) = 1}))
Theoremphivalfi 10813* Finiteness of an expression used to define the Euler ϕ function. (Contributed by Jim Kingon, 28-May-2022.)
(𝑁 ∈ ℕ → {𝑥 ∈ (1...𝑁) ∣ (𝑥 gcd 𝑁) = 1} ∈ Fin)
Theoremphival 10814* Value of the Euler ϕ function. (Contributed by Mario Carneiro, 23-Feb-2014.)
(𝑁 ∈ ℕ → (ϕ‘𝑁) = (♯‘{𝑥 ∈ (1...𝑁) ∣ (𝑥 gcd 𝑁) = 1}))
Theoremphicl2 10815 Bounds and closure for the value of the Euler ϕ function. (Contributed by Mario Carneiro, 23-Feb-2014.)
(𝑁 ∈ ℕ → (ϕ‘𝑁) ∈ (1...𝑁))
Theoremphicl 10816 Closure for the value of the Euler ϕ function. (Contributed by Mario Carneiro, 28-Feb-2014.)
(𝑁 ∈ ℕ → (ϕ‘𝑁) ∈ ℕ)
Theoremphibndlem 10817* Lemma for phibnd 10818. (Contributed by Mario Carneiro, 23-Feb-2014.)
(𝑁 ∈ (ℤ‘2) → {𝑥 ∈ (1...𝑁) ∣ (𝑥 gcd 𝑁) = 1} ⊆ (1...(𝑁 − 1)))
Theoremphibnd 10818 A slightly tighter bound on the value of the Euler ϕ function. (Contributed by Mario Carneiro, 23-Feb-2014.)
(𝑁 ∈ (ℤ‘2) → (ϕ‘𝑁) ≤ (𝑁 − 1))
Theoremphicld 10819 Closure for the value of the Euler ϕ function. (Contributed by Mario Carneiro, 29-May-2016.)
(𝜑𝑁 ∈ ℕ)       (𝜑 → (ϕ‘𝑁) ∈ ℕ)
Theoremphi1 10820 Value of the Euler ϕ function at 1. (Contributed by Mario Carneiro, 23-Feb-2014.)
(ϕ‘1) = 1
Theoremdfphi2 10821* Alternate definition of the Euler ϕ function. (Contributed by Mario Carneiro, 23-Feb-2014.) (Revised by Mario Carneiro, 2-May-2016.)
(𝑁 ∈ ℕ → (ϕ‘𝑁) = (♯‘{𝑥 ∈ (0..^𝑁) ∣ (𝑥 gcd 𝑁) = 1}))
Theoremhashdvds 10822* The number of numbers in a given residue class in a finite set of integers. (Contributed by Mario Carneiro, 12-Mar-2014.) (Proof shortened by Mario Carneiro, 7-Jun-2016.)
(𝜑𝑁 ∈ ℕ)    &   (𝜑𝐴 ∈ ℤ)    &   (𝜑𝐵 ∈ (ℤ‘(𝐴 − 1)))    &   (𝜑𝐶 ∈ ℤ)       (𝜑 → (♯‘{𝑥 ∈ (𝐴...𝐵) ∣ 𝑁 ∥ (𝑥𝐶)}) = ((⌊‘((𝐵𝐶) / 𝑁)) − (⌊‘(((𝐴 − 1) − 𝐶) / 𝑁))))
Theoremphiprmpw 10823 Value of the Euler ϕ function at a prime power. Theorem 2.5(a) in [ApostolNT] p. 28. (Contributed by Mario Carneiro, 24-Feb-2014.)
((𝑃 ∈ ℙ ∧ 𝐾 ∈ ℕ) → (ϕ‘(𝑃𝐾)) = ((𝑃↑(𝐾 − 1)) · (𝑃 − 1)))
Theoremphiprm 10824 Value of the Euler ϕ function at a prime. (Contributed by Mario Carneiro, 28-Feb-2014.)
(𝑃 ∈ ℙ → (ϕ‘𝑃) = (𝑃 − 1))
Theoremcrth 10825* The Chinese Remainder Theorem: the function that maps 𝑥 to its remainder classes mod 𝑀 and mod 𝑁 is 1-1 and onto when 𝑀 and 𝑁 are coprime. (Contributed by Mario Carneiro, 24-Feb-2014.) (Proof shortened by Mario Carneiro, 2-May-2016.)
𝑆 = (0..^(𝑀 · 𝑁))    &   𝑇 = ((0..^𝑀) × (0..^𝑁))    &   𝐹 = (𝑥𝑆 ↦ ⟨(𝑥 mod 𝑀), (𝑥 mod 𝑁)⟩)    &   (𝜑 → (𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ (𝑀 gcd 𝑁) = 1))       (𝜑𝐹:𝑆1-1-onto𝑇)
Theoremphimullem 10826* Lemma for phimul 10827. (Contributed by Mario Carneiro, 24-Feb-2014.)
𝑆 = (0..^(𝑀 · 𝑁))    &   𝑇 = ((0..^𝑀) × (0..^𝑁))    &   𝐹 = (𝑥𝑆 ↦ ⟨(𝑥 mod 𝑀), (𝑥 mod 𝑁)⟩)    &   (𝜑 → (𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ (𝑀 gcd 𝑁) = 1))    &   𝑈 = {𝑦 ∈ (0..^𝑀) ∣ (𝑦 gcd 𝑀) = 1}    &   𝑉 = {𝑦 ∈ (0..^𝑁) ∣ (𝑦 gcd 𝑁) = 1}    &   𝑊 = {𝑦𝑆 ∣ (𝑦 gcd (𝑀 · 𝑁)) = 1}       (𝜑 → (ϕ‘(𝑀 · 𝑁)) = ((ϕ‘𝑀) · (ϕ‘𝑁)))
Theoremphimul 10827 The Euler ϕ function is a multiplicative function, meaning that it distributes over multiplication at relatively prime arguments. Theorem 2.5(c) in [ApostolNT] p. 28. (Contributed by Mario Carneiro, 24-Feb-2014.)
((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ (𝑀 gcd 𝑁) = 1) → (ϕ‘(𝑀 · 𝑁)) = ((ϕ‘𝑀) · (ϕ‘𝑁)))
Theoremhashgcdlem 10828* A correspondence between elements of specific GCD and relative primes in a smaller ring. (Contributed by Stefan O'Rear, 12-Sep-2015.)
𝐴 = {𝑦 ∈ (0..^(𝑀 / 𝑁)) ∣ (𝑦 gcd (𝑀 / 𝑁)) = 1}    &   𝐵 = {𝑧 ∈ (0..^𝑀) ∣ (𝑧 gcd 𝑀) = 𝑁}    &   𝐹 = (𝑥𝐴 ↦ (𝑥 · 𝑁))       ((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ ∧ 𝑁𝑀) → 𝐹:𝐴1-1-onto𝐵)
Theoremhashgcdeq 10829* Number of initial positive integers with specified divisors. (Contributed by Stefan O'Rear, 12-Sep-2015.)
((𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ) → (♯‘{𝑥 ∈ (0..^𝑀) ∣ (𝑥 gcd 𝑀) = 𝑁}) = if(𝑁𝑀, (ϕ‘(𝑀 / 𝑁)), 0))
4.3  Cardinality of real and complex number subsets
4.3.1  Countability of integers and rationals
Theoremoddennn 10830 There are as many odd positive integers as there are positive integers. (Contributed by Jim Kingdon, 11-May-2022.)
{𝑧 ∈ ℕ ∣ ¬ 2 ∥ 𝑧} ≈ ℕ
Theoremevenennn 10831 There are as many even positive integers as there are positive integers. (Contributed by Jim Kingdon, 12-May-2022.)
{𝑧 ∈ ℕ ∣ 2 ∥ 𝑧} ≈ ℕ
Theoremxpnnen 10832 The Cartesian product of the set of positive integers with itself is equinumerous to the set of positive integers. (Contributed by NM, 1-Aug-2004.)
(ℕ × ℕ) ≈ ℕ
Theoremxpomen 10833 The Cartesian product of omega (the set of ordinal natural numbers) with itself is equinumerous to omega. Exercise 1 of [Enderton] p. 133. (Contributed by NM, 23-Jul-2004.)
(ω × ω) ≈ ω
Theoremxpct 10834 The cartesian product of two countable sets is countable. (Contributed by Thierry Arnoux, 24-Sep-2017.)
((𝐴 ≼ ω ∧ 𝐵 ≼ ω) → (𝐴 × 𝐵) ≼ ω)
Theoremunennn 10835 The union of two disjoint countably infinite sets is countably infinite. (Contributed by Jim Kingdon, 13-May-2022.)
((𝐴 ≈ ℕ ∧ 𝐵 ≈ ℕ ∧ (𝐴𝐵) = ∅) → (𝐴𝐵) ≈ ℕ)
Theoremznnen 10836 The set of integers and the set of positive integers are equinumerous. Exercise 1 of [Gleason] p. 140. (Contributed by NM, 31-Jul-2004.)
ℤ ≈ ℕ
5.1  Guides (conventions, explanations, and examples)
5.1.1  Conventions

This section describes the conventions we use. However, these conventions often refer to existing mathematical practices, which are discussed in more detail in other references. The following sources lay out how mathematics is developed without the law of the excluded middle. Of course, there are a greater number of sources which assume excluded middle and most of what is in them applies here too (especially in a treatment such as ours which is built on first order logic and set theory, rather than, say, type theory). Studying how a topic is treated in the Metamath Proof Explorer and the references therein is often a good place to start (and is easy to compare with the Intuitionistic Logic Explorer). The textbooks provide a motivation for what we are doing, whereas Metamath lets you see in detail all hidden and implicit steps. Most standard theorems are accompanied by citations. Some closely followed texts include the following:

  • Axioms of propositional calculus - Stanford Encyclopedia of Philosophy or [Heyting].
  • Axioms of predicate calculus - our axioms are adapted from the ones in the Metamath Proof Explorer.
  • Theorems of propositional calculus - [Heyting].
  • Theorems of pure predicate calculus - Metamath Proof Explorer.
  • Theorems of equality and substitution - Metamath Proof Explorer.
  • Axioms of set theory - [Crosilla].
  • Development of set theory - Chapter 10 of [HoTT].
  • Construction of real and complex numbers - Chapter 11 of [HoTT]; [BauerTaylor].
  • Theorems about real numbers - [Geuvers].
Theoremconventions 10837 Unless there is a reason to diverge, we follow the conventions of the Metamath Proof Explorer (aka "set.mm"). This list of conventions is intended to be read in conjunction with the corresponding conventions in the Metamath Proof Explorer, and only the differences are described below.
  • Minimizing axioms and the axiom of choice. We prefer proofs that depend on fewer and/or weaker axioms, even if the proofs are longer. In particular, our choice of IZF (Intuitionistic Zermelo-Fraenkel) over CZF (Constructive Zermelo-Fraenkel, a weaker system) was just an expedient choice because IZF is easier to formalize in Metamath. You can find some development using CZF in BJ's mathbox starting at wbd 10888 (and the section header just above it). As for the axiom of choice, the full axiom of choice implies excluded middle as seen at acexmid 5563, although some authors will use countable choice or dependent choice. For example, countable choice or excluded middle is needed to show that the Cauchy reals coincide with the Dedekind reals - Corollary 11.4.3 of [HoTT], p. (varies).
  • Junk/undefined results. Much of the discussion of this topic in the Metamath Proof Explorer applies except that certain techniques are not available to us. For example, the Metamath Proof Explorer will often say "if a function is evaluated within its domain, a certain result follows; if the function is evaluated outside its domain, the same result follows. Since the function must be evaluated within its domain or outside it, the result follows unconditionally" (the use of excluded middle in this argument is perhaps obvious when stated this way). For this reason, we generally need to prove we are evaluating functions within their domains and avoid the reverse closure theorems of the Metamath Proof Explorer.
  • Bibliography references. The bibliography for the Intuitionistic Logic Explorer is separate from the one for the Metamath Proof Explorer but feel free to copy-paste a citation in either direction in order to cite it.

Label naming conventions

Here are a few of the label naming conventions:

  • Suffixes. We follow the conventions of the Metamath Proof Explorer with a few additions. A biconditional in set.mm which is an implication in iset.mm should have a "r" (for the reverse direction), or "i"/"im" (for the forward direction) appended. A theorem in set.mm which has a decidability condition added should add "dc" to the theorem name. A theorem in set.mm where "nonempty class" is changed to "inhabited class" should add "m" (for member) to the theorem name.

The following table shows some commonly-used abbreviations in labels which are not found in the Metamath Proof Explorer, in alphabetical order. For each abbreviation we provide a mnenomic to help you remember it, the source theorem/assumption defining it, an expression showing what it looks like, whether or not it is a "syntax fragment" (an abbreviation that indicates a particular kind of syntax), and hyperlinks to label examples that use the abbreviation. The abbreviation is bolded if there is a df-NAME definition but the label fragment is not NAME.

AbbreviationMnenomicSource ExpressionSyntax?Example(s)
apapart df-ap 7819 Yes apadd1 7845, apne 7860

  • Community. The Metamath mailing list also covers the Intuitionistic Logic Explorer and is at: https://groups.google.com/forum/#!forum/metamath.
  • (Contributed by Jim Kingdon, 24-Feb-2020.)

    𝜑       𝜑
    5.1.2  Definitional examples
    Theoremex-or 10838 Example for ax-io 663. Example by David A. Wheeler. (Contributed by Mario Carneiro, 9-May-2015.)
    (2 = 3 ∨ 4 = 4)
    Theoremex-an 10839 Example for ax-ia1 104. Example by David A. Wheeler. (Contributed by Mario Carneiro, 9-May-2015.)
    (2 = 2 ∧ 3 = 3)
    Theorem1kp2ke3k 10840 Example for df-dec 8629, 1000 + 2000 = 3000.

    This proof disproves (by counterexample) the assertion of Hao Wang, who stated, "There is a theorem in the primitive notation of set theory that corresponds to the arithmetic theorem 1000 + 2000 = 3000. The formula would be forbiddingly long... even if (one) knows the definitions and is asked to simplify the long formula according to them, chances are he will make errors and arrive at some incorrect result." (Hao Wang, "Theory and practice in mathematics" , In Thomas Tymoczko, editor, New Directions in the Philosophy of Mathematics, pp 129-152, Birkauser Boston, Inc., Boston, 1986. (QA8.6.N48). The quote itself is on page 140.)

    This is noted in Metamath: A Computer Language for Pure Mathematics by Norman Megill (2007) section 1.1.3. Megill then states, "A number of writers have conveyed the impression that the kind of absolute rigor provided by Metamath is an impossible dream, suggesting that a complete, formal verification of a typical theorem would take millions of steps in untold volumes of books... These writers assume, however, that in order to achieve the kind of complete formal verification they desire one must break down a proof into individual primitive steps that make direct reference to the axioms. This is not necessary. There is no reason not to make use of previously proved theorems rather than proving them over and over... A hierarchy of theorems and definitions permits an exponential growth in the formula sizes and primitive proof steps to be described with only a linear growth in the number of symbols used. Of course, this is how ordinary informal mathematics is normally done anyway, but with Metamath it can be done with absolute rigor and precision."

    The proof here starts with (2 + 1) = 3, commutes it, and repeatedly multiplies both sides by ten. This is certainly longer than traditional mathematical proofs, e.g., there are a number of steps explicitly shown here to show that we're allowed to do operations such as multiplication. However, while longer, the proof is clearly a manageable size - even though every step is rigorously derived all the way back to the primitive notions of set theory and logic. And while there's a risk of making errors, the many independent verifiers make it much less likely that an incorrect result will be accepted.

    This proof heavily relies on the decimal constructor df-dec 8629 developed by Mario Carneiro in 2015. The underlying Metamath language has an intentionally very small set of primitives; it doesn't even have a built-in construct for numbers. Instead, the digits are defined using these primitives, and the decimal constructor is used to make it easy to express larger numbers as combinations of digits.

    (Contributed by David A. Wheeler, 29-Jun-2016.) (Shortened by Mario Carneiro using the arithmetic algorithm in mmj2, 30-Jun-2016.)

    (1000 + 2000) = 3000
    Theoremex-fl 10841 Example for df-fl 9422. Example by David A. Wheeler. (Contributed by Mario Carneiro, 18-Jun-2015.)
    ((⌊‘(3 / 2)) = 1 ∧ (⌊‘-(3 / 2)) = -2)
    Theoremex-ceil 10842 Example for df-ceil 9423. (Contributed by AV, 4-Sep-2021.)
    ((⌈‘(3 / 2)) = 2 ∧ (⌈‘-(3 / 2)) = -1)
    Theoremex-fac 10843 Example for df-fac 9820. (Contributed by AV, 4-Sep-2021.)
    (!‘5) = 120
    Theoremex-bc 10844 Example for df-bc 9842. (Contributed by AV, 4-Sep-2021.)
    (5C3) = 10
    Theoremex-dvds 10845 Example for df-dvds 10422: 3 divides into 6. (Contributed by David A. Wheeler, 19-May-2015.)
    3 ∥ 6
    Theoremex-gcd 10846 Example for df-gcd 10564. (Contributed by AV, 5-Sep-2021.)
    (-6 gcd 9) = 3
    6.1  Mathboxes for user contributions
    6.1.1  Mathbox guidelines
    Theoremmathbox 10847 (This theorem is a dummy placeholder for these guidelines. The name of this theorem, "mathbox", is hard-coded into the Metamath program to identify the start of the mathbox section for web page generation.)

    A "mathbox" is a user-contributed section that is maintained by its contributor independently from the main part of set.mm.

    For contributors:

    By making a contribution, you agree to release it into the public domain, according to the statement at the beginning of set.mm.

    Mathboxes are provided to help keep your work synchronized with changes in set.mm, but they shouldn't be depended on as a permanent archive. If you want to preserve your original contribution, it is your responsibility to keep your own copy of it along with the version of set.mm that works with it.


    1. If at all possible, please use only nullary class constants for new definitions.

    2. Try to follow the style of the rest of set.mm. Each $p and $a statement must be immediately preceded with the comment that will be shown on its web page description. The metamath program command "write source set.mm /rewrap" will take care of wrapping comment lines and indentation conventions. All mathbox content will be on public display and should hopefully reflect the overall quality of the website.

    3. Before submitting a revised mathbox, please make sure it verifies against the current set.mm.

    4. Mathboxes should be independent i.e. the proofs should verify with all other mathboxes removed. If you need a theorem from another mathbox, that is fine (and encouraged), but let me know, so I can move the theorem to the main section. One way avoid undesired accidental use of other mathbox theorems is to develop your mathbox using a modified set.mm that has mathboxes removed.


    1. We may decide to move some theorems to the main part of set.mm for general use.

    2. We may make changes to mathboxes to maintain the overall quality of set.mm. Normally we will let you know if a change might impact what you are working on.

    3. If you use theorems from another user's mathbox, we don't provide assurance that they are based on correct or consistent $a statements. (If you find such a problem, please let us know so it can be corrected.) (Contributed by NM, 20-Feb-2007.) (New usage is discouraged.)

    𝜑       𝜑
    6.2  Mathbox for BJ
    6.2.1  Propositional calculus
    Theoremnnexmid 10848 Double negation of excluded middle. Intuitionistic logic refutes the negation of excluded middle (but, of course, does not prove excluded middle) for any formula. (Contributed by BJ, 9-Oct-2019.)
    ¬ ¬ (𝜑 ∨ ¬ 𝜑)
    Theoremnndc 10849 Double negation of decidability of a formula. Intuitionistic logic refutes undecidability (but, of course, does not prove decidability) of any formula. (Contributed by BJ, 9-Oct-2019.)
    ¬ ¬ DECID 𝜑
    Theoremdcdc 10850 Decidability of a proposition is decidable if and only if that proposition is decidable. DECID is idempotent. (Contributed by BJ, 9-Oct-2019.)
    6.2.2  Predicate calculus
    Theorembj-ex 10851* Existential generalization. (Contributed by BJ, 8-Dec-2019.) Proof modification is discouraged because there are shorter proofs, but using less basic results (like exlimiv 1530 and 19.9ht 1573 or 19.23ht 1427). (Proof modification is discouraged.)
    Theorembj-hbalt 10852 Closed form of hbal 1407 (copied from set.mm). (Contributed by BJ, 2-May-2019.)
    (∀𝑦(𝜑 → ∀𝑥𝜑) → (∀𝑦𝜑 → ∀𝑥𝑦𝜑))
    Theorembj-nfalt 10853 Closed form of nfal 1509 (copied from set.mm). (Contributed by BJ, 2-May-2019.)
    (∀𝑥𝑦𝜑 → Ⅎ𝑦𝑥𝜑)
    Theoremspimd 10854 Deduction form of spim 1668. (Contributed by BJ, 17-Oct-2019.)
    (𝜑 → Ⅎ𝑥𝜒)    &   (𝜑 → ∀𝑥(𝑥 = 𝑦 → (𝜓𝜒)))       (𝜑 → (∀𝑥𝜓𝜒))
    Theorem2spim 10855* Double substitution, as in spim 1668. (Contributed by BJ, 17-Oct-2019.)
    𝑥𝜒    &   𝑧𝜒    &   ((𝑥 = 𝑦𝑧 = 𝑡) → (𝜓𝜒))       (∀𝑧𝑥𝜓𝜒)
    Theoremch2var 10856* Implicit substitution of 𝑦 for 𝑥 and 𝑡 for 𝑧 into a theorem. (Contributed by BJ, 17-Oct-2019.)
    𝑥𝜓    &   𝑧𝜓    &   ((𝑥 = 𝑦𝑧 = 𝑡) → (𝜑𝜓))    &   𝜑       𝜓
    Theoremch2varv 10857* Version of ch2var 10856 with non-freeness hypotheses replaced by DV conditions. (Contributed by BJ, 17-Oct-2019.)
    ((𝑥 = 𝑦𝑧 = 𝑡) → (𝜑𝜓))    &   𝜑       𝜓
    Theorembj-exlimmp 10858 Lemma for bj-vtoclgf 10864. (Contributed by BJ, 21-Nov-2019.) (Proof modification is discouraged.)
    𝑥𝜓    &   (𝜒𝜑)       (∀𝑥(𝜒 → (𝜑𝜓)) → (∃𝑥𝜒𝜓))
    Theorembj-exlimmpi 10859 Lemma for bj-vtoclgf 10864. (Contributed by BJ, 21-Nov-2019.) (Proof modification is discouraged.)
    𝑥𝜓    &   (𝜒𝜑)    &   (𝜒 → (𝜑𝜓))       (∃𝑥𝜒𝜓)
    Theorembj-sbimedh 10860 A strengthening of sbiedh 1712 (same proof). (Contributed by BJ, 16-Dec-2019.)
    (𝜑 → ∀𝑥𝜑)    &   (𝜑 → (𝜒 → ∀𝑥𝜒))    &   (𝜑 → (𝑥 = 𝑦 → (𝜓𝜒)))       (𝜑 → ([𝑦 / 𝑥]𝜓𝜒))
    Theorembj-sbimeh 10861 A strengthening of sbieh 1715 (same proof). (Contributed by BJ, 16-Dec-2019.)
    (𝜓 → ∀𝑥𝜓)    &   (𝑥 = 𝑦 → (𝜑𝜓))       ([𝑦 / 𝑥]𝜑𝜓)
    Theorembj-sbime 10862 A strengthening of sbie 1716 (same proof). (Contributed by BJ, 16-Dec-2019.)
    𝑥𝜓    &   (𝑥 = 𝑦 → (𝜑𝜓))       ([𝑦 / 𝑥]𝜑𝜓)
    6.2.3  Extensionality

    Various utility theorems using FOL and extensionality.

    Theorembj-vtoclgft 10863 Weakening two hypotheses of vtoclgf 2666. (Contributed by BJ, 21-Nov-2019.)
    𝑥𝐴    &   𝑥𝜓    &   (𝑥 = 𝐴𝜑)       (∀𝑥(𝑥 = 𝐴 → (𝜑𝜓)) → (𝐴𝑉𝜓))
    Theorembj-vtoclgf 10864 Weakening two hypotheses of vtoclgf 2666. (Contributed by BJ, 21-Nov-2019.)
    𝑥𝐴    &   𝑥𝜓    &   (𝑥 = 𝐴𝜑)    &   (𝑥 = 𝐴 → (𝜑𝜓))       (𝐴𝑉𝜓)
    Theoremelabgf0 10865 Lemma for elabgf 2744. (Contributed by BJ, 21-Nov-2019.)
    (𝑥 = 𝐴 → (𝐴 ∈ {𝑥𝜑} ↔ 𝜑))
    Theoremelabgft1 10866 One implication of elabgf 2744, in closed form. (Contributed by BJ, 21-Nov-2019.)
    𝑥𝐴    &   𝑥𝜓       (∀𝑥(𝑥 = 𝐴 → (𝜑𝜓)) → (𝐴 ∈ {𝑥𝜑} → 𝜓))
    Theoremelabgf1 10867 One implication of elabgf 2744. (Contributed by BJ, 21-Nov-2019.)
    𝑥𝐴    &   𝑥𝜓    &   (𝑥 = 𝐴 → (𝜑𝜓))       (𝐴 ∈ {𝑥𝜑} → 𝜓)
    Theoremelabgf2 10868 One implication of elabgf 2744. (Contributed by BJ, 21-Nov-2019.)
    𝑥𝐴    &   𝑥𝜓    &   (𝑥 = 𝐴 → (𝜓𝜑))       (𝐴𝐵 → (𝜓𝐴 ∈ {𝑥𝜑}))
    Theoremelabf1 10869* One implication of elabf 2745. (Contributed by BJ, 21-Nov-2019.)
    𝑥𝜓    &   (𝑥 = 𝐴 → (𝜑𝜓))       (𝐴 ∈ {𝑥𝜑} → 𝜓)
    Theoremelabf2 10870* One implication of elabf 2745. (Contributed by BJ, 21-Nov-2019.)
    𝑥𝜓    &   𝐴 ∈ V    &   (𝑥 = 𝐴 → (𝜓𝜑))       (𝜓𝐴 ∈ {𝑥𝜑})
    Theoremelab1 10871* One implication of elab 2746. (Contributed by BJ, 21-Nov-2019.)
    (𝑥 = 𝐴 → (𝜑𝜓))       (𝐴 ∈ {𝑥𝜑} → 𝜓)
    Theoremelab2a 10872* One implication of elab 2746. (Contributed by BJ, 21-Nov-2019.)
    𝐴 ∈ V    &   (𝑥 = 𝐴 → (𝜓𝜑))       (𝜓𝐴 ∈ {𝑥𝜑})
    Theoremelabg2 10873* One implication of elabg 2747. (Contributed by BJ, 21-Nov-2019.)
    (𝑥 = 𝐴 → (𝜓𝜑))       (𝐴𝑉 → (𝜓𝐴 ∈ {𝑥𝜑}))
    Theorembj-rspgt 10874 Restricted specialization, generalized. Weakens a hypothesis of rspccv 2707 and seems to have a shorter proof. (Contributed by BJ, 21-Nov-2019.)
    𝑥𝐴    &   𝑥𝐵    &   𝑥𝜓       (∀𝑥(𝑥 = 𝐴 → (𝜑𝜓)) → (∀𝑥𝐵 𝜑 → (𝐴𝐵𝜓)))
    Theorembj-rspg 10875 Restricted specialization, generalized. Weakens a hypothesis of rspccv 2707 and seems to have a shorter proof. (Contributed by BJ, 21-Nov-2019.)
    𝑥𝐴    &   𝑥𝐵    &   𝑥𝜓    &   (𝑥 = 𝐴 → (𝜑𝜓))       (∀𝑥𝐵 𝜑 → (𝐴𝐵𝜓))
    Theoremcbvrald 10876* Rule used to change bound variables, using implicit substitution. (Contributed by BJ, 22-Nov-2019.)
    𝑥𝜑    &   𝑦𝜑    &   (𝜑 → Ⅎ𝑦𝜓)    &   (𝜑 → Ⅎ𝑥𝜒)    &   (𝜑 → (𝑥 = 𝑦 → (𝜓𝜒)))       (𝜑 → (∀𝑥𝐴 𝜓 ↔ ∀𝑦𝐴 𝜒))
    Theorembj-intabssel 10877 Version of intss1 3671 using a class abstraction and explicit substitution. (Contributed by BJ, 29-Nov-2019.)
    𝑥𝐴       (𝐴𝑉 → ([𝐴 / 𝑥]𝜑 {𝑥𝜑} ⊆ 𝐴))
    Theorembj-intabssel1 10878 Version of intss1 3671 using a class abstraction and implicit substitution. Closed form of intmin3 3683. (Contributed by BJ, 29-Nov-2019.)
    𝑥𝐴    &   𝑥𝜓    &   (𝑥 = 𝐴 → (𝜓𝜑))       (𝐴𝑉 → (𝜓 {𝑥𝜑} ⊆ 𝐴))
    Theorembj-elssuniab 10879 Version of elssuni 3649 using a class abstraction and explicit substitution. (Contributed by BJ, 29-Nov-2019.)
    𝑥𝐴       (𝐴𝑉 → ([𝐴 / 𝑥]𝜑𝐴 {𝑥𝜑}))
    Theorembj-sseq 10880 If two converse inclusions are characterized each by a formula, then equality is characterized by the conjunction of these formulas. (Contributed by BJ, 30-Nov-2019.)
    (𝜑 → (𝜓𝐴𝐵))    &   (𝜑 → (𝜒𝐵𝐴))       (𝜑 → ((𝜓𝜒) ↔ 𝐴 = 𝐵))
    6.2.4  Dedidability of classes

    The question of decidability is essential in intuitionistic logic. In intuitionistic set theories, it is natural to define decidability of a set (or class) as decidability of membership in it. One can parameterize this notion with another set (or class) since it is often important to assess decidability of membership in one class among elements of another class. Namely, one will say that "𝐴 is decidable in 𝐵 " if 𝑥𝐵DECID 𝑥𝐴 (see df-dcin 10882).

    Note the similarity with the definition of a bounded class as a class for which membership in it is a bounded proposition (df-bdc 10917).

    Syntaxwdcin 10881 Syntax for decidability of a class in another.
    wff 𝐴 DECIDin 𝐵
    Definitiondf-dcin 10882* Define decidability of a class in another. (Contributed by BJ, 19-Feb-2022.)
    (𝐴 DECIDin 𝐵 ↔ ∀𝑥𝐵 DECID 𝑥𝐴)
    Theoremdecidi 10883 Property of being decidable in another class. (Contributed by BJ, 19-Feb-2022.)
    (𝐴 DECIDin 𝐵 → (𝑋𝐵 → (𝑋𝐴 ∨ ¬ 𝑋𝐴)))
    Theoremdecidr 10884* Sufficient condition for being decidable in another class. (Contributed by BJ, 19-Feb-2022.)
    (𝜑 → (𝑥𝐵 → (𝑥𝐴 ∨ ¬ 𝑥𝐴)))       (𝜑𝐴 DECIDin 𝐵)
    Theoremdecidin 10885 If A is a decidable subclass of B (meaning: it is a subclass of B and it is decidable in B), and B is decidable in C, then A is decidable in C. (Contributed by BJ, 19-Feb-2022.)
    (𝜑𝐴𝐵)    &   (𝜑𝐴 DECIDin 𝐵)    &   (𝜑𝐵 DECIDin 𝐶)       (𝜑𝐴 DECIDin 𝐶)
    Theoremuzdcinzz 10886 An upperset of integers is decidable in the integers. Reformulation of eluzdc 8848. (Contributed by Jim Kingdon, 18-Apr-2020.) (Revised by BJ, 19-Feb-2022.)
    (𝑀 ∈ ℤ → (ℤ𝑀) DECIDin ℤ)
    Theoremsumdc2 10887* Alternate proof of sumdc 10414, without DV condition on 𝑁, 𝑥 (longer because the statement is taylored to the proof sumdc 10414). (Contributed by BJ, 19-Feb-2022.)
    (𝜑𝑀 ∈ ℤ)    &   (𝜑𝐴 ⊆ (ℤ𝑀))    &   (𝜑 → ∀𝑥 ∈ (ℤ𝑀)DECID 𝑥𝐴)    &   (𝜑𝑁 ∈ ℤ)       (𝜑DECID 𝑁𝐴)
    6.2.5  Constructive Zermelo--Fraenkel set theory (CZF): Bounded formulas and classes

    This section develops constructive Zermelo--Fraenkel set theory (CZF) on top of intuitionistic logic. It is a constructive theory in the sense that its logic is intuitionistic and it is predicative. "Predicative" means that new sets can be constructed only from already constructed sets. In particular, the axiom of separation ax-sep 3916 is not predicative (because we cannot allow all formulas to define a subset) and is replaced in CZF by bounded separation ax-bdsep 10960. Because this axiom is weaker than full separation, the axiom of replacement or collection ax-coll 3913 of ZF and IZF has to be strengthened in CZF to the axiom of strong collection ax-strcoll 11062 (which is a theorem of IZF), and the axiom of infinity needs a more precise version, the von Neumann axiom of infinity ax-infvn 11021. Similarly, the axiom of powerset ax-pow 3968 is not predicative (checking whether a set is included in another requires to universally quantifier over that "not yet constructed" set) and is replaced in CZF by the axiom of fullness or the axiom of subset collection ax-sscoll 11067.

    In an intuitionistic context, the axiom of regularity is stated in IZF as well as in CZF as the axiom of set induction ax-setind 4308. It is sometimes interesting to study the weakening of CZF where that axiom is replaced by bounded set induction ax-bdsetind 11048.

    For more details on CZF, a useful set of notes is

    Peter Aczel and Michael Rathjen, CST Book draft. (available at http://www1.maths.leeds.ac.uk/~rathjen/book.pdf)

    and an interesting article is

    Michael Shulman, Comparing material and structural set theories, Annals of Pure and Applied Logic, Volume 170, Issue 4 (Apr. 2019), 465--504. (available at https://arxiv.org/abs/1808.05204)

    I also thank Michael Rathjen and Michael Shulman for useful hints in the formulation of some results.

  Bounded formulas

    The present definition of bounded formulas emerged from a discussion on GitHub between Jim Kingdon, Mario Carneiro and I, started 23-Sept-2019 (see https://github.com/metamath/set.mm/issues/1173 and links therein).

    In order to state certain axiom schemes of Constructive Zermelo–Fraenkel (CZF) set theory, like the axiom scheme of bounded (or restricted, or Δ0) separation, it is necessary to distinguish certain formulas, called bounded (or restricted, or Δ0) formulas. The necessity of considering bounded formulas also arises in several theories of bounded arithmetic, both classical or intuitonistic, for instance to state the axiom scheme of Δ0-induction.

    To formalize this in Metamath, there are several choices to make.

    A first choice is to either create a new type for bounded formulas, or to create a predicate on formulas that indicates whether they are bounded. In the first case, one creates a new type "wff0" with a new set of metavariables (ph0 ...) and an axiom "$a wff ph0 " ensuring that bounded formulas are formulas, so that one can reuse existing theorems, and then axioms take the form "$a wff0 ( ph0 -> ps0 )", etc. In the second case, one introduces a predicate "BOUNDED " with the intended meaning that "BOUNDED 𝜑 " is a formula meaning that 𝜑 is a bounded formula. We choose the second option, since the first would complicate the grammar, risking to make it ambiguous. (TODO: elaborate.)

    A second choice is to view "bounded" either as a syntactic or a semantic property. For instance, 𝑥 is not syntactically bounded since it has an unbounded universal quantifier, but it is semantically bounded since it is equivalent to which is bounded. We choose the second option, so that formulas using defined symbols can be proved bounded.

    A third choice is in the form of the axioms, either in closed form or in inference form. One cannot state all the axioms in closed form, especially ax-bd0 10889. Indeed, if we posited it in closed form, then we could prove for instance (𝜑BOUNDED 𝜑) and 𝜑BOUNDED 𝜑) which is problematic (with the law of excluded middle, this would entail that all formulas are bounded, but even without it, too many formulas could be proved bounded...). (TODO: elaborate.)

    Having ax-bd0 10889 in inference form ensures that a formula can be proved bounded only if it is equivalent *for all values of the free variables* to a syntactically bounded one. The other axioms (ax-bdim 10890 through ax-bdsb 10898) can be written either in closed or inference form. The fact that ax-bd0 10889 is an inference is enough to ensure that the closed forms cannot be "exploited" to prove that some unbounded formulas are bounded. (TODO: check.) However, we state all the axioms in inference form to make it clear that we do not exploit any over-permissiveness.

    Finally, note that our logic has no terms, only variables. Therefore, we cannot prove for instance that 𝑥 ∈ ω is a bounded formula. However, since ω can be defined as "the 𝑦 such that PHI" a proof using the fact that 𝑥 ∈ ω is bounded can be converted to a proof in iset.mm by replacing ω with 𝑦 everywhere and prepending the antecedent PHI, since 𝑥𝑦 is bounded by ax-bdel 10897. For a similar method, see bj-omtrans 11036.

    Note that one cannot add an axiom BOUNDED 𝑥𝐴 since by bdph 10926 it would imply that every formula is bounded.

    Syntaxwbd 10888 Syntax for the predicate BOUNDED.
    wff BOUNDED 𝜑
    Axiomax-bd0 10889 If two formulas are equivalent, then boundedness of one implies boundedness of the other. (Contributed by BJ, 3-Oct-2019.)
    (𝜑𝜓)       (BOUNDED 𝜑BOUNDED 𝜓)
    Axiomax-bdim 10890 An implication between two bounded formulas is bounded. (Contributed by BJ, 25-Sep-2019.)
    BOUNDED 𝜑    &   BOUNDED 𝜓       BOUNDED (𝜑𝜓)
    Axiomax-bdan 10891 The conjunction of two bounded formulas is bounded. (Contributed by BJ, 25-Sep-2019.)
    BOUNDED 𝜑    &   BOUNDED 𝜓       BOUNDED (𝜑𝜓)
    Axiomax-bdor 10892 The disjunction of two bounded formulas is bounded. (Contributed by BJ, 25-Sep-2019.)
    BOUNDED 𝜑    &   BOUNDED 𝜓       BOUNDED (𝜑𝜓)
    Axiomax-bdn 10893 The negation of a bounded formula is bounded. (Contributed by BJ, 25-Sep-2019.)
    BOUNDED 𝜑       BOUNDED ¬ 𝜑
    Axiomax-bdal 10894* A bounded universal quantification of a bounded formula is bounded. Note the DV condition on 𝑥, 𝑦. (Contributed by BJ, 25-Sep-2019.)
    BOUNDED 𝜑       BOUNDED𝑥𝑦 𝜑
    Axiomax-bdex 10895* A bounded existential quantification of a bounded formula is bounded. Note the DV condition on 𝑥, 𝑦. (Contributed by BJ, 25-Sep-2019.)
    BOUNDED 𝜑       BOUNDED𝑥𝑦 𝜑
    Axiomax-bdeq 10896 An atomic formula is bounded (equality predicate). (Contributed by BJ, 3-Oct-2019.)
    BOUNDED 𝑥 = 𝑦
    Axiomax-bdel 10897 An atomic formula is bounded (membership predicate). (Contributed by BJ, 3-Oct-2019.)
    BOUNDED 𝑥𝑦
    Axiomax-bdsb 10898 A formula resulting from proper substitution in a bounded formula is bounded. This probably cannot be proved from the other axioms, since neither the definiens in df-sb 1688, nor probably any other equivalent formula, is syntactically bounded. (Contributed by BJ, 3-Oct-2019.)
    BOUNDED 𝜑       BOUNDED [𝑦 / 𝑥]𝜑
    Theorembdeq 10899 Equality property for the predicate BOUNDED. (Contributed by BJ, 3-Oct-2019.)
    (𝜑𝜓)       (BOUNDED 𝜑BOUNDED 𝜓)
    Theorembd0 10900 A formula equivalent to a bounded one is bounded. See also bd0r 10901. (Contributed by BJ, 3-Oct-2019.)
    BOUNDED 𝜑    &   (𝜑𝜓)       BOUNDED 𝜓
        < Previous  Next >

    Page List
    Jump to page: Contents  1 1-100 2 101-200 3 201-300 4 301-400 5 401-500 6 501-600 7 601-700 8 701-800 9 801-900 10 901-1000 11 1001-1100 12 1101-1200 13 1201-1300 14 1301-1400 15 1401-1500 16 1501-1600 17 1601-1700 18 1701-1800 19 1801-1900 20 1901-2000 21 2001-2100 22 2101-2200 23 2201-2300 24 2301-2400 25 2401-2500 26 2501-2600 27 2601-2700 28 2701-2800 29 2801-2900 30 2901-3000 31 3001-3100 32 3101-3200 33 3201-3300 34 3301-3400 35 3401-3500 36 3501-3600 37 3601-3700 38 3701-3800 39 3801-3900 40 3901-4000 41 4001-4100 42 4101-4200 43 4201-4300 44 4301-4400 45 4401-4500 46 4501-4600 47 4601-4700 48 4701-4800 49 4801-4900 50 4901-5000 51 5001-5100 52 5101-5200 53 5201-5300 54 5301-5400 55 5401-5500 56 5501-5600 57 5601-5700 58 5701-5800 59 5801-5900 60 5901-6000 61 6001-6100 62 6101-6200 63 6201-6300 64 6301-6400 65 6401-6500 66 6501-6600 67 6601-6700 68 6701-6800 69 6801-6900 70 6901-7000 71 7001-7100 72 7101-7200 73 7201-7300 74 7301-7400 75 7401-7500 76 7501-7600 77 7601-7700 78 7701-7800 79 7801-7900 80 7901-8000 81 8001-8100 82 8101-8200 83 8201-8300 84 8301-8400 85 8401-8500 86 8501-8600 87 8601-8700 88 8701-8800 89 8801-8900 90 8901-9000 91 9001-9100 92 9101-9200 93 9201-9300 94 9301-9400 95 9401-9500 96 9501-9600 97 9601-9700 98 9701-9800 99 9801-9900 100 9901-10000 101 10001-10100 102 10101-10200 103 10201-10300 104 10301-10400 105 10401-10500 106 10501-10600 107 10601-10700 108 10701-10800 109 10801-10900 110 10901-11000 111 11001-11080
      Copyright terms: Public domain < Previous  Next >