| Intuitionistic Logic Explorer Theorem List (p. 109 of 172) | < 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 | modqsub12d 10801 | Subtraction property of the modulo operation. (Contributed by Jim Kingdon, 25-Oct-2021.) |
| ⊢ (𝜑 → 𝐴 ∈ ℚ) & ⊢ (𝜑 → 𝐵 ∈ ℚ) & ⊢ (𝜑 → 𝐶 ∈ ℚ) & ⊢ (𝜑 → 𝐷 ∈ ℚ) & ⊢ (𝜑 → 𝐸 ∈ ℚ) & ⊢ (𝜑 → 0 < 𝐸) & ⊢ (𝜑 → (𝐴 mod 𝐸) = (𝐵 mod 𝐸)) & ⊢ (𝜑 → (𝐶 mod 𝐸) = (𝐷 mod 𝐸)) ⇒ ⊢ (𝜑 → ((𝐴 − 𝐶) mod 𝐸) = ((𝐵 − 𝐷) mod 𝐸)) | ||
| Theorem | modqsubmod 10802 | 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 10803 | 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 10804 | Two times a positive number modulo the number is zero. (Contributed by Jim Kingdon, 25-Oct-2021.) |
| ⊢ ((𝑋 ∈ ℚ ∧ 0 < 𝑋) → ((2 · 𝑋) mod 𝑋) = 0) | ||
| Theorem | q2submod 10805 | 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 10806 | 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 10807 | 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 10808 | 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 10809 | 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 10810 | 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 10811 | 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 10812 | Distribute multiplication over a modulo operation. (Contributed by Jim Kingdon, 26-Oct-2021.) |
| ⊢ (((𝐴 ∈ ℚ ∧ 0 < 𝐴) ∧ 𝐵 ∈ ℚ ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → (𝐴 · (𝐵 mod 𝐶)) = ((𝐴 · 𝐵) mod (𝐴 · 𝐶))) | ||
| Theorem | modqsubdir 10813 | Distribute the modulo operation over a subtraction. (Contributed by Jim Kingdon, 26-Oct-2021.) |
| ⊢ (((𝐴 ∈ ℚ ∧ 𝐵 ∈ ℚ) ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → ((𝐵 mod 𝐶) ≤ (𝐴 mod 𝐶) ↔ ((𝐴 − 𝐵) mod 𝐶) = ((𝐴 mod 𝐶) − (𝐵 mod 𝐶)))) | ||
| Theorem | modqeqmodmin 10814 | 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 10815* | 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 10816 | 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 10817 | 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 10818 | 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 10819* | 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 10820* | The value of 𝐺 (see frec2uz0d 10819) is an integer. (Contributed by Jim Kingdon, 16-May-2020.) |
| ⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) & ⊢ (𝜑 → 𝐴 ∈ ω) ⇒ ⊢ (𝜑 → (𝐺‘𝐴) ∈ ℤ) | ||
| Theorem | frec2uzsucd 10821* | The value of 𝐺 (see frec2uz0d 10819) at a successor. (Contributed by Jim Kingdon, 16-May-2020.) |
| ⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) & ⊢ (𝜑 → 𝐴 ∈ ω) ⇒ ⊢ (𝜑 → (𝐺‘suc 𝐴) = ((𝐺‘𝐴) + 1)) | ||
| Theorem | frec2uzuzd 10822* | The value 𝐺 (see frec2uz0d 10819) at an ordinal natural number is in the upper integers. (Contributed by Jim Kingdon, 16-May-2020.) |
| ⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) & ⊢ (𝜑 → 𝐴 ∈ ω) ⇒ ⊢ (𝜑 → (𝐺‘𝐴) ∈ (ℤ≥‘𝐶)) | ||
| Theorem | frec2uzltd 10823* | Less-than relation for 𝐺 (see frec2uz0d 10819). (Contributed by Jim Kingdon, 16-May-2020.) |
| ⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) & ⊢ (𝜑 → 𝐴 ∈ ω) & ⊢ (𝜑 → 𝐵 ∈ ω) ⇒ ⊢ (𝜑 → (𝐴 ∈ 𝐵 → (𝐺‘𝐴) < (𝐺‘𝐵))) | ||
| Theorem | frec2uzlt2d 10824* | The mapping 𝐺 (see frec2uz0d 10819) preserves order. (Contributed by Jim Kingdon, 16-May-2020.) |
| ⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) & ⊢ (𝜑 → 𝐴 ∈ ω) & ⊢ (𝜑 → 𝐵 ∈ ω) ⇒ ⊢ (𝜑 → (𝐴 ∈ 𝐵 ↔ (𝐺‘𝐴) < (𝐺‘𝐵))) | ||
| Theorem | frec2uzrand 10825* | Range of 𝐺 (see frec2uz0d 10819). (Contributed by Jim Kingdon, 17-May-2020.) |
| ⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) ⇒ ⊢ (𝜑 → ran 𝐺 = (ℤ≥‘𝐶)) | ||
| Theorem | frec2uzf1od 10826* | 𝐺 (see frec2uz0d 10819) is a one-to-one onto mapping. (Contributed by Jim Kingdon, 17-May-2020.) |
| ⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) ⇒ ⊢ (𝜑 → 𝐺:ω–1-1-onto→(ℤ≥‘𝐶)) | ||
| Theorem | frec2uzisod 10827* | 𝐺 (see frec2uz0d 10819) is an isomorphism from natural ordinals to upper integers. (Contributed by Jim Kingdon, 17-May-2020.) |
| ⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) ⇒ ⊢ (𝜑 → 𝐺 Isom E , < (ω, (ℤ≥‘𝐶))) | ||
| Theorem | frecuzrdgrrn 10828* | 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 10829* | 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 10819 which describes 𝐺 and the index translation. (Contributed by Jim Kingdon, 24-May-2020.) |
| ⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) & ⊢ (𝜑 → 𝐴 ∈ 𝑆) & ⊢ ((𝜑 ∧ (𝑥 ∈ (ℤ≥‘𝐶) ∧ 𝑦 ∈ 𝑆)) → (𝑥𝐹𝑦) ∈ 𝑆) & ⊢ 𝑅 = frec((𝑥 ∈ (ℤ≥‘𝐶), 𝑦 ∈ 𝑆 ↦ 〈(𝑥 + 1), (𝑥𝐹𝑦)〉), 〈𝐶, 𝐴〉) & ⊢ (𝜑 → 𝐵 ∈ ω) ⇒ ⊢ (𝜑 → (𝑅‘𝐵) = 〈(𝐺‘𝐵), (2nd ‘(𝑅‘𝐵))〉) | ||
| Theorem | frecuzrdgrcl 10830* | 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 10831* | 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 10832* | The recursive definition generator on upper integers is a function. See comment in frec2uz0d 10819 for the description of 𝐺 as the mapping from ω to (ℤ≥‘𝐶). (Contributed by Jim Kingdon, 26-May-2020.) |
| ⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) & ⊢ (𝜑 → 𝐴 ∈ 𝑆) & ⊢ ((𝜑 ∧ (𝑥 ∈ (ℤ≥‘𝐶) ∧ 𝑦 ∈ 𝑆)) → (𝑥𝐹𝑦) ∈ 𝑆) & ⊢ 𝑅 = frec((𝑥 ∈ (ℤ≥‘𝐶), 𝑦 ∈ 𝑆 ↦ 〈(𝑥 + 1), (𝑥𝐹𝑦)〉), 〈𝐶, 𝐴〉) & ⊢ (𝜑 → 𝑇 = ran 𝑅) ⇒ ⊢ (𝜑 → 𝑇:(ℤ≥‘𝐶)⟶𝑆) | ||
| Theorem | frecuzrdg0 10833* | Initial value of a recursive definition generator on upper integers. See comment in frec2uz0d 10819 for the description of 𝐺 as the mapping from ω to (ℤ≥‘𝐶). (Contributed by Jim Kingdon, 27-May-2020.) |
| ⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) & ⊢ (𝜑 → 𝐴 ∈ 𝑆) & ⊢ ((𝜑 ∧ (𝑥 ∈ (ℤ≥‘𝐶) ∧ 𝑦 ∈ 𝑆)) → (𝑥𝐹𝑦) ∈ 𝑆) & ⊢ 𝑅 = frec((𝑥 ∈ (ℤ≥‘𝐶), 𝑦 ∈ 𝑆 ↦ 〈(𝑥 + 1), (𝑥𝐹𝑦)〉), 〈𝐶, 𝐴〉) & ⊢ (𝜑 → 𝑇 = ran 𝑅) ⇒ ⊢ (𝜑 → (𝑇‘𝐶) = 𝐴) | ||
| Theorem | frecuzrdgsuc 10834* | Successor value of a recursive definition generator on upper integers. See comment in frec2uz0d 10819 for the description of 𝐺 as the mapping from ω to (ℤ≥‘𝐶). (Contributed by Jim Kingdon, 28-May-2020.) |
| ⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) & ⊢ (𝜑 → 𝐴 ∈ 𝑆) & ⊢ ((𝜑 ∧ (𝑥 ∈ (ℤ≥‘𝐶) ∧ 𝑦 ∈ 𝑆)) → (𝑥𝐹𝑦) ∈ 𝑆) & ⊢ 𝑅 = frec((𝑥 ∈ (ℤ≥‘𝐶), 𝑦 ∈ 𝑆 ↦ 〈(𝑥 + 1), (𝑥𝐹𝑦)〉), 〈𝐶, 𝐴〉) & ⊢ (𝜑 → 𝑇 = ran 𝑅) ⇒ ⊢ ((𝜑 ∧ 𝐵 ∈ (ℤ≥‘𝐶)) → (𝑇‘(𝐵 + 1)) = (𝐵𝐹(𝑇‘𝐵))) | ||
| Theorem | frecuzrdgrclt 10835* | 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 10830 except that 𝑆 and 𝑇 need not be the same. (Contributed by Jim Kingdon, 22-Apr-2022.) |
| ⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ (𝜑 → 𝐴 ∈ 𝑆) & ⊢ (𝜑 → 𝑆 ⊆ 𝑇) & ⊢ ((𝜑 ∧ (𝑥 ∈ (ℤ≥‘𝐶) ∧ 𝑦 ∈ 𝑆)) → (𝑥𝐹𝑦) ∈ 𝑆) & ⊢ 𝑅 = frec((𝑥 ∈ (ℤ≥‘𝐶), 𝑦 ∈ 𝑇 ↦ 〈(𝑥 + 1), (𝑥𝐹𝑦)〉), 〈𝐶, 𝐴〉) ⇒ ⊢ (𝜑 → 𝑅:ω⟶((ℤ≥‘𝐶) × 𝑆)) | ||
| Theorem | frecuzrdgg 10836* | 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 10837* | 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 10838* | 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 10839* | 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 10840* | The recursive definition generator on upper integers produces a a function. (Contributed by Jim Kingdon, 24-Apr-2022.) |
| ⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ (𝜑 → 𝐴 ∈ 𝑆) & ⊢ (𝜑 → 𝑆 ⊆ 𝑇) & ⊢ ((𝜑 ∧ (𝑥 ∈ (ℤ≥‘𝐶) ∧ 𝑦 ∈ 𝑆)) → (𝑥𝐹𝑦) ∈ 𝑆) & ⊢ 𝑅 = frec((𝑥 ∈ (ℤ≥‘𝐶), 𝑦 ∈ 𝑇 ↦ 〈(𝑥 + 1), (𝑥𝐹𝑦)〉), 〈𝐶, 𝐴〉) ⇒ ⊢ (𝜑 → Fun ran 𝑅) | ||
| Theorem | frecuzrdgtclt 10841* | The recursive definition generator on upper integers is a function. (Contributed by Jim Kingdon, 22-Apr-2022.) |
| ⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ (𝜑 → 𝐴 ∈ 𝑆) & ⊢ (𝜑 → 𝑆 ⊆ 𝑇) & ⊢ ((𝜑 ∧ (𝑥 ∈ (ℤ≥‘𝐶) ∧ 𝑦 ∈ 𝑆)) → (𝑥𝐹𝑦) ∈ 𝑆) & ⊢ 𝑅 = frec((𝑥 ∈ (ℤ≥‘𝐶), 𝑦 ∈ 𝑇 ↦ 〈(𝑥 + 1), (𝑥𝐹𝑦)〉), 〈𝐶, 𝐴〉) & ⊢ (𝜑 → 𝑃 = ran 𝑅) ⇒ ⊢ (𝜑 → 𝑃:(ℤ≥‘𝐶)⟶𝑆) | ||
| Theorem | frecuzrdg0t 10842* | Initial value of a recursive definition generator on upper integers. (Contributed by Jim Kingdon, 28-Apr-2022.) |
| ⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ (𝜑 → 𝐴 ∈ 𝑆) & ⊢ (𝜑 → 𝑆 ⊆ 𝑇) & ⊢ ((𝜑 ∧ (𝑥 ∈ (ℤ≥‘𝐶) ∧ 𝑦 ∈ 𝑆)) → (𝑥𝐹𝑦) ∈ 𝑆) & ⊢ 𝑅 = frec((𝑥 ∈ (ℤ≥‘𝐶), 𝑦 ∈ 𝑇 ↦ 〈(𝑥 + 1), (𝑥𝐹𝑦)〉), 〈𝐶, 𝐴〉) & ⊢ (𝜑 → 𝑃 = ran 𝑅) ⇒ ⊢ (𝜑 → (𝑃‘𝐶) = 𝐴) | ||
| Theorem | frecuzrdgsuctlem 10843* | Successor value of a recursive definition generator on upper integers. See comment in frec2uz0d 10819 for the description of 𝐺 as the mapping from ω to (ℤ≥‘𝐶). (Contributed by Jim Kingdon, 29-Apr-2022.) |
| ⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ (𝜑 → 𝐴 ∈ 𝑆) & ⊢ (𝜑 → 𝑆 ⊆ 𝑇) & ⊢ ((𝜑 ∧ (𝑥 ∈ (ℤ≥‘𝐶) ∧ 𝑦 ∈ 𝑆)) → (𝑥𝐹𝑦) ∈ 𝑆) & ⊢ 𝑅 = frec((𝑥 ∈ (ℤ≥‘𝐶), 𝑦 ∈ 𝑇 ↦ 〈(𝑥 + 1), (𝑥𝐹𝑦)〉), 〈𝐶, 𝐴〉) & ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) & ⊢ (𝜑 → 𝑃 = ran 𝑅) ⇒ ⊢ ((𝜑 ∧ 𝐵 ∈ (ℤ≥‘𝐶)) → (𝑃‘(𝐵 + 1)) = (𝐵𝐹(𝑃‘𝐵))) | ||
| Theorem | frecuzrdgsuct 10844* | Successor value of a recursive definition generator on upper integers. (Contributed by Jim Kingdon, 29-Apr-2022.) |
| ⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ (𝜑 → 𝐴 ∈ 𝑆) & ⊢ (𝜑 → 𝑆 ⊆ 𝑇) & ⊢ ((𝜑 ∧ (𝑥 ∈ (ℤ≥‘𝐶) ∧ 𝑦 ∈ 𝑆)) → (𝑥𝐹𝑦) ∈ 𝑆) & ⊢ 𝑅 = frec((𝑥 ∈ (ℤ≥‘𝐶), 𝑦 ∈ 𝑇 ↦ 〈(𝑥 + 1), (𝑥𝐹𝑦)〉), 〈𝐶, 𝐴〉) & ⊢ (𝜑 → 𝑃 = ran 𝑅) ⇒ ⊢ ((𝜑 ∧ 𝐵 ∈ (ℤ≥‘𝐶)) → (𝑃‘(𝐵 + 1)) = (𝐵𝐹(𝑃‘𝐵))) | ||
| Theorem | uzenom 10845 | An upper integer set is denumerable. (Contributed by Mario Carneiro, 15-Oct-2015.) |
| ⊢ 𝑍 = (ℤ≥‘𝑀) ⇒ ⊢ (𝑀 ∈ ℤ → 𝑍 ≈ ω) | ||
| Theorem | frecfzennn 10846 | The cardinality of a finite set of sequential integers. (See frec2uz0d 10819 for a description of the hypothesis.) (Contributed by Jim Kingdon, 18-May-2020.) |
| ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 0) ⇒ ⊢ (𝑁 ∈ ℕ0 → (1...𝑁) ≈ (◡𝐺‘𝑁)) | ||
| Theorem | frecfzen2 10847 | 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 10848 | 𝐺 maps ω one-to-one onto ℕ0. (Contributed by Jim Kingdon, 19-May-2020.) |
| ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 0) ⇒ ⊢ 𝐺:ω–1-1-onto→ℕ0 | ||
| Theorem | frec2uzled 10849* | The mapping 𝐺 (see frec2uz0d 10819) preserves order. (Contributed by Jim Kingdon, 24-Feb-2022.) |
| ⊢ (𝜑 → 𝐶 ∈ ℤ) & ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 𝐶) & ⊢ (𝜑 → 𝐴 ∈ ω) & ⊢ (𝜑 → 𝐵 ∈ ω) ⇒ ⊢ (𝜑 → (𝐴 ⊆ 𝐵 ↔ (𝐺‘𝐴) ≤ (𝐺‘𝐵))) | ||
| Theorem | fzfig 10850 | A finite interval of integers is finite. (Contributed by Jim Kingdon, 19-May-2020.) |
| ⊢ ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀...𝑁) ∈ Fin) | ||
| Theorem | fzfigd 10851 | Deduction form of fzfig 10850. (Contributed by Jim Kingdon, 21-May-2020.) |
| ⊢ (𝜑 → 𝑀 ∈ ℤ) & ⊢ (𝜑 → 𝑁 ∈ ℤ) ⇒ ⊢ (𝜑 → (𝑀...𝑁) ∈ Fin) | ||
| Theorem | fzofig 10852 | Half-open integer sets are finite. (Contributed by Jim Kingdon, 21-May-2020.) |
| ⊢ ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀..^𝑁) ∈ Fin) | ||
| Theorem | nn0ennn 10853 | The nonnegative integers are equinumerous to the positive integers. (Contributed by NM, 19-Jul-2004.) |
| ⊢ ℕ0 ≈ ℕ | ||
| Theorem | nnenom 10854 | 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 10855 | ℕ is dominated by ω. (Contributed by Thierry Arnoux, 29-Dec-2016.) |
| ⊢ ℕ ≼ ω | ||
| Theorem | uzennn 10856 | An upper integer set is equinumerous to the set of natural numbers. (Contributed by Jim Kingdon, 30-Jul-2023.) |
| ⊢ (𝑀 ∈ ℤ → (ℤ≥‘𝑀) ≈ ℕ) | ||
| Theorem | xnn0nnen 10857 | The set of extended nonnegative integers is equinumerous to the set of natural numbers. (Contributed by Jim Kingdon, 14-Jul-2025.) |
| ⊢ ℕ0* ≈ ℕ | ||
| Theorem | fnn0nninf 10858* | A function from ℕ0 into ℕ∞. (Contributed by Jim Kingdon, 16-Jul-2022.) |
| ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 0) & ⊢ 𝐹 = (𝑛 ∈ ω ↦ (𝑖 ∈ ω ↦ if(𝑖 ∈ 𝑛, 1o, ∅))) ⇒ ⊢ (𝐹 ∘ ◡𝐺):ℕ0⟶ℕ∞ | ||
| Theorem | fxnn0nninf 10859* | A function from ℕ0* into ℕ∞. (Contributed by Jim Kingdon, 16-Jul-2022.) TODO: use infnninf 7458 instead of infnninfOLD 7459. 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 7461. |
| ⊢ 𝐺 = frec((𝑥 ∈ ℤ ↦ (𝑥 + 1)), 0) & ⊢ 𝐹 = (𝑛 ∈ ω ↦ (𝑖 ∈ ω ↦ if(𝑖 ∈ 𝑛, 1o, ∅))) & ⊢ 𝐼 = ((𝐹 ∘ ◡𝐺) ∪ {〈+∞, (ω × {1o})〉}) ⇒ ⊢ 𝐼:ℕ0*⟶ℕ∞ | ||
| Theorem | 0tonninf 10860* | 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 10861* | 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 10862* | 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 | nninfinf 10863 | ℕ∞ is infinte. (Contributed by Jim Kingdon, 8-Jul-2025.) |
| ⊢ ω ≼ ℕ∞ | ||
| Theorem | uzsinds 10864* | Strong (or "total") induction principle over an upper set of integers. (Contributed by Scott Fenton, 16-May-2014.) |
| ⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) & ⊢ (𝑥 = 𝑁 → (𝜑 ↔ 𝜒)) & ⊢ (𝑥 ∈ (ℤ≥‘𝑀) → (∀𝑦 ∈ (𝑀...(𝑥 − 1))𝜓 → 𝜑)) ⇒ ⊢ (𝑁 ∈ (ℤ≥‘𝑀) → 𝜒) | ||
| Theorem | nnsinds 10865* | Strong (or "total") induction principle over the naturals. (Contributed by Scott Fenton, 16-May-2014.) |
| ⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) & ⊢ (𝑥 = 𝑁 → (𝜑 ↔ 𝜒)) & ⊢ (𝑥 ∈ ℕ → (∀𝑦 ∈ (1...(𝑥 − 1))𝜓 → 𝜑)) ⇒ ⊢ (𝑁 ∈ ℕ → 𝜒) | ||
| Theorem | nn0sinds 10866* | Strong (or "total") induction principle over the nonnegative integers. (Contributed by Scott Fenton, 16-May-2014.) |
| ⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜓)) & ⊢ (𝑥 = 𝑁 → (𝜑 ↔ 𝜒)) & ⊢ (𝑥 ∈ ℕ0 → (∀𝑦 ∈ (0...(𝑥 − 1))𝜓 → 𝜑)) ⇒ ⊢ (𝑁 ∈ ℕ0 → 𝜒) | ||
| Syntax | cseq 10867 | Extend class notation with recursive sequence builder. |
| class seq𝑀( + , 𝐹) | ||
| Definition | df-seqfrec 10868* |
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 10884, seq3-1 10882 and
seq3p1 10885. 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 12042), by climdm 12044 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 10869 | Existence of the sequence builder operation. (Contributed by Mario Carneiro, 4-Sep-2013.) |
| ⊢ seq𝑀( + , 𝐹) ∈ V | ||
| Theorem | seqeq1 10870 | Equality theorem for the sequence builder operation. (Contributed by Mario Carneiro, 4-Sep-2013.) |
| ⊢ (𝑀 = 𝑁 → seq𝑀( + , 𝐹) = seq𝑁( + , 𝐹)) | ||
| Theorem | seqeq2 10871 | Equality theorem for the sequence builder operation. (Contributed by Mario Carneiro, 4-Sep-2013.) |
| ⊢ ( + = 𝑄 → seq𝑀( + , 𝐹) = seq𝑀(𝑄, 𝐹)) | ||
| Theorem | seqeq3 10872 | Equality theorem for the sequence builder operation. (Contributed by Mario Carneiro, 4-Sep-2013.) |
| ⊢ (𝐹 = 𝐺 → seq𝑀( + , 𝐹) = seq𝑀( + , 𝐺)) | ||
| Theorem | seqeq1d 10873 | Equality deduction for the sequence builder operation. (Contributed by Mario Carneiro, 7-Sep-2013.) |
| ⊢ (𝜑 → 𝐴 = 𝐵) ⇒ ⊢ (𝜑 → seq𝐴( + , 𝐹) = seq𝐵( + , 𝐹)) | ||
| Theorem | seqeq2d 10874 | Equality deduction for the sequence builder operation. (Contributed by Mario Carneiro, 7-Sep-2013.) |
| ⊢ (𝜑 → 𝐴 = 𝐵) ⇒ ⊢ (𝜑 → seq𝑀(𝐴, 𝐹) = seq𝑀(𝐵, 𝐹)) | ||
| Theorem | seqeq3d 10875 | Equality deduction for the sequence builder operation. (Contributed by Mario Carneiro, 7-Sep-2013.) |
| ⊢ (𝜑 → 𝐴 = 𝐵) ⇒ ⊢ (𝜑 → seq𝑀( + , 𝐴) = seq𝑀( + , 𝐵)) | ||
| Theorem | seqeq123d 10876 | Equality deduction for the sequence builder operation. (Contributed by Mario Carneiro, 7-Sep-2013.) |
| ⊢ (𝜑 → 𝑀 = 𝑁) & ⊢ (𝜑 → + = 𝑄) & ⊢ (𝜑 → 𝐹 = 𝐺) ⇒ ⊢ (𝜑 → seq𝑀( + , 𝐹) = seq𝑁(𝑄, 𝐺)) | ||
| Theorem | nfseq 10877 | Hypothesis builder for the sequence builder operation. (Contributed by Mario Carneiro, 24-Jun-2013.) (Revised by Mario Carneiro, 15-Oct-2016.) |
| ⊢ Ⅎ𝑥𝑀 & ⊢ Ⅎ𝑥 + & ⊢ Ⅎ𝑥𝐹 ⇒ ⊢ Ⅎ𝑥seq𝑀( + , 𝐹) | ||
| Theorem | iseqovex 10878* | 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 10879* | 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 10880* | Value of the sequence builder function. This helps expand the definition although there should be little need for it once we have proved seqf 10884, seq3-1 10882 and seq3p1 10885, 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 10881* | Value of the sequence builder function. Similar to seq3val 10880 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 10882* | Value of the sequence builder function at its initial value. (Contributed by Jim Kingdon, 3-Oct-2022.) |
| ⊢ (𝜑 → 𝑀 ∈ ℤ) & ⊢ ((𝜑 ∧ 𝑥 ∈ (ℤ≥‘𝑀)) → (𝐹‘𝑥) ∈ 𝑆) & ⊢ ((𝜑 ∧ (𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆)) → (𝑥 + 𝑦) ∈ 𝑆) ⇒ ⊢ (𝜑 → (seq𝑀( + , 𝐹)‘𝑀) = (𝐹‘𝑀)) | ||
| Theorem | seq1g 10883 | Value of the sequence builder function at its initial value. (Contributed by Mario Carneiro, 24-Jun-2013.) (Revised by Jim Kingdon, 19-Aug-2025.) |
| ⊢ ((𝑀 ∈ ℤ ∧ 𝐹 ∈ 𝑉 ∧ + ∈ 𝑊) → (seq𝑀( + , 𝐹)‘𝑀) = (𝐹‘𝑀)) | ||
| Theorem | seqf 10884* | Range of the recursive sequence builder. (Contributed by Mario Carneiro, 24-Jun-2013.) |
| ⊢ 𝑍 = (ℤ≥‘𝑀) & ⊢ (𝜑 → 𝑀 ∈ ℤ) & ⊢ ((𝜑 ∧ 𝑥 ∈ 𝑍) → (𝐹‘𝑥) ∈ 𝑆) & ⊢ ((𝜑 ∧ (𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆)) → (𝑥 + 𝑦) ∈ 𝑆) ⇒ ⊢ (𝜑 → seq𝑀( + , 𝐹):𝑍⟶𝑆) | ||
| Theorem | seq3p1 10885* | Value of the sequence builder function at a successor. (Contributed by Jim Kingdon, 30-Apr-2022.) |
| ⊢ (𝜑 → 𝑁 ∈ (ℤ≥‘𝑀)) & ⊢ ((𝜑 ∧ 𝑥 ∈ (ℤ≥‘𝑀)) → (𝐹‘𝑥) ∈ 𝑆) & ⊢ ((𝜑 ∧ (𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆)) → (𝑥 + 𝑦) ∈ 𝑆) ⇒ ⊢ (𝜑 → (seq𝑀( + , 𝐹)‘(𝑁 + 1)) = ((seq𝑀( + , 𝐹)‘𝑁) + (𝐹‘(𝑁 + 1)))) | ||
| Theorem | seqp1g 10886 | Value of the sequence builder function at a successor. (Contributed by Mario Carneiro, 24-Jun-2013.) (Revised by Jim Kingdon, 19-Aug-2025.) |
| ⊢ ((𝑁 ∈ (ℤ≥‘𝑀) ∧ 𝐹 ∈ 𝑉 ∧ + ∈ 𝑊) → (seq𝑀( + , 𝐹)‘(𝑁 + 1)) = ((seq𝑀( + , 𝐹)‘𝑁) + (𝐹‘(𝑁 + 1)))) | ||
| Theorem | seqovcd 10887* | A closure law for the recursive sequence builder. This is a lemma for theorems such as seqf2 10888 and seq1cd 10889 and is unlikely to be needed once such theorems are proved. (Contributed by Jim Kingdon, 20-Jul-2023.) |
| ⊢ ((𝜑 ∧ 𝑥 ∈ (ℤ≥‘(𝑀 + 1))) → (𝐹‘𝑥) ∈ 𝐷) & ⊢ ((𝜑 ∧ (𝑥 ∈ 𝐶 ∧ 𝑦 ∈ 𝐷)) → (𝑥 + 𝑦) ∈ 𝐶) ⇒ ⊢ ((𝜑 ∧ (𝑥 ∈ (ℤ≥‘𝑀) ∧ 𝑦 ∈ 𝐶)) → (𝑥(𝑧 ∈ (ℤ≥‘𝑀), 𝑤 ∈ 𝐶 ↦ (𝑤 + (𝐹‘(𝑧 + 1))))𝑦) ∈ 𝐶) | ||
| Theorem | seqf2 10888* | Range of the recursive sequence builder. (Contributed by Mario Carneiro, 24-Jun-2013.) (Revised by Jim Kingdon, 7-Jul-2023.) |
| ⊢ (𝜑 → (𝐹‘𝑀) ∈ 𝐶) & ⊢ ((𝜑 ∧ (𝑥 ∈ 𝐶 ∧ 𝑦 ∈ 𝐷)) → (𝑥 + 𝑦) ∈ 𝐶) & ⊢ 𝑍 = (ℤ≥‘𝑀) & ⊢ (𝜑 → 𝑀 ∈ ℤ) & ⊢ ((𝜑 ∧ 𝑥 ∈ (ℤ≥‘(𝑀 + 1))) → (𝐹‘𝑥) ∈ 𝐷) ⇒ ⊢ (𝜑 → seq𝑀( + , 𝐹):𝑍⟶𝐶) | ||
| Theorem | seq1cd 10889* | Initial value of the recursive sequence builder. A version of seq3-1 10882 which provides two classes 𝐷 and 𝐶 for the terms and the value being accumulated, respectively. (Contributed by Jim Kingdon, 19-Jul-2023.) |
| ⊢ (𝜑 → (𝐹‘𝑀) ∈ 𝐶) & ⊢ ((𝜑 ∧ (𝑥 ∈ 𝐶 ∧ 𝑦 ∈ 𝐷)) → (𝑥 + 𝑦) ∈ 𝐶) & ⊢ (𝜑 → 𝑀 ∈ ℤ) & ⊢ ((𝜑 ∧ 𝑥 ∈ (ℤ≥‘(𝑀 + 1))) → (𝐹‘𝑥) ∈ 𝐷) ⇒ ⊢ (𝜑 → (seq𝑀( + , 𝐹)‘𝑀) = (𝐹‘𝑀)) | ||
| Theorem | seqp1cd 10890* | Value of the sequence builder function at a successor. A version of seq3p1 10885 which provides two classes 𝐷 and 𝐶 for the terms and the value being accumulated, respectively. (Contributed by Jim Kingdon, 20-Jul-2023.) |
| ⊢ (𝜑 → 𝑁 ∈ (ℤ≥‘𝑀)) & ⊢ (𝜑 → (𝐹‘𝑀) ∈ 𝐶) & ⊢ ((𝜑 ∧ (𝑥 ∈ 𝐶 ∧ 𝑦 ∈ 𝐷)) → (𝑥 + 𝑦) ∈ 𝐶) & ⊢ ((𝜑 ∧ 𝑥 ∈ (ℤ≥‘(𝑀 + 1))) → (𝐹‘𝑥) ∈ 𝐷) ⇒ ⊢ (𝜑 → (seq𝑀( + , 𝐹)‘(𝑁 + 1)) = ((seq𝑀( + , 𝐹)‘𝑁) + (𝐹‘(𝑁 + 1)))) | ||
| Theorem | seq3clss 10891* | Closure property of the recursive sequence builder. (Contributed by Jim Kingdon, 28-Sep-2022.) |
| ⊢ (𝜑 → 𝑁 ∈ (ℤ≥‘𝑀)) & ⊢ ((𝜑 ∧ 𝑥 ∈ (ℤ≥‘𝑀)) → (𝐹‘𝑥) ∈ 𝑇) & ⊢ ((𝜑 ∧ 𝑥 ∈ (𝑀...𝑁)) → (𝐹‘𝑥) ∈ 𝑆) & ⊢ ((𝜑 ∧ (𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆)) → (𝑥 + 𝑦) ∈ 𝑆) & ⊢ (𝜑 → 𝑆 ⊆ 𝑇) & ⊢ ((𝜑 ∧ (𝑥 ∈ 𝑇 ∧ 𝑦 ∈ 𝑇)) → (𝑥 + 𝑦) ∈ 𝑇) ⇒ ⊢ (𝜑 → (seq𝑀( + , 𝐹)‘𝑁) ∈ 𝑆) | ||
| Theorem | seqclg 10892* | Closure properties of the recursive sequence builder. (Contributed by Mario Carneiro, 2-Jul-2013.) (Revised by Mario Carneiro, 27-May-2014.) |
| ⊢ (𝜑 → 𝑁 ∈ (ℤ≥‘𝑀)) & ⊢ ((𝜑 ∧ 𝑥 ∈ (𝑀...𝑁)) → (𝐹‘𝑥) ∈ 𝑆) & ⊢ ((𝜑 ∧ (𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆)) → (𝑥 + 𝑦) ∈ 𝑆) & ⊢ (𝜑 → 𝐹 ∈ 𝑉) & ⊢ (𝜑 → + ∈ 𝑊) ⇒ ⊢ (𝜑 → (seq𝑀( + , 𝐹)‘𝑁) ∈ 𝑆) | ||
| Theorem | seq3m1 10893* | Value of the sequence builder function at a successor. (Contributed by Mario Carneiro, 24-Jun-2013.) (Revised by Jim Kingdon, 3-Nov-2022.) |
| ⊢ (𝜑 → 𝑀 ∈ ℤ) & ⊢ (𝜑 → 𝑁 ∈ (ℤ≥‘(𝑀 + 1))) & ⊢ ((𝜑 ∧ 𝑥 ∈ (ℤ≥‘𝑀)) → (𝐹‘𝑥) ∈ 𝑆) & ⊢ ((𝜑 ∧ (𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆)) → (𝑥 + 𝑦) ∈ 𝑆) ⇒ ⊢ (𝜑 → (seq𝑀( + , 𝐹)‘𝑁) = ((seq𝑀( + , 𝐹)‘(𝑁 − 1)) + (𝐹‘𝑁))) | ||
| Theorem | seqm1g 10894 | Value of the sequence builder function at a successor. (Contributed by Mario Carneiro, 24-Jun-2013.) (Revised by Jim Kingdon, 30-Aug-2025.) |
| ⊢ (𝜑 → 𝑀 ∈ ℤ) & ⊢ (𝜑 → 𝑁 ∈ (ℤ≥‘(𝑀 + 1))) & ⊢ (𝜑 → + ∈ 𝑉) & ⊢ (𝜑 → 𝐹 ∈ 𝑊) ⇒ ⊢ (𝜑 → (seq𝑀( + , 𝐹)‘𝑁) = ((seq𝑀( + , 𝐹)‘(𝑁 − 1)) + (𝐹‘𝑁))) | ||
| Theorem | seq3fveq2 10895* | Equality of sequences. (Contributed by Jim Kingdon, 3-Jun-2020.) |
| ⊢ (𝜑 → 𝐾 ∈ (ℤ≥‘𝑀)) & ⊢ (𝜑 → (seq𝑀( + , 𝐹)‘𝐾) = (𝐺‘𝐾)) & ⊢ ((𝜑 ∧ 𝑥 ∈ (ℤ≥‘𝑀)) → (𝐹‘𝑥) ∈ 𝑆) & ⊢ ((𝜑 ∧ 𝑥 ∈ (ℤ≥‘𝐾)) → (𝐺‘𝑥) ∈ 𝑆) & ⊢ ((𝜑 ∧ (𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆)) → (𝑥 + 𝑦) ∈ 𝑆) & ⊢ (𝜑 → 𝑁 ∈ (ℤ≥‘𝐾)) & ⊢ ((𝜑 ∧ 𝑘 ∈ ((𝐾 + 1)...𝑁)) → (𝐹‘𝑘) = (𝐺‘𝑘)) ⇒ ⊢ (𝜑 → (seq𝑀( + , 𝐹)‘𝑁) = (seq𝐾( + , 𝐺)‘𝑁)) | ||
| Theorem | seq3feq2 10896* | Equality of sequences. (Contributed by Jim Kingdon, 3-Jun-2020.) |
| ⊢ (𝜑 → 𝐾 ∈ (ℤ≥‘𝑀)) & ⊢ (𝜑 → (seq𝑀( + , 𝐹)‘𝐾) = (𝐺‘𝐾)) & ⊢ ((𝜑 ∧ 𝑥 ∈ (ℤ≥‘𝑀)) → (𝐹‘𝑥) ∈ 𝑆) & ⊢ ((𝜑 ∧ 𝑥 ∈ (ℤ≥‘𝐾)) → (𝐺‘𝑥) ∈ 𝑆) & ⊢ ((𝜑 ∧ (𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆)) → (𝑥 + 𝑦) ∈ 𝑆) & ⊢ ((𝜑 ∧ 𝑘 ∈ (ℤ≥‘(𝐾 + 1))) → (𝐹‘𝑘) = (𝐺‘𝑘)) ⇒ ⊢ (𝜑 → (seq𝑀( + , 𝐹) ↾ (ℤ≥‘𝐾)) = seq𝐾( + , 𝐺)) | ||
| Theorem | seqfveq2g 10897* | Equality of sequences. (Contributed by NM, 17-Mar-2005.) (Revised by Mario Carneiro, 27-May-2014.) |
| ⊢ (𝜑 → 𝐾 ∈ (ℤ≥‘𝑀)) & ⊢ (𝜑 → (seq𝑀( + , 𝐹)‘𝐾) = (𝐺‘𝐾)) & ⊢ (𝜑 → + ∈ 𝑉) & ⊢ (𝜑 → 𝐹 ∈ 𝑊) & ⊢ (𝜑 → 𝐺 ∈ 𝑋) & ⊢ (𝜑 → 𝑁 ∈ (ℤ≥‘𝐾)) & ⊢ ((𝜑 ∧ 𝑘 ∈ ((𝐾 + 1)...𝑁)) → (𝐹‘𝑘) = (𝐺‘𝑘)) ⇒ ⊢ (𝜑 → (seq𝑀( + , 𝐹)‘𝑁) = (seq𝐾( + , 𝐺)‘𝑁)) | ||
| Theorem | seqfveqg 10898* | Equality of sequences. (Contributed by NM, 17-Mar-2005.) (Revised by Mario Carneiro, 27-May-2014.) |
| ⊢ (𝜑 → 𝑁 ∈ (ℤ≥‘𝑀)) & ⊢ ((𝜑 ∧ 𝑘 ∈ (𝑀...𝑁)) → (𝐹‘𝑘) = (𝐺‘𝑘)) & ⊢ (𝜑 → + ∈ 𝑉) & ⊢ (𝜑 → 𝐹 ∈ 𝑊) & ⊢ (𝜑 → 𝐺 ∈ 𝑋) ⇒ ⊢ (𝜑 → (seq𝑀( + , 𝐹)‘𝑁) = (seq𝑀( + , 𝐺)‘𝑁)) | ||
| Theorem | seq3fveq 10899* | Equality of sequences. (Contributed by Jim Kingdon, 4-Jun-2020.) |
| ⊢ (𝜑 → 𝑁 ∈ (ℤ≥‘𝑀)) & ⊢ ((𝜑 ∧ 𝑘 ∈ (𝑀...𝑁)) → (𝐹‘𝑘) = (𝐺‘𝑘)) & ⊢ ((𝜑 ∧ 𝑥 ∈ (ℤ≥‘𝑀)) → (𝐹‘𝑥) ∈ 𝑆) & ⊢ ((𝜑 ∧ 𝑥 ∈ (ℤ≥‘𝑀)) → (𝐺‘𝑥) ∈ 𝑆) & ⊢ ((𝜑 ∧ (𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆)) → (𝑥 + 𝑦) ∈ 𝑆) ⇒ ⊢ (𝜑 → (seq𝑀( + , 𝐹)‘𝑁) = (seq𝑀( + , 𝐺)‘𝑁)) | ||
| Theorem | seq3feq 10900* | Equality of sequences. (Contributed by Jim Kingdon, 15-Aug-2021.) (Revised by Jim Kingdon, 7-Apr-2023.) |
| ⊢ (𝜑 → 𝑀 ∈ ℤ) & ⊢ ((𝜑 ∧ 𝑥 ∈ (ℤ≥‘𝑀)) → (𝐹‘𝑥) ∈ 𝑆) & ⊢ ((𝜑 ∧ 𝑘 ∈ (ℤ≥‘𝑀)) → (𝐹‘𝑘) = (𝐺‘𝑘)) & ⊢ ((𝜑 ∧ (𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆)) → (𝑥 + 𝑦) ∈ 𝑆) ⇒ ⊢ (𝜑 → seq𝑀( + , 𝐹) = seq𝑀( + , 𝐺)) | ||
| < Previous Next > |
| Copyright terms: Public domain | < Previous Next > |