Home | Intuitionistic Logic Explorer Theorem List (p. 104 of 140) | < Previous Next > |
Bad symbols? Try the
GIF version. |
||
Mirrors > Metamath Home Page > ILE Home Page > Theorem List Contents > Recent Proofs This page: Page List |
Type | Label | Description |
---|---|---|
Statement | ||
Theorem | modqmuladd 10301* | Decomposition of an integer into a multiple of a modulus and a remainder. (Contributed by Jim Kingdon, 23-Oct-2021.) |
⊢ (𝜑 → 𝐴 ∈ ℤ) & ⊢ (𝜑 → 𝐵 ∈ ℚ) & ⊢ (𝜑 → 𝐵 ∈ (0[,)𝑀)) & ⊢ (𝜑 → 𝑀 ∈ ℚ) & ⊢ (𝜑 → 0 < 𝑀) ⇒ ⊢ (𝜑 → ((𝐴 mod 𝑀) = 𝐵 ↔ ∃𝑘 ∈ ℤ 𝐴 = ((𝑘 · 𝑀) + 𝐵))) | ||
Theorem | modqmuladdim 10302* | Implication of a decomposition of an integer into a multiple of a modulus and a remainder. (Contributed by Jim Kingdon, 23-Oct-2021.) |
⊢ ((𝐴 ∈ ℤ ∧ 𝑀 ∈ ℚ ∧ 0 < 𝑀) → ((𝐴 mod 𝑀) = 𝐵 → ∃𝑘 ∈ ℤ 𝐴 = ((𝑘 · 𝑀) + 𝐵))) | ||
Theorem | modqmuladdnn0 10303* | Implication of a decomposition of a nonnegative integer into a multiple of a modulus and a remainder. (Contributed by Jim Kingdon, 23-Oct-2021.) |
⊢ ((𝐴 ∈ ℕ0 ∧ 𝑀 ∈ ℚ ∧ 0 < 𝑀) → ((𝐴 mod 𝑀) = 𝐵 → ∃𝑘 ∈ ℕ0 𝐴 = ((𝑘 · 𝑀) + 𝐵))) | ||
Theorem | qnegmod 10304 | The negation of a number modulo a positive number is equal to the difference of the modulus and the number modulo the modulus. (Contributed by Jim Kingdon, 24-Oct-2021.) |
⊢ ((𝐴 ∈ ℚ ∧ 𝑁 ∈ ℚ ∧ 0 < 𝑁) → (-𝐴 mod 𝑁) = ((𝑁 − 𝐴) mod 𝑁)) | ||
Theorem | m1modnnsub1 10305 | Minus one modulo a positive integer is equal to the integer minus one. (Contributed by AV, 14-Jul-2021.) |
⊢ (𝑀 ∈ ℕ → (-1 mod 𝑀) = (𝑀 − 1)) | ||
Theorem | m1modge3gt1 10306 | Minus one modulo an integer greater than two is greater than one. (Contributed by AV, 14-Jul-2021.) |
⊢ (𝑀 ∈ (ℤ≥‘3) → 1 < (-1 mod 𝑀)) | ||
Theorem | addmodid 10307 | The sum of a positive integer and a nonnegative integer less than the positive integer is equal to the nonnegative integer modulo the positive integer. (Contributed by Alexander van der Vekens, 30-Oct-2018.) (Proof shortened by AV, 5-Jul-2020.) |
⊢ ((𝐴 ∈ ℕ0 ∧ 𝑀 ∈ ℕ ∧ 𝐴 < 𝑀) → ((𝑀 + 𝐴) mod 𝑀) = 𝐴) | ||
Theorem | addmodidr 10308 | The sum of a positive integer and a nonnegative integer less than the positive integer is equal to the nonnegative integer modulo the positive integer. (Contributed by AV, 19-Mar-2021.) |
⊢ ((𝐴 ∈ ℕ0 ∧ 𝑀 ∈ ℕ ∧ 𝐴 < 𝑀) → ((𝐴 + 𝑀) mod 𝑀) = 𝐴) | ||
Theorem | modqadd2mod 10309 | The sum of a number modulo a modulus and another number equals the sum of the two numbers modulo the modulus. (Contributed by Jim Kingdon, 24-Oct-2021.) |
⊢ (((𝐴 ∈ ℚ ∧ 𝐵 ∈ ℚ) ∧ (𝑀 ∈ ℚ ∧ 0 < 𝑀)) → ((𝐵 + (𝐴 mod 𝑀)) mod 𝑀) = ((𝐵 + 𝐴) mod 𝑀)) | ||
Theorem | modqm1p1mod0 10310 | If a number modulo a modulus equals the modulus decreased by 1, the first number increased by 1 modulo the modulus equals 0. (Contributed by Jim Kingdon, 24-Oct-2021.) |
⊢ ((𝐴 ∈ ℚ ∧ 𝑀 ∈ ℚ ∧ 0 < 𝑀) → ((𝐴 mod 𝑀) = (𝑀 − 1) → ((𝐴 + 1) mod 𝑀) = 0)) | ||
Theorem | modqltm1p1mod 10311 | If a number modulo a modulus is less than the modulus decreased by 1, the first number increased by 1 modulo the modulus equals the first number modulo the modulus, increased by 1. (Contributed by Jim Kingdon, 24-Oct-2021.) |
⊢ (((𝐴 ∈ ℚ ∧ (𝐴 mod 𝑀) < (𝑀 − 1)) ∧ (𝑀 ∈ ℚ ∧ 0 < 𝑀)) → ((𝐴 + 1) mod 𝑀) = ((𝐴 mod 𝑀) + 1)) | ||
Theorem | modqmul1 10312 | Multiplication property of the modulo operation. Note that the multiplier 𝐶 must be an integer. (Contributed by Jim Kingdon, 24-Oct-2021.) |
⊢ (𝜑 → 𝐴 ∈ ℚ) & ⊢ (𝜑 → 𝐵 ∈ ℚ) & ⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ (𝜑 → 𝐷 ∈ ℚ) & ⊢ (𝜑 → 0 < 𝐷) & ⊢ (𝜑 → (𝐴 mod 𝐷) = (𝐵 mod 𝐷)) ⇒ ⊢ (𝜑 → ((𝐴 · 𝐶) mod 𝐷) = ((𝐵 · 𝐶) mod 𝐷)) | ||
Theorem | modqmul12d 10313 | Multiplication property of the modulo operation, see theorem 5.2(b) in [ApostolNT] p. 107. (Contributed by Jim Kingdon, 24-Oct-2021.) |
⊢ (𝜑 → 𝐴 ∈ ℤ) & ⊢ (𝜑 → 𝐵 ∈ ℤ) & ⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ (𝜑 → 𝐷 ∈ ℤ) & ⊢ (𝜑 → 𝐸 ∈ ℚ) & ⊢ (𝜑 → 0 < 𝐸) & ⊢ (𝜑 → (𝐴 mod 𝐸) = (𝐵 mod 𝐸)) & ⊢ (𝜑 → (𝐶 mod 𝐸) = (𝐷 mod 𝐸)) ⇒ ⊢ (𝜑 → ((𝐴 · 𝐶) mod 𝐸) = ((𝐵 · 𝐷) mod 𝐸)) | ||
Theorem | modqnegd 10314 | Negation property of the modulo operation. (Contributed by Jim Kingdon, 24-Oct-2021.) |
⊢ (𝜑 → 𝐴 ∈ ℚ) & ⊢ (𝜑 → 𝐵 ∈ ℚ) & ⊢ (𝜑 → 𝐶 ∈ ℚ) & ⊢ (𝜑 → 0 < 𝐶) & ⊢ (𝜑 → (𝐴 mod 𝐶) = (𝐵 mod 𝐶)) ⇒ ⊢ (𝜑 → (-𝐴 mod 𝐶) = (-𝐵 mod 𝐶)) | ||
Theorem | modqadd12d 10315 | Additive property of the modulo operation. (Contributed by Jim Kingdon, 25-Oct-2021.) |
⊢ (𝜑 → 𝐴 ∈ ℚ) & ⊢ (𝜑 → 𝐵 ∈ ℚ) & ⊢ (𝜑 → 𝐶 ∈ ℚ) & ⊢ (𝜑 → 𝐷 ∈ ℚ) & ⊢ (𝜑 → 𝐸 ∈ ℚ) & ⊢ (𝜑 → 0 < 𝐸) & ⊢ (𝜑 → (𝐴 mod 𝐸) = (𝐵 mod 𝐸)) & ⊢ (𝜑 → (𝐶 mod 𝐸) = (𝐷 mod 𝐸)) ⇒ ⊢ (𝜑 → ((𝐴 + 𝐶) mod 𝐸) = ((𝐵 + 𝐷) mod 𝐸)) | ||
Theorem | modqsub12d 10316 | Subtraction property of the modulo operation. (Contributed by Jim Kingdon, 25-Oct-2021.) |
⊢ (𝜑 → 𝐴 ∈ ℚ) & ⊢ (𝜑 → 𝐵 ∈ ℚ) & ⊢ (𝜑 → 𝐶 ∈ ℚ) & ⊢ (𝜑 → 𝐷 ∈ ℚ) & ⊢ (𝜑 → 𝐸 ∈ ℚ) & ⊢ (𝜑 → 0 < 𝐸) & ⊢ (𝜑 → (𝐴 mod 𝐸) = (𝐵 mod 𝐸)) & ⊢ (𝜑 → (𝐶 mod 𝐸) = (𝐷 mod 𝐸)) ⇒ ⊢ (𝜑 → ((𝐴 − 𝐶) mod 𝐸) = ((𝐵 − 𝐷) mod 𝐸)) | ||
Theorem | modqsubmod 10317 | The difference of a number modulo a modulus and another number equals the difference of the two numbers modulo the modulus. (Contributed by Jim Kingdon, 25-Oct-2021.) |
⊢ (((𝐴 ∈ ℚ ∧ 𝐵 ∈ ℚ) ∧ (𝑀 ∈ ℚ ∧ 0 < 𝑀)) → (((𝐴 mod 𝑀) − 𝐵) mod 𝑀) = ((𝐴 − 𝐵) mod 𝑀)) | ||
Theorem | modqsubmodmod 10318 | The difference of a number modulo a modulus and another number modulo the same modulus equals the difference of the two numbers modulo the modulus. (Contributed by Jim Kingdon, 25-Oct-2021.) |
⊢ (((𝐴 ∈ ℚ ∧ 𝐵 ∈ ℚ) ∧ (𝑀 ∈ ℚ ∧ 0 < 𝑀)) → (((𝐴 mod 𝑀) − (𝐵 mod 𝑀)) mod 𝑀) = ((𝐴 − 𝐵) mod 𝑀)) | ||
Theorem | q2txmodxeq0 10319 | Two times a positive number modulo the number is zero. (Contributed by Jim Kingdon, 25-Oct-2021.) |
⊢ ((𝑋 ∈ ℚ ∧ 0 < 𝑋) → ((2 · 𝑋) mod 𝑋) = 0) | ||
Theorem | q2submod 10320 | If a number is between a modulus and twice the modulus, the first number modulo the modulus equals the first number minus the modulus. (Contributed by Jim Kingdon, 25-Oct-2021.) |
⊢ (((𝐴 ∈ ℚ ∧ 𝐵 ∈ ℚ ∧ 0 < 𝐵) ∧ (𝐵 ≤ 𝐴 ∧ 𝐴 < (2 · 𝐵))) → (𝐴 mod 𝐵) = (𝐴 − 𝐵)) | ||
Theorem | modifeq2int 10321 | If a nonnegative integer is less than twice a positive integer, the nonnegative integer modulo the positive integer equals the nonnegative integer or the nonnegative integer minus the positive integer. (Contributed by Alexander van der Vekens, 21-May-2018.) |
⊢ ((𝐴 ∈ ℕ0 ∧ 𝐵 ∈ ℕ ∧ 𝐴 < (2 · 𝐵)) → (𝐴 mod 𝐵) = if(𝐴 < 𝐵, 𝐴, (𝐴 − 𝐵))) | ||
Theorem | modaddmodup 10322 | The sum of an integer modulo a positive integer and another integer minus the positive integer equals the sum of the two integers modulo the positive integer if the other integer is in the upper part of the range between 0 and the positive integer. (Contributed by AV, 30-Oct-2018.) |
⊢ ((𝐴 ∈ ℤ ∧ 𝑀 ∈ ℕ) → (𝐵 ∈ ((𝑀 − (𝐴 mod 𝑀))..^𝑀) → ((𝐵 + (𝐴 mod 𝑀)) − 𝑀) = ((𝐵 + 𝐴) mod 𝑀))) | ||
Theorem | modaddmodlo 10323 | The sum of an integer modulo a positive integer and another integer equals the sum of the two integers modulo the positive integer if the other integer is in the lower part of the range between 0 and the positive integer. (Contributed by AV, 30-Oct-2018.) |
⊢ ((𝐴 ∈ ℤ ∧ 𝑀 ∈ ℕ) → (𝐵 ∈ (0..^(𝑀 − (𝐴 mod 𝑀))) → (𝐵 + (𝐴 mod 𝑀)) = ((𝐵 + 𝐴) mod 𝑀))) | ||
Theorem | modqmulmod 10324 | The product of a rational number modulo a modulus and an integer equals the product of the rational number and the integer modulo the modulus. (Contributed by Jim Kingdon, 25-Oct-2021.) |
⊢ (((𝐴 ∈ ℚ ∧ 𝐵 ∈ ℤ) ∧ (𝑀 ∈ ℚ ∧ 0 < 𝑀)) → (((𝐴 mod 𝑀) · 𝐵) mod 𝑀) = ((𝐴 · 𝐵) mod 𝑀)) | ||
Theorem | modqmulmodr 10325 | The product of an integer and a rational number modulo a modulus equals the product of the integer and the rational number modulo the modulus. (Contributed by Jim Kingdon, 26-Oct-2021.) |
⊢ (((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℚ) ∧ (𝑀 ∈ ℚ ∧ 0 < 𝑀)) → ((𝐴 · (𝐵 mod 𝑀)) mod 𝑀) = ((𝐴 · 𝐵) mod 𝑀)) | ||
Theorem | modqaddmulmod 10326 | The sum of a rational number and the product of a second rational number modulo a modulus and an integer equals the sum of the rational number and the product of the other rational number and the integer modulo the modulus. (Contributed by Jim Kingdon, 26-Oct-2021.) |
⊢ (((𝐴 ∈ ℚ ∧ 𝐵 ∈ ℚ ∧ 𝐶 ∈ ℤ) ∧ (𝑀 ∈ ℚ ∧ 0 < 𝑀)) → ((𝐴 + ((𝐵 mod 𝑀) · 𝐶)) mod 𝑀) = ((𝐴 + (𝐵 · 𝐶)) mod 𝑀)) | ||
Theorem | modqdi 10327 | Distribute multiplication over a modulo operation. (Contributed by Jim Kingdon, 26-Oct-2021.) |
⊢ (((𝐴 ∈ ℚ ∧ 0 < 𝐴) ∧ 𝐵 ∈ ℚ ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → (𝐴 · (𝐵 mod 𝐶)) = ((𝐴 · 𝐵) mod (𝐴 · 𝐶))) | ||
Theorem | modqsubdir 10328 | Distribute the modulo operation over a subtraction. (Contributed by Jim Kingdon, 26-Oct-2021.) |
⊢ (((𝐴 ∈ ℚ ∧ 𝐵 ∈ ℚ) ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → ((𝐵 mod 𝐶) ≤ (𝐴 mod 𝐶) ↔ ((𝐴 − 𝐵) mod 𝐶) = ((𝐴 mod 𝐶) − (𝐵 mod 𝐶)))) | ||
Theorem | modqeqmodmin 10329 | A rational number equals the difference of the rational number and a modulus modulo the modulus. (Contributed by Jim Kingdon, 26-Oct-2021.) |
⊢ ((𝐴 ∈ ℚ ∧ 𝑀 ∈ ℚ ∧ 0 < 𝑀) → (𝐴 mod 𝑀) = ((𝐴 − 𝑀) mod 𝑀)) | ||
Theorem | modfzo0difsn 10330* | For a number within a half-open range of nonnegative integers with one excluded integer there is a positive integer so that the number is equal to the sum of the positive integer and the excluded integer modulo the upper bound of the range. (Contributed by AV, 19-Mar-2021.) |
⊢ ((𝐽 ∈ (0..^𝑁) ∧ 𝐾 ∈ ((0..^𝑁) ∖ {𝐽})) → ∃𝑖 ∈ (1..^𝑁)𝐾 = ((𝑖 + 𝐽) mod 𝑁)) | ||
Theorem | modsumfzodifsn 10331 | The sum of a number within a half-open range of positive integers is an element of the corresponding open range of nonnegative integers with one excluded integer modulo the excluded integer. (Contributed by AV, 19-Mar-2021.) |
⊢ ((𝐽 ∈ (0..^𝑁) ∧ 𝐾 ∈ (1..^𝑁)) → ((𝐾 + 𝐽) mod 𝑁) ∈ ((0..^𝑁) ∖ {𝐽})) | ||
Theorem | modlteq 10332 | Two nonnegative integers less than the modulus are equal iff they are equal modulo the modulus. (Contributed by AV, 14-Mar-2021.) |
⊢ ((𝐼 ∈ (0..^𝑁) ∧ 𝐽 ∈ (0..^𝑁)) → ((𝐼 mod 𝑁) = (𝐽 mod 𝑁) ↔ 𝐼 = 𝐽)) | ||
Theorem | addmodlteq 10333 | Two nonnegative integers less than the modulus are equal iff the sums of these integer with another integer are equal modulo the modulus. (Contributed by AV, 20-Mar-2021.) |
⊢ ((𝐼 ∈ (0..^𝑁) ∧ 𝐽 ∈ (0..^𝑁) ∧ 𝑆 ∈ ℤ) → (((𝐼 + 𝑆) mod 𝑁) = ((𝐽 + 𝑆) mod 𝑁) ↔ 𝐼 = 𝐽)) | ||
Theorem | frec2uz0d 10334* | The mapping 𝐺 is a one-to-one mapping from ω onto upper integers that will be used to construct a recursive definition generator. Ordinal natural number 0 maps to complex number 𝐶 (normally 0 for the upper integers ℕ0 or 1 for the upper integers ℕ), 1 maps to 𝐶 + 1, etc. This theorem shows the value of 𝐺 at ordinal natural number zero. (Contributed by Jim Kingdon, 16-May-2020.) |
⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) ⇒ ⊢ (𝜑 → (𝐺‘∅) = 𝐶) | ||
Theorem | frec2uzzd 10335* | The value of 𝐺 (see frec2uz0d 10334) is an integer. (Contributed by Jim Kingdon, 16-May-2020.) |
⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) & ⊢ (𝜑 → 𝐴 ∈ ω) ⇒ ⊢ (𝜑 → (𝐺‘𝐴) ∈ ℤ) | ||
Theorem | frec2uzsucd 10336* | The value of 𝐺 (see frec2uz0d 10334) at a successor. (Contributed by Jim Kingdon, 16-May-2020.) |
⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) & ⊢ (𝜑 → 𝐴 ∈ ω) ⇒ ⊢ (𝜑 → (𝐺‘suc 𝐴) = ((𝐺‘𝐴) + 1)) | ||
Theorem | frec2uzuzd 10337* | The value 𝐺 (see frec2uz0d 10334) at an ordinal natural number is in the upper integers. (Contributed by Jim Kingdon, 16-May-2020.) |
⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) & ⊢ (𝜑 → 𝐴 ∈ ω) ⇒ ⊢ (𝜑 → (𝐺‘𝐴) ∈ (ℤ≥‘𝐶)) | ||
Theorem | frec2uzltd 10338* | Less-than relation for 𝐺 (see frec2uz0d 10334). (Contributed by Jim Kingdon, 16-May-2020.) |
⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) & ⊢ (𝜑 → 𝐴 ∈ ω) & ⊢ (𝜑 → 𝐵 ∈ ω) ⇒ ⊢ (𝜑 → (𝐴 ∈ 𝐵 → (𝐺‘𝐴) < (𝐺‘𝐵))) | ||
Theorem | frec2uzlt2d 10339* | The mapping 𝐺 (see frec2uz0d 10334) preserves order. (Contributed by Jim Kingdon, 16-May-2020.) |
⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) & ⊢ (𝜑 → 𝐴 ∈ ω) & ⊢ (𝜑 → 𝐵 ∈ ω) ⇒ ⊢ (𝜑 → (𝐴 ∈ 𝐵 ↔ (𝐺‘𝐴) < (𝐺‘𝐵))) | ||
Theorem | frec2uzrand 10340* | Range of 𝐺 (see frec2uz0d 10334). (Contributed by Jim Kingdon, 17-May-2020.) |
⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) ⇒ ⊢ (𝜑 → ran 𝐺 = (ℤ≥‘𝐶)) | ||
Theorem | frec2uzf1od 10341* | 𝐺 (see frec2uz0d 10334) is a one-to-one onto mapping. (Contributed by Jim Kingdon, 17-May-2020.) |
⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) ⇒ ⊢ (𝜑 → 𝐺:ω–1-1-onto→(ℤ≥‘𝐶)) | ||
Theorem | frec2uzisod 10342* | 𝐺 (see frec2uz0d 10334) is an isomorphism from natural ordinals to upper integers. (Contributed by Jim Kingdon, 17-May-2020.) |
⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) ⇒ ⊢ (𝜑 → 𝐺 Isom E , < (ω, (ℤ≥‘𝐶))) | ||
Theorem | frecuzrdgrrn 10343* | The function 𝑅 (used in the definition of the recursive definition generator on upper integers) yields ordered pairs of integers and elements of 𝑆. (Contributed by Jim Kingdon, 28-Mar-2022.) |
⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) & ⊢ (𝜑 → 𝐴 ∈ 𝑆) & ⊢ ((𝜑 ∧ (𝑥 ∈ (ℤ≥‘𝐶) ∧ 𝑦 ∈ 𝑆)) → (𝑥𝐹𝑦) ∈ 𝑆) & ⊢ 𝑅 = frec((𝑥 ∈ (ℤ≥‘𝐶), 𝑦 ∈ 𝑆 ↦ 〈(𝑥 + 1), (𝑥𝐹𝑦)〉), 〈𝐶, 𝐴〉) ⇒ ⊢ ((𝜑 ∧ 𝐷 ∈ ω) → (𝑅‘𝐷) ∈ ((ℤ≥‘𝐶) × 𝑆)) | ||
Theorem | frec2uzrdg 10344* | A helper lemma for the value of a recursive definition generator on upper integers (typically either ℕ or ℕ0) with characteristic function 𝐹(𝑥, 𝑦) and initial value 𝐴. This lemma shows that evaluating 𝑅 at an element of ω gives an ordered pair whose first element is the index (translated from ω to (ℤ≥‘𝐶)). See comment in frec2uz0d 10334 which describes 𝐺 and the index translation. (Contributed by Jim Kingdon, 24-May-2020.) |
⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) & ⊢ (𝜑 → 𝐴 ∈ 𝑆) & ⊢ ((𝜑 ∧ (𝑥 ∈ (ℤ≥‘𝐶) ∧ 𝑦 ∈ 𝑆)) → (𝑥𝐹𝑦) ∈ 𝑆) & ⊢ 𝑅 = frec((𝑥 ∈ (ℤ≥‘𝐶), 𝑦 ∈ 𝑆 ↦ 〈(𝑥 + 1), (𝑥𝐹𝑦)〉), 〈𝐶, 𝐴〉) & ⊢ (𝜑 → 𝐵 ∈ ω) ⇒ ⊢ (𝜑 → (𝑅‘𝐵) = 〈(𝐺‘𝐵), (2nd ‘(𝑅‘𝐵))〉) | ||
Theorem | frecuzrdgrcl 10345* | The function 𝑅 (used in the definition of the recursive definition generator on upper integers) is a function defined for all natural numbers. (Contributed by Jim Kingdon, 1-Apr-2022.) |
⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) & ⊢ (𝜑 → 𝐴 ∈ 𝑆) & ⊢ ((𝜑 ∧ (𝑥 ∈ (ℤ≥‘𝐶) ∧ 𝑦 ∈ 𝑆)) → (𝑥𝐹𝑦) ∈ 𝑆) & ⊢ 𝑅 = frec((𝑥 ∈ (ℤ≥‘𝐶), 𝑦 ∈ 𝑆 ↦ 〈(𝑥 + 1), (𝑥𝐹𝑦)〉), 〈𝐶, 𝐴〉) ⇒ ⊢ (𝜑 → 𝑅:ω⟶((ℤ≥‘𝐶) × 𝑆)) | ||
Theorem | frecuzrdglem 10346* | A helper lemma for the value of a recursive definition generator on upper integers. (Contributed by Jim Kingdon, 26-May-2020.) |
⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) & ⊢ (𝜑 → 𝐴 ∈ 𝑆) & ⊢ ((𝜑 ∧ (𝑥 ∈ (ℤ≥‘𝐶) ∧ 𝑦 ∈ 𝑆)) → (𝑥𝐹𝑦) ∈ 𝑆) & ⊢ 𝑅 = frec((𝑥 ∈ (ℤ≥‘𝐶), 𝑦 ∈ 𝑆 ↦ 〈(𝑥 + 1), (𝑥𝐹𝑦)〉), 〈𝐶, 𝐴〉) & ⊢ (𝜑 → 𝐵 ∈ (ℤ≥‘𝐶)) ⇒ ⊢ (𝜑 → 〈𝐵, (2nd ‘(𝑅‘(◡𝐺‘𝐵)))〉 ∈ ran 𝑅) | ||
Theorem | frecuzrdgtcl 10347* | The recursive definition generator on upper integers is a function. See comment in frec2uz0d 10334 for the description of 𝐺 as the mapping from ω to (ℤ≥‘𝐶). (Contributed by Jim Kingdon, 26-May-2020.) |
⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) & ⊢ (𝜑 → 𝐴 ∈ 𝑆) & ⊢ ((𝜑 ∧ (𝑥 ∈ (ℤ≥‘𝐶) ∧ 𝑦 ∈ 𝑆)) → (𝑥𝐹𝑦) ∈ 𝑆) & ⊢ 𝑅 = frec((𝑥 ∈ (ℤ≥‘𝐶), 𝑦 ∈ 𝑆 ↦ 〈(𝑥 + 1), (𝑥𝐹𝑦)〉), 〈𝐶, 𝐴〉) & ⊢ (𝜑 → 𝑇 = ran 𝑅) ⇒ ⊢ (𝜑 → 𝑇:(ℤ≥‘𝐶)⟶𝑆) | ||
Theorem | frecuzrdg0 10348* | Initial value of a recursive definition generator on upper integers. See comment in frec2uz0d 10334 for the description of 𝐺 as the mapping from ω to (ℤ≥‘𝐶). (Contributed by Jim Kingdon, 27-May-2020.) |
⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) & ⊢ (𝜑 → 𝐴 ∈ 𝑆) & ⊢ ((𝜑 ∧ (𝑥 ∈ (ℤ≥‘𝐶) ∧ 𝑦 ∈ 𝑆)) → (𝑥𝐹𝑦) ∈ 𝑆) & ⊢ 𝑅 = frec((𝑥 ∈ (ℤ≥‘𝐶), 𝑦 ∈ 𝑆 ↦ 〈(𝑥 + 1), (𝑥𝐹𝑦)〉), 〈𝐶, 𝐴〉) & ⊢ (𝜑 → 𝑇 = ran 𝑅) ⇒ ⊢ (𝜑 → (𝑇‘𝐶) = 𝐴) | ||
Theorem | frecuzrdgsuc 10349* | Successor value of a recursive definition generator on upper integers. See comment in frec2uz0d 10334 for the description of 𝐺 as the mapping from ω to (ℤ≥‘𝐶). (Contributed by Jim Kingdon, 28-May-2020.) |
⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) & ⊢ (𝜑 → 𝐴 ∈ 𝑆) & ⊢ ((𝜑 ∧ (𝑥 ∈ (ℤ≥‘𝐶) ∧ 𝑦 ∈ 𝑆)) → (𝑥𝐹𝑦) ∈ 𝑆) & ⊢ 𝑅 = frec((𝑥 ∈ (ℤ≥‘𝐶), 𝑦 ∈ 𝑆 ↦ 〈(𝑥 + 1), (𝑥𝐹𝑦)〉), 〈𝐶, 𝐴〉) & ⊢ (𝜑 → 𝑇 = ran 𝑅) ⇒ ⊢ ((𝜑 ∧ 𝐵 ∈ (ℤ≥‘𝐶)) → (𝑇‘(𝐵 + 1)) = (𝐵𝐹(𝑇‘𝐵))) | ||
Theorem | frecuzrdgrclt 10350* | The function 𝑅 (used in the definition of the recursive definition generator on upper integers) yields ordered pairs of integers and elements of 𝑆. Similar to frecuzrdgrcl 10345 except that 𝑆 and 𝑇 need not be the same. (Contributed by Jim Kingdon, 22-Apr-2022.) |
⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ (𝜑 → 𝐴 ∈ 𝑆) & ⊢ (𝜑 → 𝑆 ⊆ 𝑇) & ⊢ ((𝜑 ∧ (𝑥 ∈ (ℤ≥‘𝐶) ∧ 𝑦 ∈ 𝑆)) → (𝑥𝐹𝑦) ∈ 𝑆) & ⊢ 𝑅 = frec((𝑥 ∈ (ℤ≥‘𝐶), 𝑦 ∈ 𝑇 ↦ 〈(𝑥 + 1), (𝑥𝐹𝑦)〉), 〈𝐶, 𝐴〉) ⇒ ⊢ (𝜑 → 𝑅:ω⟶((ℤ≥‘𝐶) × 𝑆)) | ||
Theorem | frecuzrdgg 10351* | Lemma for other theorems involving the the recursive definition generator on upper integers. Evaluating 𝑅 at a natural number gives an ordered pair whose first element is the mapping of that natural number via 𝐺. (Contributed by Jim Kingdon, 23-Apr-2022.) |
⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ (𝜑 → 𝐴 ∈ 𝑆) & ⊢ (𝜑 → 𝑆 ⊆ 𝑇) & ⊢ ((𝜑 ∧ (𝑥 ∈ (ℤ≥‘𝐶) ∧ 𝑦 ∈ 𝑆)) → (𝑥𝐹𝑦) ∈ 𝑆) & ⊢ 𝑅 = frec((𝑥 ∈ (ℤ≥‘𝐶), 𝑦 ∈ 𝑇 ↦ 〈(𝑥 + 1), (𝑥𝐹𝑦)〉), 〈𝐶, 𝐴〉) & ⊢ (𝜑 → 𝑁 ∈ ω) & ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) ⇒ ⊢ (𝜑 → (1st ‘(𝑅‘𝑁)) = (𝐺‘𝑁)) | ||
Theorem | frecuzrdgdomlem 10352* | The domain of the result of the recursive definition generator on upper integers. (Contributed by Jim Kingdon, 24-Apr-2022.) |
⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ (𝜑 → 𝐴 ∈ 𝑆) & ⊢ (𝜑 → 𝑆 ⊆ 𝑇) & ⊢ ((𝜑 ∧ (𝑥 ∈ (ℤ≥‘𝐶) ∧ 𝑦 ∈ 𝑆)) → (𝑥𝐹𝑦) ∈ 𝑆) & ⊢ 𝑅 = frec((𝑥 ∈ (ℤ≥‘𝐶), 𝑦 ∈ 𝑇 ↦ 〈(𝑥 + 1), (𝑥𝐹𝑦)〉), 〈𝐶, 𝐴〉) & ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) ⇒ ⊢ (𝜑 → dom ran 𝑅 = (ℤ≥‘𝐶)) | ||
Theorem | frecuzrdgdom 10353* | The domain of the result of the recursive definition generator on upper integers. (Contributed by Jim Kingdon, 24-Apr-2022.) |
⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ (𝜑 → 𝐴 ∈ 𝑆) & ⊢ (𝜑 → 𝑆 ⊆ 𝑇) & ⊢ ((𝜑 ∧ (𝑥 ∈ (ℤ≥‘𝐶) ∧ 𝑦 ∈ 𝑆)) → (𝑥𝐹𝑦) ∈ 𝑆) & ⊢ 𝑅 = frec((𝑥 ∈ (ℤ≥‘𝐶), 𝑦 ∈ 𝑇 ↦ 〈(𝑥 + 1), (𝑥𝐹𝑦)〉), 〈𝐶, 𝐴〉) ⇒ ⊢ (𝜑 → dom ran 𝑅 = (ℤ≥‘𝐶)) | ||
Theorem | frecuzrdgfunlem 10354* | The recursive definition generator on upper integers produces a a function. (Contributed by Jim Kingdon, 24-Apr-2022.) |
⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ (𝜑 → 𝐴 ∈ 𝑆) & ⊢ (𝜑 → 𝑆 ⊆ 𝑇) & ⊢ ((𝜑 ∧ (𝑥 ∈ (ℤ≥‘𝐶) ∧ 𝑦 ∈ 𝑆)) → (𝑥𝐹𝑦) ∈ 𝑆) & ⊢ 𝑅 = frec((𝑥 ∈ (ℤ≥‘𝐶), 𝑦 ∈ 𝑇 ↦ 〈(𝑥 + 1), (𝑥𝐹𝑦)〉), 〈𝐶, 𝐴〉) & ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) ⇒ ⊢ (𝜑 → Fun ran 𝑅) | ||
Theorem | frecuzrdgfun 10355* | The recursive definition generator on upper integers produces a a function. (Contributed by Jim Kingdon, 24-Apr-2022.) |
⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ (𝜑 → 𝐴 ∈ 𝑆) & ⊢ (𝜑 → 𝑆 ⊆ 𝑇) & ⊢ ((𝜑 ∧ (𝑥 ∈ (ℤ≥‘𝐶) ∧ 𝑦 ∈ 𝑆)) → (𝑥𝐹𝑦) ∈ 𝑆) & ⊢ 𝑅 = frec((𝑥 ∈ (ℤ≥‘𝐶), 𝑦 ∈ 𝑇 ↦ 〈(𝑥 + 1), (𝑥𝐹𝑦)〉), 〈𝐶, 𝐴〉) ⇒ ⊢ (𝜑 → Fun ran 𝑅) | ||
Theorem | frecuzrdgtclt 10356* | The recursive definition generator on upper integers is a function. (Contributed by Jim Kingdon, 22-Apr-2022.) |
⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ (𝜑 → 𝐴 ∈ 𝑆) & ⊢ (𝜑 → 𝑆 ⊆ 𝑇) & ⊢ ((𝜑 ∧ (𝑥 ∈ (ℤ≥‘𝐶) ∧ 𝑦 ∈ 𝑆)) → (𝑥𝐹𝑦) ∈ 𝑆) & ⊢ 𝑅 = frec((𝑥 ∈ (ℤ≥‘𝐶), 𝑦 ∈ 𝑇 ↦ 〈(𝑥 + 1), (𝑥𝐹𝑦)〉), 〈𝐶, 𝐴〉) & ⊢ (𝜑 → 𝑃 = ran 𝑅) ⇒ ⊢ (𝜑 → 𝑃:(ℤ≥‘𝐶)⟶𝑆) | ||
Theorem | frecuzrdg0t 10357* | Initial value of a recursive definition generator on upper integers. (Contributed by Jim Kingdon, 28-Apr-2022.) |
⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ (𝜑 → 𝐴 ∈ 𝑆) & ⊢ (𝜑 → 𝑆 ⊆ 𝑇) & ⊢ ((𝜑 ∧ (𝑥 ∈ (ℤ≥‘𝐶) ∧ 𝑦 ∈ 𝑆)) → (𝑥𝐹𝑦) ∈ 𝑆) & ⊢ 𝑅 = frec((𝑥 ∈ (ℤ≥‘𝐶), 𝑦 ∈ 𝑇 ↦ 〈(𝑥 + 1), (𝑥𝐹𝑦)〉), 〈𝐶, 𝐴〉) & ⊢ (𝜑 → 𝑃 = ran 𝑅) ⇒ ⊢ (𝜑 → (𝑃‘𝐶) = 𝐴) | ||
Theorem | frecuzrdgsuctlem 10358* | Successor value of a recursive definition generator on upper integers. See comment in frec2uz0d 10334 for the description of 𝐺 as the mapping from ω to (ℤ≥‘𝐶). (Contributed by Jim Kingdon, 29-Apr-2022.) |
⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ (𝜑 → 𝐴 ∈ 𝑆) & ⊢ (𝜑 → 𝑆 ⊆ 𝑇) & ⊢ ((𝜑 ∧ (𝑥 ∈ (ℤ≥‘𝐶) ∧ 𝑦 ∈ 𝑆)) → (𝑥𝐹𝑦) ∈ 𝑆) & ⊢ 𝑅 = frec((𝑥 ∈ (ℤ≥‘𝐶), 𝑦 ∈ 𝑇 ↦ 〈(𝑥 + 1), (𝑥𝐹𝑦)〉), 〈𝐶, 𝐴〉) & ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) & ⊢ (𝜑 → 𝑃 = ran 𝑅) ⇒ ⊢ ((𝜑 ∧ 𝐵 ∈ (ℤ≥‘𝐶)) → (𝑃‘(𝐵 + 1)) = (𝐵𝐹(𝑃‘𝐵))) | ||
Theorem | frecuzrdgsuct 10359* | Successor value of a recursive definition generator on upper integers. (Contributed by Jim Kingdon, 29-Apr-2022.) |
⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ (𝜑 → 𝐴 ∈ 𝑆) & ⊢ (𝜑 → 𝑆 ⊆ 𝑇) & ⊢ ((𝜑 ∧ (𝑥 ∈ (ℤ≥‘𝐶) ∧ 𝑦 ∈ 𝑆)) → (𝑥𝐹𝑦) ∈ 𝑆) & ⊢ 𝑅 = frec((𝑥 ∈ (ℤ≥‘𝐶), 𝑦 ∈ 𝑇 ↦ 〈(𝑥 + 1), (𝑥𝐹𝑦)〉), 〈𝐶, 𝐴〉) & ⊢ (𝜑 → 𝑃 = ran 𝑅) ⇒ ⊢ ((𝜑 ∧ 𝐵 ∈ (ℤ≥‘𝐶)) → (𝑃‘(𝐵 + 1)) = (𝐵𝐹(𝑃‘𝐵))) | ||
Theorem | uzenom 10360 | An upper integer set is denumerable. (Contributed by Mario Carneiro, 15-Oct-2015.) |
⊢ 𝑍 = (ℤ≥‘𝑀) ⇒ ⊢ (𝑀 ∈ ℤ → 𝑍 ≈ ω) | ||
Theorem | frecfzennn 10361 | The cardinality of a finite set of sequential integers. (See frec2uz0d 10334 for a description of the hypothesis.) (Contributed by Jim Kingdon, 18-May-2020.) |
⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 0) ⇒ ⊢ (𝑁 ∈ ℕ0 → (1...𝑁) ≈ (◡𝐺‘𝑁)) | ||
Theorem | frecfzen2 10362 | The cardinality of a finite set of sequential integers with arbitrary endpoints. (Contributed by Jim Kingdon, 18-May-2020.) |
⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 0) ⇒ ⊢ (𝑁 ∈ (ℤ≥‘𝑀) → (𝑀...𝑁) ≈ (◡𝐺‘((𝑁 + 1) − 𝑀))) | ||
Theorem | frechashgf1o 10363 | 𝐺 maps ω one-to-one onto ℕ0. (Contributed by Jim Kingdon, 19-May-2020.) |
⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 0) ⇒ ⊢ 𝐺:ω–1-1-onto→ℕ0 | ||
Theorem | frec2uzled 10364* | The mapping 𝐺 (see frec2uz0d 10334) preserves order. (Contributed by Jim Kingdon, 24-Feb-2022.) |
⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) & ⊢ (𝜑 → 𝐴 ∈ ω) & ⊢ (𝜑 → 𝐵 ∈ ω) ⇒ ⊢ (𝜑 → (𝐴 ⊆ 𝐵 ↔ (𝐺‘𝐴) ≤ (𝐺‘𝐵))) | ||
Theorem | fzfig 10365 | A finite interval of integers is finite. (Contributed by Jim Kingdon, 19-May-2020.) |
⊢ ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀...𝑁) ∈ Fin) | ||
Theorem | fzfigd 10366 | Deduction form of fzfig 10365. (Contributed by Jim Kingdon, 21-May-2020.) |
⊢ (𝜑 → 𝑀 ∈ ℤ) & ⊢ (𝜑 → 𝑁 ∈ ℤ) ⇒ ⊢ (𝜑 → (𝑀...𝑁) ∈ Fin) | ||
Theorem | fzofig 10367 | Half-open integer sets are finite. (Contributed by Jim Kingdon, 21-May-2020.) |
⊢ ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀..^𝑁) ∈ Fin) | ||
Theorem | nn0ennn 10368 | The nonnegative integers are equinumerous to the positive integers. (Contributed by NM, 19-Jul-2004.) |
⊢ ℕ0 ≈ ℕ | ||
Theorem | nnenom 10369 | The set of positive integers (as a subset of complex numbers) is equinumerous to omega (the set of natural numbers as ordinals). (Contributed by NM, 31-Jul-2004.) (Revised by Mario Carneiro, 15-Sep-2013.) |
⊢ ℕ ≈ ω | ||
Theorem | nnct 10370 | ℕ is dominated by ω. (Contributed by Thierry Arnoux, 29-Dec-2016.) |
⊢ ℕ ≼ ω | ||
Theorem | uzennn 10371 | An upper integer set is equinumerous to the set of natural numbers. (Contributed by Jim Kingdon, 30-Jul-2023.) |
⊢ (𝑀 ∈ ℤ → (ℤ≥‘𝑀) ≈ ℕ) | ||
Theorem | fnn0nninf 10372* | A function from ℕ0 into ℕ∞. (Contributed by Jim Kingdon, 16-Jul-2022.) |
⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 0) & ⊢ 𝐹 = (𝑛 ∈ ω ↦ (𝑖 ∈ ω ↦ if(𝑖 ∈ 𝑛, 1o, ∅))) ⇒ ⊢ (𝐹 ∘ ◡𝐺):ℕ0⟶ℕ∞ | ||
Theorem | fxnn0nninf 10373* | A function from ℕ0* into ℕ∞. (Contributed by Jim Kingdon, 16-Jul-2022.) TODO: use infnninf 7088 instead of infnninfOLD 7089. More generally, this theorem and most theorems in this section could use an extended 𝐺 defined by 𝐺 = (frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 0) ∪ 〈ω, +∞〉) and 𝐹 = (𝑛 ∈ suc ω ↦ (𝑖 ∈ ω ↦ if(𝑖 ∈ 𝑛, 1o, ∅))) as in nnnninf2 7091. |
⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 0) & ⊢ 𝐹 = (𝑛 ∈ ω ↦ (𝑖 ∈ ω ↦ if(𝑖 ∈ 𝑛, 1o, ∅))) & ⊢ 𝐼 = ((𝐹 ∘ ◡𝐺) ∪ {〈+∞, (ω × {1o})〉}) ⇒ ⊢ 𝐼:ℕ0*⟶ℕ∞ | ||
Theorem | 0tonninf 10374* | The mapping of zero into ℕ∞ is the sequence of all zeroes. (Contributed by Jim Kingdon, 17-Jul-2022.) |
⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 0) & ⊢ 𝐹 = (𝑛 ∈ ω ↦ (𝑖 ∈ ω ↦ if(𝑖 ∈ 𝑛, 1o, ∅))) & ⊢ 𝐼 = ((𝐹 ∘ ◡𝐺) ∪ {〈+∞, (ω × {1o})〉}) ⇒ ⊢ (𝐼‘0) = (𝑥 ∈ ω ↦ ∅) | ||
Theorem | 1tonninf 10375* | The mapping of one into ℕ∞ is a sequence which is a one followed by zeroes. (Contributed by Jim Kingdon, 17-Jul-2022.) |
⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 0) & ⊢ 𝐹 = (𝑛 ∈ ω ↦ (𝑖 ∈ ω ↦ if(𝑖 ∈ 𝑛, 1o, ∅))) & ⊢ 𝐼 = ((𝐹 ∘ ◡𝐺) ∪ {〈+∞, (ω × {1o})〉}) ⇒ ⊢ (𝐼‘1) = (𝑥 ∈ ω ↦ if(𝑥 = ∅, 1o, ∅)) | ||
Theorem | inftonninf 10376* | The mapping of +∞ into ℕ∞ is the sequence of all ones. (Contributed by Jim Kingdon, 17-Jul-2022.) |
⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 0) & ⊢ 𝐹 = (𝑛 ∈ ω ↦ (𝑖 ∈ ω ↦ if(𝑖 ∈ 𝑛, 1o, ∅))) & ⊢ 𝐼 = ((𝐹 ∘ ◡𝐺) ∪ {〈+∞, (ω × {1o})〉}) ⇒ ⊢ (𝐼‘+∞) = (𝑥 ∈ ω ↦ 1o) | ||
Theorem | uzsinds 10377* | Strong (or "total") induction principle over an upper set of integers. (Contributed by Scott Fenton, 16-May-2014.) |
⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) & ⊢ (𝑥 = 𝑁 → (𝜑 ↔ 𝜒)) & ⊢ (𝑥 ∈ (ℤ≥‘𝑀) → (∀𝑦 ∈ (𝑀...(𝑥 − 1))𝜓 → 𝜑)) ⇒ ⊢ (𝑁 ∈ (ℤ≥‘𝑀) → 𝜒) | ||
Theorem | nnsinds 10378* | Strong (or "total") induction principle over the naturals. (Contributed by Scott Fenton, 16-May-2014.) |
⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) & ⊢ (𝑥 = 𝑁 → (𝜑 ↔ 𝜒)) & ⊢ (𝑥 ∈ ℕ → (∀𝑦 ∈ (1...(𝑥 − 1))𝜓 → 𝜑)) ⇒ ⊢ (𝑁 ∈ ℕ → 𝜒) | ||
Theorem | nn0sinds 10379* | Strong (or "total") induction principle over the nonnegative integers. (Contributed by Scott Fenton, 16-May-2014.) |
⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) & ⊢ (𝑥 = 𝑁 → (𝜑 ↔ 𝜒)) & ⊢ (𝑥 ∈ ℕ0 → (∀𝑦 ∈ (0...(𝑥 − 1))𝜓 → 𝜑)) ⇒ ⊢ (𝑁 ∈ ℕ0 → 𝜒) | ||
Syntax | cseq 10380 | Extend class notation with recursive sequence builder. |
class seq𝑀( + , 𝐹) | ||
Definition | df-seqfrec 10381* |
Define a general-purpose operation that builds a recursive sequence
(i.e., a function on an upper integer set such as ℕ or ℕ0)
whose value at an index is a function of its previous value and the
value of an input sequence at that index. This definition is
complicated, but fortunately it is not intended to be used directly.
Instead, the only purpose of this definition is to provide us with an
object that has the properties expressed by seqf 10396, seq3-1 10395 and
seq3p1 10397. Typically, those are the main theorems
that would be used in
practice.
The first operand in the parentheses is the operation that is applied to the previous value and the value of the input sequence (second operand). The operand to the left of the parenthesis is the integer to start from. For example, for the operation +, an input sequence 𝐹 with values 1, 1/2, 1/4, 1/8,... would be transformed into the output sequence seq1( + , 𝐹) with values 1, 3/2, 7/4, 15/8,.., so that (seq1( + , 𝐹)‘1) = 1, (seq1( + , 𝐹)‘2) = 3/2, etc. In other words, seq𝑀( + , 𝐹) transforms a sequence 𝐹 into an infinite series. seq𝑀( + , 𝐹) ⇝ 2 means "the sum of F(n) from n = M to infinity is 2". Since limits are unique (climuni 11234), by climdm 11236 the "sum of F(n) from n = 1 to infinity" can be expressed as ( ⇝ ‘seq1( + , 𝐹)) (provided the sequence converges) and evaluates to 2 in this example. Internally, the frec function generates as its values a set of ordered pairs starting at 〈𝑀, (𝐹‘𝑀)〉, with the first member of each pair incremented by one in each successive value. So, the range of frec is exactly the sequence we want, and we just extract the range and throw away the domain. (Contributed by NM, 18-Apr-2005.) (Revised by Jim Kingdon, 4-Nov-2022.) |
⊢ seq𝑀( + , 𝐹) = ran frec((𝑥 ∈ (ℤ≥‘𝑀), 𝑦 ∈ V ↦ 〈(𝑥 + 1), (𝑦 + (𝐹‘(𝑥 + 1)))〉), 〈𝑀, (𝐹‘𝑀)〉) | ||
Theorem | seqex 10382 | Existence of the sequence builder operation. (Contributed by Mario Carneiro, 4-Sep-2013.) |
⊢ seq𝑀( + , 𝐹) ∈ V | ||
Theorem | seqeq1 10383 | Equality theorem for the sequence builder operation. (Contributed by Mario Carneiro, 4-Sep-2013.) |
⊢ (𝑀 = 𝑁 → seq𝑀( + , 𝐹) = seq𝑁( + , 𝐹)) | ||
Theorem | seqeq2 10384 | Equality theorem for the sequence builder operation. (Contributed by Mario Carneiro, 4-Sep-2013.) |
⊢ ( + = 𝑄 → seq𝑀( + , 𝐹) = seq𝑀(𝑄, 𝐹)) | ||
Theorem | seqeq3 10385 | Equality theorem for the sequence builder operation. (Contributed by Mario Carneiro, 4-Sep-2013.) |
⊢ (𝐹 = 𝐺 → seq𝑀( + , 𝐹) = seq𝑀( + , 𝐺)) | ||
Theorem | seqeq1d 10386 | Equality deduction for the sequence builder operation. (Contributed by Mario Carneiro, 7-Sep-2013.) |
⊢ (𝜑 → 𝐴 = 𝐵) ⇒ ⊢ (𝜑 → seq𝐴( + , 𝐹) = seq𝐵( + , 𝐹)) | ||
Theorem | seqeq2d 10387 | Equality deduction for the sequence builder operation. (Contributed by Mario Carneiro, 7-Sep-2013.) |
⊢ (𝜑 → 𝐴 = 𝐵) ⇒ ⊢ (𝜑 → seq𝑀(𝐴, 𝐹) = seq𝑀(𝐵, 𝐹)) | ||
Theorem | seqeq3d 10388 | Equality deduction for the sequence builder operation. (Contributed by Mario Carneiro, 7-Sep-2013.) |
⊢ (𝜑 → 𝐴 = 𝐵) ⇒ ⊢ (𝜑 → seq𝑀( + , 𝐴) = seq𝑀( + , 𝐵)) | ||
Theorem | seqeq123d 10389 | Equality deduction for the sequence builder operation. (Contributed by Mario Carneiro, 7-Sep-2013.) |
⊢ (𝜑 → 𝑀 = 𝑁) & ⊢ (𝜑 → + = 𝑄) & ⊢ (𝜑 → 𝐹 = 𝐺) ⇒ ⊢ (𝜑 → seq𝑀( + , 𝐹) = seq𝑁(𝑄, 𝐺)) | ||
Theorem | nfseq 10390 | Hypothesis builder for the sequence builder operation. (Contributed by Mario Carneiro, 24-Jun-2013.) (Revised by Mario Carneiro, 15-Oct-2016.) |
⊢ Ⅎ𝑥𝑀 & ⊢ Ⅎ𝑥 + & ⊢ Ⅎ𝑥𝐹 ⇒ ⊢ Ⅎ𝑥seq𝑀( + , 𝐹) | ||
Theorem | iseqovex 10391* | Closure of a function used in proving sequence builder theorems. This can be thought of as a lemma for the small number of sequence builder theorems which need it. (Contributed by Jim Kingdon, 31-May-2020.) |
⊢ ((𝜑 ∧ 𝑥 ∈ (ℤ≥‘𝑀)) → (𝐹‘𝑥) ∈ 𝑆) & ⊢ ((𝜑 ∧ (𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆)) → (𝑥 + 𝑦) ∈ 𝑆) ⇒ ⊢ ((𝜑 ∧ (𝑥 ∈ (ℤ≥‘𝑀) ∧ 𝑦 ∈ 𝑆)) → (𝑥(𝑧 ∈ (ℤ≥‘𝑀), 𝑤 ∈ 𝑆 ↦ (𝑤 + (𝐹‘(𝑧 + 1))))𝑦) ∈ 𝑆) | ||
Theorem | iseqvalcbv 10392* | Changing the bound variables in an expression which appears in some seq related proofs. (Contributed by Jim Kingdon, 28-Apr-2022.) |
⊢ frec((𝑥 ∈ (ℤ≥‘𝑀), 𝑦 ∈ 𝑇 ↦ 〈(𝑥 + 1), (𝑥(𝑧 ∈ (ℤ≥‘𝑀), 𝑤 ∈ 𝑆 ↦ (𝑤 + (𝐹‘(𝑧 + 1))))𝑦)〉), 〈𝑀, (𝐹‘𝑀)〉) = frec((𝑎 ∈ (ℤ≥‘𝑀), 𝑏 ∈ 𝑇 ↦ 〈(𝑎 + 1), (𝑎(𝑐 ∈ (ℤ≥‘𝑀), 𝑑 ∈ 𝑆 ↦ (𝑑 + (𝐹‘(𝑐 + 1))))𝑏)〉), 〈𝑀, (𝐹‘𝑀)〉) | ||
Theorem | seq3val 10393* | Value of the sequence builder function. This helps expand the definition although there should be little need for it once we have proved seqf 10396, seq3-1 10395 and seq3p1 10397, as further development can be done in terms of those. (Contributed by Mario Carneiro, 24-Jun-2013.) (Revised by Jim Kingdon, 4-Nov-2022.) |
⊢ (𝜑 → 𝑀 ∈ ℤ) & ⊢ 𝑅 = frec((𝑥 ∈ (ℤ≥‘𝑀), 𝑦 ∈ V ↦ 〈(𝑥 + 1), (𝑥(𝑧 ∈ (ℤ≥‘𝑀), 𝑤 ∈ 𝑆 ↦ (𝑤 + (𝐹‘(𝑧 + 1))))𝑦)〉), 〈𝑀, (𝐹‘𝑀)〉) & ⊢ ((𝜑 ∧ 𝑥 ∈ (ℤ≥‘𝑀)) → (𝐹‘𝑥) ∈ 𝑆) & ⊢ ((𝜑 ∧ (𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆)) → (𝑥 + 𝑦) ∈ 𝑆) ⇒ ⊢ (𝜑 → seq𝑀( + , 𝐹) = ran 𝑅) | ||
Theorem | seqvalcd 10394* | Value of the sequence builder function. Similar to seq3val 10393 but the classes 𝐷 (type of each term) and 𝐶 (type of the value we are accumulating) do not need to be the same. (Contributed by Jim Kingdon, 9-Jul-2023.) |
⊢ (𝜑 → 𝑀 ∈ ℤ) & ⊢ 𝑅 = frec((𝑥 ∈ (ℤ≥‘𝑀), 𝑦 ∈ V ↦ 〈(𝑥 + 1), (𝑥(𝑧 ∈ (ℤ≥‘𝑀), 𝑤 ∈ 𝐶 ↦ (𝑤 + (𝐹‘(𝑧 + 1))))𝑦)〉), 〈𝑀, (𝐹‘𝑀)〉) & ⊢ (𝜑 → (𝐹‘𝑀) ∈ 𝐶) & ⊢ ((𝜑 ∧ (𝑥 ∈ 𝐶 ∧ 𝑦 ∈ 𝐷)) → (𝑥 + 𝑦) ∈ 𝐶) & ⊢ ((𝜑 ∧ 𝑥 ∈ (ℤ≥‘(𝑀 + 1))) → (𝐹‘𝑥) ∈ 𝐷) ⇒ ⊢ (𝜑 → seq𝑀( + , 𝐹) = ran 𝑅) | ||
Theorem | seq3-1 10395* | Value of the sequence builder function at its initial value. (Contributed by Jim Kingdon, 3-Oct-2022.) |
⊢ (𝜑 → 𝑀 ∈ ℤ) & ⊢ ((𝜑 ∧ 𝑥 ∈ (ℤ≥‘𝑀)) → (𝐹‘𝑥) ∈ 𝑆) & ⊢ ((𝜑 ∧ (𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆)) → (𝑥 + 𝑦) ∈ 𝑆) ⇒ ⊢ (𝜑 → (seq𝑀( + , 𝐹)‘𝑀) = (𝐹‘𝑀)) | ||
Theorem | seqf 10396* | Range of the recursive sequence builder. (Contributed by Mario Carneiro, 24-Jun-2013.) |
⊢ 𝑍 = (ℤ≥‘𝑀) & ⊢ (𝜑 → 𝑀 ∈ ℤ) & ⊢ ((𝜑 ∧ 𝑥 ∈ 𝑍) → (𝐹‘𝑥) ∈ 𝑆) & ⊢ ((𝜑 ∧ (𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆)) → (𝑥 + 𝑦) ∈ 𝑆) ⇒ ⊢ (𝜑 → seq𝑀( + , 𝐹):𝑍⟶𝑆) | ||
Theorem | seq3p1 10397* | Value of the sequence builder function at a successor. (Contributed by Jim Kingdon, 30-Apr-2022.) |
⊢ (𝜑 → 𝑁 ∈ (ℤ≥‘𝑀)) & ⊢ ((𝜑 ∧ 𝑥 ∈ (ℤ≥‘𝑀)) → (𝐹‘𝑥) ∈ 𝑆) & ⊢ ((𝜑 ∧ (𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆)) → (𝑥 + 𝑦) ∈ 𝑆) ⇒ ⊢ (𝜑 → (seq𝑀( + , 𝐹)‘(𝑁 + 1)) = ((seq𝑀( + , 𝐹)‘𝑁) + (𝐹‘(𝑁 + 1)))) | ||
Theorem | seqovcd 10398* | A closure law for the recursive sequence builder. This is a lemma for theorems such as seqf2 10399 and seq1cd 10400 and is unlikely to be needed once such theorems are proved. (Contributed by Jim Kingdon, 20-Jul-2023.) |
⊢ ((𝜑 ∧ 𝑥 ∈ (ℤ≥‘(𝑀 + 1))) → (𝐹‘𝑥) ∈ 𝐷) & ⊢ ((𝜑 ∧ (𝑥 ∈ 𝐶 ∧ 𝑦 ∈ 𝐷)) → (𝑥 + 𝑦) ∈ 𝐶) ⇒ ⊢ ((𝜑 ∧ (𝑥 ∈ (ℤ≥‘𝑀) ∧ 𝑦 ∈ 𝐶)) → (𝑥(𝑧 ∈ (ℤ≥‘𝑀), 𝑤 ∈ 𝐶 ↦ (𝑤 + (𝐹‘(𝑧 + 1))))𝑦) ∈ 𝐶) | ||
Theorem | seqf2 10399* | Range of the recursive sequence builder. (Contributed by Mario Carneiro, 24-Jun-2013.) (Revised by Jim Kingdon, 7-Jul-2023.) |
⊢ (𝜑 → (𝐹‘𝑀) ∈ 𝐶) & ⊢ ((𝜑 ∧ (𝑥 ∈ 𝐶 ∧ 𝑦 ∈ 𝐷)) → (𝑥 + 𝑦) ∈ 𝐶) & ⊢ 𝑍 = (ℤ≥‘𝑀) & ⊢ (𝜑 → 𝑀 ∈ ℤ) & ⊢ ((𝜑 ∧ 𝑥 ∈ (ℤ≥‘(𝑀 + 1))) → (𝐹‘𝑥) ∈ 𝐷) ⇒ ⊢ (𝜑 → seq𝑀( + , 𝐹):𝑍⟶𝐶) | ||
Theorem | seq1cd 10400* | Initial value of the recursive sequence builder. A version of seq3-1 10395 which provides two classes 𝐷 and 𝐶 for the terms and the value being accumulated, respectively. (Contributed by Jim Kingdon, 19-Jul-2023.) |
⊢ (𝜑 → (𝐹‘𝑀) ∈ 𝐶) & ⊢ ((𝜑 ∧ (𝑥 ∈ 𝐶 ∧ 𝑦 ∈ 𝐷)) → (𝑥 + 𝑦) ∈ 𝐶) & ⊢ (𝜑 → 𝑀 ∈ ℤ) & ⊢ ((𝜑 ∧ 𝑥 ∈ (ℤ≥‘(𝑀 + 1))) → (𝐹‘𝑥) ∈ 𝐷) ⇒ ⊢ (𝜑 → (seq𝑀( + , 𝐹)‘𝑀) = (𝐹‘𝑀)) |
< Previous Next > |
Copyright terms: Public domain | < Previous Next > |