| Metamath
Proof Explorer Theorem List (p. 330 of 504) | < Previous Next > | |
| Bad symbols? Try the
GIF version. |
||
|
Mirrors > Metamath Home Page > MPE Home Page > Theorem List Contents > Recent Proofs This page: Page List |
||
| Color key: | (1-31014) |
(31015-32537) |
(32538-50302) |
| Type | Label | Description |
|---|---|---|
| Statement | ||
| Theorem | fz1nntr 32901 | NN and integer ranges starting from 1 are a transitive family of set. (Contributed by Thierry Arnoux, 25-Jul-2020.) |
| ⊢ (((𝐴 = ℕ ∨ 𝐴 = (1..^𝑀)) ∧ 𝑁 ∈ 𝐴) → (1..^𝑁) ⊆ 𝐴) | ||
| Theorem | fzo0opth 32902 | Equality for a half open integer range starting at zero is the same as equality of its upper bound, analogous to fzopth 13513 and fzoopth 13715. (Contributed by Thierry Arnoux, 27-May-2025.) |
| ⊢ (𝜑 → 𝑀 ∈ ℕ0) & ⊢ (𝜑 → 𝑁 ∈ ℕ0) ⇒ ⊢ (𝜑 → ((0..^𝑀) = (0..^𝑁) ↔ 𝑀 = 𝑁)) | ||
| Theorem | nn0difffzod 32903 | A nonnegative integer that is not in the half-open range from 0 to 𝑁 is at least 𝑁. (Contributed by Thierry Arnoux, 20-Feb-2025.) |
| ⊢ (𝜑 → 𝑁 ∈ ℤ) & ⊢ (𝜑 → 𝑀 ∈ (ℕ0 ∖ (0..^𝑁))) ⇒ ⊢ (𝜑 → ¬ 𝑀 < 𝑁) | ||
| Theorem | suppssnn0 32904* | Show that the support of a function is contained in an half-open nonnegative integer range. (Contributed by Thierry Arnoux, 20-Feb-2025.) |
| ⊢ (𝜑 → 𝐹 Fn ℕ0) & ⊢ (((𝜑 ∧ 𝑘 ∈ ℕ0) ∧ 𝑁 ≤ 𝑘) → (𝐹‘𝑘) = 𝑍) & ⊢ (𝜑 → 𝑁 ∈ ℤ) ⇒ ⊢ (𝜑 → (𝐹 supp 𝑍) ⊆ (0..^𝑁)) | ||
| Theorem | hashunif 32905* | The cardinality of a disjoint finite union of finite sets. Cf. hashuni 15787. (Contributed by Thierry Arnoux, 17-Feb-2017.) |
| ⊢ Ⅎ𝑥𝜑 & ⊢ (𝜑 → 𝐴 ∈ Fin) & ⊢ (𝜑 → 𝐴 ⊆ Fin) & ⊢ (𝜑 → Disj 𝑥 ∈ 𝐴 𝑥) ⇒ ⊢ (𝜑 → (♯‘∪ 𝐴) = Σ𝑥 ∈ 𝐴 (♯‘𝑥)) | ||
| Theorem | hashxpe 32906 | The size of the Cartesian product of two finite sets is the product of their sizes. This is a version of hashxp 14394 valid for infinite sets, which uses extended real numbers. (Contributed by Thierry Arnoux, 27-May-2023.) |
| ⊢ ((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑊) → (♯‘(𝐴 × 𝐵)) = ((♯‘𝐴) ·e (♯‘𝐵))) | ||
| Theorem | hashgt1 32907 | Restate "set contains at least two elements" in terms of elementhood. (Contributed by Thierry Arnoux, 21-Nov-2023.) |
| ⊢ (𝐴 ∈ 𝑉 → (¬ 𝐴 ∈ (◡♯ “ {0, 1}) ↔ 1 < (♯‘𝐴))) | ||
| Theorem | hashpss 32908 | The size of a proper subset is less than the size of its finite superset. (Contributed by Thierry Arnoux, 13-Oct-2025.) |
| ⊢ ((𝐴 ∈ Fin ∧ 𝐵 ⊊ 𝐴) → (♯‘𝐵) < (♯‘𝐴)) | ||
| Theorem | hashne0 32909 | Deduce that the size of a set is not zero. (Contributed by Thierry Arnoux, 26-Oct-2025.) |
| ⊢ (𝜑 → 𝐴 ∈ 𝑉) & ⊢ (𝜑 → 𝐴 ≠ ∅) ⇒ ⊢ (𝜑 → 0 < (♯‘𝐴)) | ||
| Theorem | hashimaf1 32910 | Taking the image of a set by a one-to-one function does not affect size. (Contributed by Thierry Arnoux, 18-Jan-2026.) |
| ⊢ (𝜑 → 𝐹:𝐴–1-1→𝐵) & ⊢ (𝜑 → 𝐶 ⊆ 𝐴) & ⊢ (𝜑 → 𝐴 ∈ 𝑉) ⇒ ⊢ (𝜑 → (♯‘(𝐹 “ 𝐶)) = (♯‘𝐶)) | ||
| Theorem | elq2 32911* | Elementhood in the rational numbers, providing the canonical representation. (Contributed by Thierry Arnoux, 9-Nov-2025.) |
| ⊢ (𝑄 ∈ ℚ → ∃𝑝 ∈ ℤ ∃𝑞 ∈ ℕ (𝑄 = (𝑝 / 𝑞) ∧ (𝑝 gcd 𝑞) = 1)) | ||
| Theorem | znumd 32912 | Numerator of an integer. (Contributed by Thierry Arnoux, 4-May-2025.) |
| ⊢ (𝜑 → 𝑍 ∈ ℤ) ⇒ ⊢ (𝜑 → (numer‘𝑍) = 𝑍) | ||
| Theorem | zdend 32913 | Denominator of an integer. (Contributed by Thierry Arnoux, 4-May-2025.) |
| ⊢ (𝜑 → 𝑍 ∈ ℤ) ⇒ ⊢ (𝜑 → (denom‘𝑍) = 1) | ||
| Theorem | numdenneg 32914 | Numerator and denominator of the negative. (Contributed by Thierry Arnoux, 27-Oct-2017.) |
| ⊢ (𝑄 ∈ ℚ → ((numer‘-𝑄) = -(numer‘𝑄) ∧ (denom‘-𝑄) = (denom‘𝑄))) | ||
| Theorem | divnumden2 32915 | Calculate the reduced form of a quotient using gcd. This version extends divnumden 16716 for the negative integers. (Contributed by Thierry Arnoux, 25-Oct-2017.) |
| ⊢ ((𝐴 ∈ ℤ ∧ 𝐵 ∈ ℤ ∧ -𝐵 ∈ ℕ) → ((numer‘(𝐴 / 𝐵)) = -(𝐴 / (𝐴 gcd 𝐵)) ∧ (denom‘(𝐴 / 𝐵)) = -(𝐵 / (𝐴 gcd 𝐵)))) | ||
| Theorem | expgt0b 32916 | A real number 𝐴 raised to an odd integer power is positive iff it is positive. (Contributed by SN, 4-Mar-2023.) Use the more standard ¬ 2 ∥ 𝑁 (Revised by Thierry Arnoux, 14-Jun-2025.) |
| ⊢ (𝜑 → 𝐴 ∈ ℝ) & ⊢ (𝜑 → 𝑁 ∈ ℕ) & ⊢ (𝜑 → ¬ 2 ∥ 𝑁) ⇒ ⊢ (𝜑 → (0 < 𝐴 ↔ 0 < (𝐴↑𝑁))) | ||
| Theorem | nn0split01 32917 | Split 0 and 1 from the nonnegative integers. (Contributed by Thierry Arnoux, 8-Jun-2025.) |
| ⊢ ℕ0 = ({0, 1} ∪ (ℤ≥‘2)) | ||
| Theorem | nn0disj01 32918 | The pair {0, 1} does not overlap the rest of the nonnegative integers. (Contributed by Thierry Arnoux, 8-Jun-2025.) |
| ⊢ ({0, 1} ∩ (ℤ≥‘2)) = ∅ | ||
| Theorem | nnindf 32919* | Principle of Mathematical Induction, using a bound-variable hypothesis instead of distinct variables. (Contributed by Thierry Arnoux, 6-May-2018.) |
| ⊢ Ⅎ𝑦𝜑 & ⊢ (𝑥 = 1 → (𝜑 ↔ 𝜓)) & ⊢ (𝑥 = 𝑦 → (𝜑 ↔ 𝜒)) & ⊢ (𝑥 = (𝑦 + 1) → (𝜑 ↔ 𝜃)) & ⊢ (𝑥 = 𝐴 → (𝜑 ↔ 𝜏)) & ⊢ 𝜓 & ⊢ (𝑦 ∈ ℕ → (𝜒 → 𝜃)) ⇒ ⊢ (𝐴 ∈ ℕ → 𝜏) | ||
| Theorem | nn0min 32920* | Extracting the minimum positive integer for which a property 𝜒 does not hold. This uses substitutions similar to nn0ind 12622. (Contributed by Thierry Arnoux, 6-May-2018.) |
| ⊢ (𝑛 = 0 → (𝜓 ↔ 𝜒)) & ⊢ (𝑛 = 𝑚 → (𝜓 ↔ 𝜃)) & ⊢ (𝑛 = (𝑚 + 1) → (𝜓 ↔ 𝜏)) & ⊢ (𝜑 → ¬ 𝜒) & ⊢ (𝜑 → ∃𝑛 ∈ ℕ 𝜓) ⇒ ⊢ (𝜑 → ∃𝑚 ∈ ℕ0 (¬ 𝜃 ∧ 𝜏)) | ||
| Theorem | subne0nn 32921 | A nonnegative difference is positive if the two numbers are not equal. (Contributed by Thierry Arnoux, 17-Dec-2023.) |
| ⊢ (𝜑 → 𝑀 ∈ ℂ) & ⊢ (𝜑 → 𝑁 ∈ ℂ) & ⊢ (𝜑 → (𝑀 − 𝑁) ∈ ℕ0) & ⊢ (𝜑 → 𝑀 ≠ 𝑁) ⇒ ⊢ (𝜑 → (𝑀 − 𝑁) ∈ ℕ) | ||
| Theorem | ltesubnnd 32922 | Subtracting an integer number from another number decreases it. See ltsubrpd 13016. (Contributed by Thierry Arnoux, 18-Apr-2017.) |
| ⊢ (𝜑 → 𝑀 ∈ ℤ) & ⊢ (𝜑 → 𝑁 ∈ ℕ) ⇒ ⊢ (𝜑 → ((𝑀 + 1) − 𝑁) ≤ 𝑀) | ||
| Theorem | fprodeq02 32923* | If one of the factors is zero the product is zero. (Contributed by Thierry Arnoux, 11-Dec-2021.) |
| ⊢ (𝑘 = 𝐾 → 𝐵 = 𝐶) & ⊢ (𝜑 → 𝐴 ∈ Fin) & ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐵 ∈ ℂ) & ⊢ (𝜑 → 𝐾 ∈ 𝐴) & ⊢ (𝜑 → 𝐶 = 0) ⇒ ⊢ (𝜑 → ∏𝑘 ∈ 𝐴 𝐵 = 0) | ||
| Theorem | fprodex01 32924* | A product of factors equal to zero or one is zero exactly when one of the factors is zero. (Contributed by Thierry Arnoux, 11-Dec-2021.) |
| ⊢ (𝑘 = 𝑙 → 𝐵 = 𝐶) & ⊢ (𝜑 → 𝐴 ∈ Fin) & ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐵 ∈ {0, 1}) ⇒ ⊢ (𝜑 → ∏𝑘 ∈ 𝐴 𝐵 = if(∀𝑙 ∈ 𝐴 𝐶 = 1, 1, 0)) | ||
| Theorem | prodpr 32925* | A product over a pair is the product of the elements. (Contributed by Thierry Arnoux, 1-Jan-2022.) |
| ⊢ (𝑘 = 𝐴 → 𝐷 = 𝐸) & ⊢ (𝑘 = 𝐵 → 𝐷 = 𝐹) & ⊢ (𝜑 → 𝐴 ∈ 𝑉) & ⊢ (𝜑 → 𝐵 ∈ 𝑊) & ⊢ (𝜑 → 𝐸 ∈ ℂ) & ⊢ (𝜑 → 𝐹 ∈ ℂ) & ⊢ (𝜑 → 𝐴 ≠ 𝐵) ⇒ ⊢ (𝜑 → ∏𝑘 ∈ {𝐴, 𝐵}𝐷 = (𝐸 · 𝐹)) | ||
| Theorem | prodtp 32926* | A product over a triple is the product of the elements. (Contributed by Thierry Arnoux, 1-Jan-2022.) |
| ⊢ (𝑘 = 𝐴 → 𝐷 = 𝐸) & ⊢ (𝑘 = 𝐵 → 𝐷 = 𝐹) & ⊢ (𝜑 → 𝐴 ∈ 𝑉) & ⊢ (𝜑 → 𝐵 ∈ 𝑊) & ⊢ (𝜑 → 𝐸 ∈ ℂ) & ⊢ (𝜑 → 𝐹 ∈ ℂ) & ⊢ (𝜑 → 𝐴 ≠ 𝐵) & ⊢ (𝑘 = 𝐶 → 𝐷 = 𝐺) & ⊢ (𝜑 → 𝐶 ∈ 𝑋) & ⊢ (𝜑 → 𝐺 ∈ ℂ) & ⊢ (𝜑 → 𝐴 ≠ 𝐶) & ⊢ (𝜑 → 𝐵 ≠ 𝐶) ⇒ ⊢ (𝜑 → ∏𝑘 ∈ {𝐴, 𝐵, 𝐶}𝐷 = ((𝐸 · 𝐹) · 𝐺)) | ||
| Theorem | fsumub 32927* | An upper bound for a term of a positive finite sum. (Contributed by Thierry Arnoux, 27-Dec-2021.) |
| ⊢ (𝑘 = 𝐾 → 𝐵 = 𝐷) & ⊢ (𝜑 → 𝐴 ∈ Fin) & ⊢ (𝜑 → Σ𝑘 ∈ 𝐴 𝐵 = 𝐶) & ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐵 ∈ ℝ+) & ⊢ (𝜑 → 𝐾 ∈ 𝐴) ⇒ ⊢ (𝜑 → 𝐷 ≤ 𝐶) | ||
| Theorem | fsumiunle 32928* | Upper bound for a sum of nonnegative terms over an indexed union. The inequality may be strict if the indexed union is non-disjoint, since in the right hand side, a summand may be counted several times. (Contributed by Thierry Arnoux, 1-Jan-2021.) |
| ⊢ (𝜑 → 𝐴 ∈ Fin) & ⊢ ((𝜑 ∧ 𝑥 ∈ 𝐴) → 𝐵 ∈ Fin) & ⊢ (((𝜑 ∧ 𝑥 ∈ 𝐴) ∧ 𝑘 ∈ 𝐵) → 𝐶 ∈ ℝ) & ⊢ (((𝜑 ∧ 𝑥 ∈ 𝐴) ∧ 𝑘 ∈ 𝐵) → 0 ≤ 𝐶) ⇒ ⊢ (𝜑 → Σ𝑘 ∈ ∪ 𝑥 ∈ 𝐴 𝐵𝐶 ≤ Σ𝑥 ∈ 𝐴 Σ𝑘 ∈ 𝐵 𝐶) | ||
| Theorem | dfdec100 32929 | Split the hundreds from a decimal value. (Contributed by Thierry Arnoux, 25-Dec-2021.) |
| ⊢ 𝐴 ∈ ℕ0 & ⊢ 𝐵 ∈ ℕ0 & ⊢ 𝐶 ∈ ℝ ⇒ ⊢ ;;𝐴𝐵𝐶 = ((;;100 · 𝐴) + ;𝐵𝐶) | ||
| Theorem | sgncl 32930 | Closure of the signum. (Contributed by Thierry Arnoux, 28-Sep-2018.) |
| ⊢ (𝐴 ∈ ℝ* → (sgn‘𝐴) ∈ {-1, 0, 1}) | ||
| Theorem | sgnclre 32931 | Closure of the signum. (Contributed by Thierry Arnoux, 28-Sep-2018.) |
| ⊢ (𝐴 ∈ ℝ → (sgn‘𝐴) ∈ ℝ) | ||
| Theorem | sgnneg 32932 | Negation of the signum. (Contributed by Thierry Arnoux, 1-Oct-2018.) |
| ⊢ (𝐴 ∈ ℝ → (sgn‘-𝐴) = -(sgn‘𝐴)) | ||
| Theorem | sgn3da 32933 | A conditional containing a signum is true if it is true in all three possible cases. (Contributed by Thierry Arnoux, 1-Oct-2018.) |
| ⊢ (𝜑 → 𝐴 ∈ ℝ*) & ⊢ ((sgn‘𝐴) = 0 → (𝜓 ↔ 𝜒)) & ⊢ ((sgn‘𝐴) = 1 → (𝜓 ↔ 𝜃)) & ⊢ ((sgn‘𝐴) = -1 → (𝜓 ↔ 𝜏)) & ⊢ ((𝜑 ∧ 𝐴 = 0) → 𝜒) & ⊢ ((𝜑 ∧ 0 < 𝐴) → 𝜃) & ⊢ ((𝜑 ∧ 𝐴 < 0) → 𝜏) ⇒ ⊢ (𝜑 → 𝜓) | ||
| Theorem | sgnmul 32934 | Signum of a product. (Contributed by Thierry Arnoux, 2-Oct-2018.) |
| ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ) → (sgn‘(𝐴 · 𝐵)) = ((sgn‘𝐴) · (sgn‘𝐵))) | ||
| Theorem | sgnmulrp2 32935 | Multiplication by a positive number does not affect signum. (Contributed by Thierry Arnoux, 2-Oct-2018.) |
| ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → (sgn‘(𝐴 · 𝐵)) = (sgn‘𝐴)) | ||
| Theorem | sgnsub 32936 | Subtraction of a number of opposite sign. (Contributed by Thierry Arnoux, 2-Oct-2018.) |
| ⊢ (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ) ∧ (𝐴 · 𝐵) < 0) → (sgn‘(𝐴 − 𝐵)) = (sgn‘𝐴)) | ||
| Theorem | sgnnbi 32937 | Negative signum. (Contributed by Thierry Arnoux, 2-Oct-2018.) |
| ⊢ (𝐴 ∈ ℝ* → ((sgn‘𝐴) = -1 ↔ 𝐴 < 0)) | ||
| Theorem | sgnpbi 32938 | Positive signum. (Contributed by Thierry Arnoux, 2-Oct-2018.) |
| ⊢ (𝐴 ∈ ℝ* → ((sgn‘𝐴) = 1 ↔ 0 < 𝐴)) | ||
| Theorem | sgn0bi 32939 | Zero signum. (Contributed by Thierry Arnoux, 10-Oct-2018.) |
| ⊢ (𝐴 ∈ ℝ* → ((sgn‘𝐴) = 0 ↔ 𝐴 = 0)) | ||
| Theorem | sgnsgn 32940 | Signum is idempotent. (Contributed by Thierry Arnoux, 2-Oct-2018.) |
| ⊢ (𝐴 ∈ ℝ* → (sgn‘(sgn‘𝐴)) = (sgn‘𝐴)) | ||
| Theorem | sgnmulsgn 32941 | If two real numbers are of different signs, so are their signs. (Contributed by Thierry Arnoux, 12-Oct-2018.) |
| ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ) → ((𝐴 · 𝐵) < 0 ↔ ((sgn‘𝐴) · (sgn‘𝐵)) < 0)) | ||
| Theorem | sgnmulsgp 32942 | If two real numbers are of same signs, so are their signs. (Contributed by Thierry Arnoux, 12-Oct-2018.) |
| ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ) → (0 < (𝐴 · 𝐵) ↔ 0 < ((sgn‘𝐴) · (sgn‘𝐵)))) | ||
| Theorem | nexple 32943 | A lower bound for an exponentiation. (Contributed by Thierry Arnoux, 19-Aug-2017.) |
| ⊢ ((𝐴 ∈ ℕ0 ∧ 𝐵 ∈ ℝ ∧ 2 ≤ 𝐵) → 𝐴 ≤ (𝐵↑𝐴)) | ||
| Theorem | 2exple2exp 32944* | If a nonnegative integer 𝑋 is a multiple of a power of two, but less than the next power of two, it is itself a power of two. (Contributed by Thierry Arnoux, 19-Oct-2025.) |
| ⊢ (𝜑 → 𝑋 ∈ ℕ) & ⊢ (𝜑 → 𝐾 ∈ ℕ0) & ⊢ (𝜑 → (2↑𝐾) ∥ 𝑋) & ⊢ (𝜑 → 𝑋 ≤ (2↑(𝐾 + 1))) ⇒ ⊢ (𝜑 → ∃𝑛 ∈ ℕ0 𝑋 = (2↑𝑛)) | ||
| Theorem | expevenpos 32945 | Even powers are positive. (Contributed by Thierry Arnoux, 9-Nov-2025.) |
| ⊢ (𝜑 → 𝐴 ∈ ℝ) & ⊢ (𝜑 → 𝑁 ∈ ℕ0) & ⊢ (𝜑 → 2 ∥ 𝑁) ⇒ ⊢ (𝜑 → 0 ≤ (𝐴↑𝑁)) | ||
| Theorem | oexpled 32946 | Odd power monomials are monotonic. (Contributed by Thierry Arnoux, 9-Nov-2025.) |
| ⊢ (𝜑 → 𝐴 ∈ ℝ) & ⊢ (𝜑 → 𝐵 ∈ ℝ) & ⊢ (𝜑 → 𝑁 ∈ ℕ) & ⊢ (𝜑 → ¬ 2 ∥ 𝑁) & ⊢ (𝜑 → 𝐴 ≤ 𝐵) ⇒ ⊢ (𝜑 → (𝐴↑𝑁) ≤ (𝐵↑𝑁)) | ||
| Theorem | indsumin 32947* | Finite sum of a product with the indicator function / Cartesian product with the indicator function. (Contributed by Thierry Arnoux, 11-Dec-2021.) |
| ⊢ (𝜑 → 𝑂 ∈ 𝑉) & ⊢ (𝜑 → 𝐴 ∈ Fin) & ⊢ (𝜑 → 𝐴 ⊆ 𝑂) & ⊢ (𝜑 → 𝐵 ⊆ 𝑂) & ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐶 ∈ ℂ) ⇒ ⊢ (𝜑 → Σ𝑘 ∈ 𝐴 ((((𝟭‘𝑂)‘𝐵)‘𝑘) · 𝐶) = Σ𝑘 ∈ (𝐴 ∩ 𝐵)𝐶) | ||
| Theorem | prodindf 32948* | The product of indicators is one if and only if all values are in the set. (Contributed by Thierry Arnoux, 11-Dec-2021.) |
| ⊢ (𝜑 → 𝑂 ∈ 𝑉) & ⊢ (𝜑 → 𝐴 ∈ Fin) & ⊢ (𝜑 → 𝐵 ⊆ 𝑂) & ⊢ (𝜑 → 𝐹:𝐴⟶𝑂) ⇒ ⊢ (𝜑 → ∏𝑘 ∈ 𝐴 (((𝟭‘𝑂)‘𝐵)‘(𝐹‘𝑘)) = if(ran 𝐹 ⊆ 𝐵, 1, 0)) | ||
| Theorem | indsn 32949* | The indicator function of a singleton. (Contributed by Thierry Arnoux, 15-Feb-2026.) |
| ⊢ ((𝑂 ∈ 𝑉 ∧ 𝑋 ∈ 𝑂) → ((𝟭‘𝑂)‘{𝑋}) = (𝑥 ∈ 𝑂 ↦ if(𝑥 = 𝑋, 1, 0))) | ||
| Theorem | indf1o 32950 | The bijection between a power set and the set of indicator functions. (Contributed by Thierry Arnoux, 14-Aug-2017.) |
| ⊢ (𝑂 ∈ 𝑉 → (𝟭‘𝑂):𝒫 𝑂–1-1-onto→({0, 1} ↑m 𝑂)) | ||
| Theorem | indpreima 32951 | A function with range {0, 1} as an indicator of the preimage of {1}. (Contributed by Thierry Arnoux, 23-Aug-2017.) |
| ⊢ ((𝑂 ∈ 𝑉 ∧ 𝐹:𝑂⟶{0, 1}) → 𝐹 = ((𝟭‘𝑂)‘(◡𝐹 “ {1}))) | ||
| Theorem | indf1ofs 32952* | The bijection between finite subsets and the indicator functions with finite support. (Contributed by Thierry Arnoux, 22-Aug-2017.) |
| ⊢ (𝑂 ∈ 𝑉 → ((𝟭‘𝑂) ↾ Fin):(𝒫 𝑂 ∩ Fin)–1-1-onto→{𝑓 ∈ ({0, 1} ↑m 𝑂) ∣ (◡𝑓 “ {1}) ∈ Fin}) | ||
| Theorem | indsupp 32953 | The support of the indicator function. (Contributed by Thierry Arnoux, 13-Oct-2025.) |
| ⊢ ((𝑂 ∈ 𝑉 ∧ 𝐴 ⊆ 𝑂) → (((𝟭‘𝑂)‘𝐴) supp 0) = 𝐴) | ||
| Theorem | indfsd 32954 | The indicator function of a finite set has finite support. (Contributed by Thierry Arnoux, 18-Jan-2026.) |
| ⊢ (𝜑 → 𝑂 ∈ 𝑉) & ⊢ (𝜑 → 𝐴 ⊆ 𝑂) & ⊢ (𝜑 → 𝐴 ∈ Fin) ⇒ ⊢ (𝜑 → ((𝟭‘𝑂)‘𝐴) finSupp 0) | ||
| Theorem | indfsid 32955 | Conditions for a function to be an indicator function. (Contributed by Thierry Arnoux, 18-Jan-2026.) |
| ⊢ (𝜑 → 𝑂 ∈ 𝑉) & ⊢ (𝜑 → 𝐹:𝑂⟶{0, 1}) ⇒ ⊢ (𝜑 → 𝐹 = ((𝟭‘𝑂)‘(𝐹 supp 0))) | ||
Define a decimal expansion constructor. The decimal expansions built with this constructor are not meant to be used alone outside of this chapter. Rather, they are meant to be used exclusively as part of a decimal number with a decimal fraction, for example (3._1_4_1_59). That decimal point operator is defined in the next section. The bulk of these constructions have originally been proposed by David A. Wheeler on 12-May-2015, and discussed with Mario Carneiro in this thread: https://groups.google.com/g/metamath/c/2AW7T3d2YiQ. | ||
| Syntax | cdp2 32956 | Constant used for decimal fraction constructor. See df-dp2 32957. |
| class _𝐴𝐵 | ||
| Definition | df-dp2 32957 | Define the "decimal fraction constructor", which is used to build up "decimal fractions" in base 10. This is intentionally similar to df-dec 12643. (Contributed by David A. Wheeler, 15-May-2015.) (Revised by AV, 9-Sep-2021.) |
| ⊢ _𝐴𝐵 = (𝐴 + (𝐵 / ;10)) | ||
| Theorem | dp2eq1 32958 | Equality theorem for the decimal expansion constructor. (Contributed by David A. Wheeler, 15-May-2015.) |
| ⊢ (𝐴 = 𝐵 → _𝐴𝐶 = _𝐵𝐶) | ||
| Theorem | dp2eq2 32959 | Equality theorem for the decimal expansion constructor. (Contributed by David A. Wheeler, 15-May-2015.) |
| ⊢ (𝐴 = 𝐵 → _𝐶𝐴 = _𝐶𝐵) | ||
| Theorem | dp2eq1i 32960 | Equality theorem for the decimal expansion constructor. (Contributed by David A. Wheeler, 15-May-2015.) |
| ⊢ 𝐴 = 𝐵 ⇒ ⊢ _𝐴𝐶 = _𝐵𝐶 | ||
| Theorem | dp2eq2i 32961 | Equality theorem for the decimal expansion constructor. (Contributed by David A. Wheeler, 15-May-2015.) |
| ⊢ 𝐴 = 𝐵 ⇒ ⊢ _𝐶𝐴 = _𝐶𝐵 | ||
| Theorem | dp2eq12i 32962 | Equality theorem for the decimal expansion constructor. (Contributed by David A. Wheeler, 15-May-2015.) |
| ⊢ 𝐴 = 𝐵 & ⊢ 𝐶 = 𝐷 ⇒ ⊢ _𝐴𝐶 = _𝐵𝐷 | ||
| Theorem | dp20u 32963 | Add a zero in the tenths (lower) place. (Contributed by Thierry Arnoux, 16-Dec-2021.) |
| ⊢ 𝐴 ∈ ℕ0 ⇒ ⊢ _𝐴0 = 𝐴 | ||
| Theorem | dp20h 32964 | Add a zero in the unit places. (Contributed by Thierry Arnoux, 16-Dec-2021.) |
| ⊢ 𝐴 ∈ ℝ+ ⇒ ⊢ _0𝐴 = (𝐴 / ;10) | ||
| Theorem | dp2cl 32965 | Closure for the decimal fraction constructor if both values are reals. (Contributed by David A. Wheeler, 15-May-2015.) |
| ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ) → _𝐴𝐵 ∈ ℝ) | ||
| Theorem | dp2clq 32966 | Closure for a decimal fraction. (Contributed by Thierry Arnoux, 16-Dec-2021.) |
| ⊢ 𝐴 ∈ ℕ0 & ⊢ 𝐵 ∈ ℚ ⇒ ⊢ _𝐴𝐵 ∈ ℚ | ||
| Theorem | rpdp2cl 32967 | Closure for a decimal fraction in the positive real numbers. (Contributed by Thierry Arnoux, 16-Dec-2021.) |
| ⊢ 𝐴 ∈ ℕ0 & ⊢ 𝐵 ∈ ℝ+ ⇒ ⊢ _𝐴𝐵 ∈ ℝ+ | ||
| Theorem | rpdp2cl2 32968 | Closure for a decimal fraction with no decimal expansion in the positive real numbers. (Contributed by Thierry Arnoux, 25-Dec-2021.) |
| ⊢ 𝐴 ∈ ℕ ⇒ ⊢ _𝐴0 ∈ ℝ+ | ||
| Theorem | dp2lt10 32969 | Decimal fraction builds real numbers less than 10. (Contributed by Thierry Arnoux, 16-Dec-2021.) |
| ⊢ 𝐴 ∈ ℕ0 & ⊢ 𝐵 ∈ ℝ+ & ⊢ 𝐴 < ;10 & ⊢ 𝐵 < ;10 ⇒ ⊢ _𝐴𝐵 < ;10 | ||
| Theorem | dp2lt 32970 | Comparing two decimal fractions (equal unit places). (Contributed by Thierry Arnoux, 16-Dec-2021.) |
| ⊢ 𝐴 ∈ ℕ0 & ⊢ 𝐵 ∈ ℝ+ & ⊢ 𝐶 ∈ ℝ+ & ⊢ 𝐵 < 𝐶 ⇒ ⊢ _𝐴𝐵 < _𝐴𝐶 | ||
| Theorem | dp2ltsuc 32971 | Comparing a decimal fraction with the next integer. (Contributed by Thierry Arnoux, 25-Dec-2021.) |
| ⊢ 𝐴 ∈ ℕ0 & ⊢ 𝐵 ∈ ℝ+ & ⊢ 𝐵 < ;10 & ⊢ (𝐴 + 1) = 𝐶 ⇒ ⊢ _𝐴𝐵 < 𝐶 | ||
| Theorem | dp2ltc 32972 | Comparing two decimal expansions (unequal higher places). (Contributed by Thierry Arnoux, 16-Dec-2021.) |
| ⊢ 𝐴 ∈ ℕ0 & ⊢ 𝐵 ∈ ℝ+ & ⊢ 𝐶 ∈ ℕ0 & ⊢ 𝐷 ∈ ℝ+ & ⊢ 𝐵 < ;10 & ⊢ 𝐴 < 𝐶 ⇒ ⊢ _𝐴𝐵 < _𝐶𝐷 | ||
Define the decimal point operator and the decimal fraction constructor. This can model traditional decimal point notation, and serve as a convenient way to write some fractional numbers. See df-dp 32974 and df-dp2 32957 for more information; dpval2 32978 and dpfrac1 32977 provide a more convenient way to obtain a value. This is intentionally similar to df-dec 12643. | ||
| Syntax | cdp 32973 | Decimal point operator. See df-dp 32974. |
| class . | ||
| Definition | df-dp 32974* |
Define the . (decimal point) operator. For example,
(1.5) = (3 / 2), and
-(;32._7_18) =
-(;;;;32718 / ;;;1000)
Unary minus, if applied, should normally be applied in front of the
parentheses.
Metamath intentionally does not have a built-in construct for numbers, so it can show that numbers are something you can build based on set theory. However, that means that Metamath has no built-in way to parse and handle decimal numbers as traditionally written, e.g., "2.54". Here we create a system for modeling traditional decimal point notation; it is not syntactically identical, but it is sufficiently similar so it is a reasonable model of decimal point notation. It should also serve as a convenient way to write some fractional numbers. The RHS is ℝ, not ℚ; this should simplify some proofs. The LHS is ℕ0, since that is what is used in practice. The definition intentionally does not allow negative numbers on the LHS; if it did, nonzero fractions would produce the wrong results. (It would be possible to define the decimal point to do this, but using it would be more complicated, and the expression -(𝐴.𝐵) is just as convenient.) (Contributed by David A. Wheeler, 15-May-2015.) |
| ⊢ . = (𝑥 ∈ ℕ0, 𝑦 ∈ ℝ ↦ _𝑥𝑦) | ||
| Theorem | dpval 32975 | Define the value of the decimal point operator. See df-dp 32974. (Contributed by David A. Wheeler, 15-May-2015.) |
| ⊢ ((𝐴 ∈ ℕ0 ∧ 𝐵 ∈ ℝ) → (𝐴.𝐵) = _𝐴𝐵) | ||
| Theorem | dpcl 32976 | Prove that the closure of the decimal point is ℝ as we have defined it. See df-dp 32974. (Contributed by David A. Wheeler, 15-May-2015.) |
| ⊢ ((𝐴 ∈ ℕ0 ∧ 𝐵 ∈ ℝ) → (𝐴.𝐵) ∈ ℝ) | ||
| Theorem | dpfrac1 32977 | Prove a simple equivalence involving the decimal point. See df-dp 32974 and dpcl 32976. (Contributed by David A. Wheeler, 15-May-2015.) (Revised by AV, 9-Sep-2021.) |
| ⊢ ((𝐴 ∈ ℕ0 ∧ 𝐵 ∈ ℝ) → (𝐴.𝐵) = (;𝐴𝐵 / ;10)) | ||
| Theorem | dpval2 32978 | Value of the decimal point construct. (Contributed by Thierry Arnoux, 16-Dec-2021.) |
| ⊢ 𝐴 ∈ ℕ0 & ⊢ 𝐵 ∈ ℝ ⇒ ⊢ (𝐴.𝐵) = (𝐴 + (𝐵 / ;10)) | ||
| Theorem | dpval3 32979 | Value of the decimal point construct. (Contributed by Thierry Arnoux, 16-Dec-2021.) |
| ⊢ 𝐴 ∈ ℕ0 & ⊢ 𝐵 ∈ ℝ ⇒ ⊢ (𝐴.𝐵) = _𝐴𝐵 | ||
| Theorem | dpmul10 32980 | Multiply by 10 a decimal expansion. (Contributed by Thierry Arnoux, 25-Dec-2021.) |
| ⊢ 𝐴 ∈ ℕ0 & ⊢ 𝐵 ∈ ℝ ⇒ ⊢ ((𝐴.𝐵) · ;10) = ;𝐴𝐵 | ||
| Theorem | decdiv10 32981 | Divide a decimal number by 10. (Contributed by Thierry Arnoux, 25-Dec-2021.) |
| ⊢ 𝐴 ∈ ℕ0 & ⊢ 𝐵 ∈ ℝ ⇒ ⊢ (;𝐴𝐵 / ;10) = (𝐴.𝐵) | ||
| Theorem | dpmul100 32982 | Multiply by 100 a decimal expansion. (Contributed by Thierry Arnoux, 25-Dec-2021.) |
| ⊢ 𝐴 ∈ ℕ0 & ⊢ 𝐵 ∈ ℕ0 & ⊢ 𝐶 ∈ ℝ ⇒ ⊢ ((𝐴._𝐵𝐶) · ;;100) = ;;𝐴𝐵𝐶 | ||
| Theorem | dp3mul10 32983 | Multiply by 10 a decimal expansion with 3 digits. (Contributed by Thierry Arnoux, 25-Dec-2021.) |
| ⊢ 𝐴 ∈ ℕ0 & ⊢ 𝐵 ∈ ℕ0 & ⊢ 𝐶 ∈ ℝ ⇒ ⊢ ((𝐴._𝐵𝐶) · ;10) = (;𝐴𝐵.𝐶) | ||
| Theorem | dpmul1000 32984 | Multiply by 1000 a decimal expansion. (Contributed by Thierry Arnoux, 25-Dec-2021.) |
| ⊢ 𝐴 ∈ ℕ0 & ⊢ 𝐵 ∈ ℕ0 & ⊢ 𝐶 ∈ ℕ0 & ⊢ 𝐷 ∈ ℝ ⇒ ⊢ ((𝐴._𝐵_𝐶𝐷) · ;;;1000) = ;;;𝐴𝐵𝐶𝐷 | ||
| Theorem | dpval3rp 32985 | Value of the decimal point construct. (Contributed by Thierry Arnoux, 16-Dec-2021.) |
| ⊢ 𝐴 ∈ ℕ0 & ⊢ 𝐵 ∈ ℝ+ ⇒ ⊢ (𝐴.𝐵) = _𝐴𝐵 | ||
| Theorem | dp0u 32986 | Add a zero in the tenths place. (Contributed by Thierry Arnoux, 16-Dec-2021.) |
| ⊢ 𝐴 ∈ ℕ0 ⇒ ⊢ (𝐴.0) = 𝐴 | ||
| Theorem | dp0h 32987 | Remove a zero in the units places. (Contributed by Thierry Arnoux, 16-Dec-2021.) |
| ⊢ 𝐴 ∈ ℝ+ ⇒ ⊢ (0.𝐴) = (𝐴 / ;10) | ||
| Theorem | rpdpcl 32988 | Closure of the decimal point in the positive real numbers. (Contributed by Thierry Arnoux, 16-Dec-2021.) |
| ⊢ 𝐴 ∈ ℕ0 & ⊢ 𝐵 ∈ ℝ+ ⇒ ⊢ (𝐴.𝐵) ∈ ℝ+ | ||
| Theorem | dplt 32989 | Comparing two decimal expansions (equal higher places). (Contributed by Thierry Arnoux, 16-Dec-2021.) |
| ⊢ 𝐴 ∈ ℕ0 & ⊢ 𝐵 ∈ ℝ+ & ⊢ 𝐶 ∈ ℝ+ & ⊢ 𝐵 < 𝐶 ⇒ ⊢ (𝐴.𝐵) < (𝐴.𝐶) | ||
| Theorem | dplti 32990 | Comparing a decimal expansions with the next higher integer. (Contributed by Thierry Arnoux, 16-Dec-2021.) |
| ⊢ 𝐴 ∈ ℕ0 & ⊢ 𝐵 ∈ ℝ+ & ⊢ 𝐶 ∈ ℕ0 & ⊢ 𝐵 < ;10 & ⊢ (𝐴 + 1) = 𝐶 ⇒ ⊢ (𝐴.𝐵) < 𝐶 | ||
| Theorem | dpgti 32991 | Comparing a decimal expansions with the next lower integer. (Contributed by Thierry Arnoux, 16-Dec-2021.) |
| ⊢ 𝐴 ∈ ℕ0 & ⊢ 𝐵 ∈ ℝ+ ⇒ ⊢ 𝐴 < (𝐴.𝐵) | ||
| Theorem | dpltc 32992 | Comparing two decimal integers (unequal higher places). (Contributed by Thierry Arnoux, 16-Dec-2021.) |
| ⊢ 𝐴 ∈ ℕ0 & ⊢ 𝐵 ∈ ℝ+ & ⊢ 𝐶 ∈ ℕ0 & ⊢ 𝐷 ∈ ℝ+ & ⊢ 𝐴 < 𝐶 & ⊢ 𝐵 < ;10 ⇒ ⊢ (𝐴.𝐵) < (𝐶.𝐷) | ||
| Theorem | dpexpp1 32993 | Add one zero to the mantisse, and a one to the exponent in a scientific notation. (Contributed by Thierry Arnoux, 16-Dec-2021.) |
| ⊢ 𝐴 ∈ ℕ0 & ⊢ 𝐵 ∈ ℝ+ & ⊢ (𝑃 + 1) = 𝑄 & ⊢ 𝑃 ∈ ℤ & ⊢ 𝑄 ∈ ℤ ⇒ ⊢ ((𝐴.𝐵) · (;10↑𝑃)) = ((0._𝐴𝐵) · (;10↑𝑄)) | ||
| Theorem | 0dp2dp 32994 | Multiply by 10 a decimal expansion which starts with a zero. (Contributed by Thierry Arnoux, 16-Dec-2021.) |
| ⊢ 𝐴 ∈ ℕ0 & ⊢ 𝐵 ∈ ℝ+ ⇒ ⊢ ((0._𝐴𝐵) · ;10) = (𝐴.𝐵) | ||
| Theorem | dpadd2 32995 | Addition with one decimal, no carry. (Contributed by Thierry Arnoux, 29-Dec-2021.) |
| ⊢ 𝐴 ∈ ℕ0 & ⊢ 𝐵 ∈ ℝ+ & ⊢ 𝐶 ∈ ℕ0 & ⊢ 𝐷 ∈ ℝ+ & ⊢ 𝐸 ∈ ℕ0 & ⊢ 𝐹 ∈ ℝ+ & ⊢ 𝐺 ∈ ℕ0 & ⊢ 𝐻 ∈ ℕ0 & ⊢ (𝐺 + 𝐻) = 𝐼 & ⊢ ((𝐴.𝐵) + (𝐶.𝐷)) = (𝐸.𝐹) ⇒ ⊢ ((𝐺._𝐴𝐵) + (𝐻._𝐶𝐷)) = (𝐼._𝐸𝐹) | ||
| Theorem | dpadd 32996 | Addition with one decimal. (Contributed by Thierry Arnoux, 27-Dec-2021.) |
| ⊢ 𝐴 ∈ ℕ0 & ⊢ 𝐵 ∈ ℕ0 & ⊢ 𝐶 ∈ ℕ0 & ⊢ 𝐷 ∈ ℕ0 & ⊢ 𝐸 ∈ ℕ0 & ⊢ 𝐹 ∈ ℕ0 & ⊢ (;𝐴𝐵 + ;𝐶𝐷) = ;𝐸𝐹 ⇒ ⊢ ((𝐴.𝐵) + (𝐶.𝐷)) = (𝐸.𝐹) | ||
| Theorem | dpadd3 32997 | Addition with two decimals. (Contributed by Thierry Arnoux, 27-Dec-2021.) |
| ⊢ 𝐴 ∈ ℕ0 & ⊢ 𝐵 ∈ ℕ0 & ⊢ 𝐶 ∈ ℕ0 & ⊢ 𝐷 ∈ ℕ0 & ⊢ 𝐸 ∈ ℕ0 & ⊢ 𝐺 ∈ ℕ0 & ⊢ 𝐹 ∈ ℕ0 & ⊢ 𝐻 ∈ ℕ0 & ⊢ 𝐼 ∈ ℕ0 & ⊢ (;;𝐴𝐵𝐶 + ;;𝐷𝐸𝐹) = ;;𝐺𝐻𝐼 ⇒ ⊢ ((𝐴._𝐵𝐶) + (𝐷._𝐸𝐹)) = (𝐺._𝐻𝐼) | ||
| Theorem | dpmul 32998 | Multiplication with one decimal point. (Contributed by Thierry Arnoux, 26-Dec-2021.) |
| ⊢ 𝐴 ∈ ℕ0 & ⊢ 𝐵 ∈ ℕ0 & ⊢ 𝐶 ∈ ℕ0 & ⊢ 𝐷 ∈ ℕ0 & ⊢ 𝐸 ∈ ℕ0 & ⊢ 𝐺 ∈ ℕ0 & ⊢ 𝐽 ∈ ℕ0 & ⊢ 𝐾 ∈ ℕ0 & ⊢ (𝐴 · 𝐶) = 𝐹 & ⊢ (𝐴 · 𝐷) = 𝑀 & ⊢ (𝐵 · 𝐶) = 𝐿 & ⊢ (𝐵 · 𝐷) = ;𝐸𝐾 & ⊢ ((𝐿 + 𝑀) + 𝐸) = ;𝐺𝐽 & ⊢ (𝐹 + 𝐺) = 𝐼 ⇒ ⊢ ((𝐴.𝐵) · (𝐶.𝐷)) = (𝐼._𝐽𝐾) | ||
| Theorem | dpmul4 32999 | An upper bound to multiplication of decimal numbers with 4 digits. (Contributed by Thierry Arnoux, 25-Dec-2021.) |
| ⊢ 𝐴 ∈ ℕ0 & ⊢ 𝐵 ∈ ℕ0 & ⊢ 𝐶 ∈ ℕ0 & ⊢ 𝐷 ∈ ℕ0 & ⊢ 𝐸 ∈ ℕ0 & ⊢ 𝐺 ∈ ℕ0 & ⊢ 𝐽 ∈ ℕ0 & ⊢ 𝐾 ∈ ℕ0 & ⊢ 𝐹 ∈ ℕ0 & ⊢ 𝐻 ∈ ℕ0 & ⊢ 𝐼 ∈ ℕ0 & ⊢ 𝐿 ∈ ℕ0 & ⊢ 𝑀 ∈ ℕ0 & ⊢ 𝑁 ∈ ℕ0 & ⊢ 𝑂 ∈ ℕ0 & ⊢ 𝑃 ∈ ℕ0 & ⊢ 𝑄 ∈ ℕ0 & ⊢ 𝑅 ∈ ℕ0 & ⊢ 𝑆 ∈ ℕ0 & ⊢ 𝑇 ∈ ℕ0 & ⊢ 𝑈 ∈ ℕ0 & ⊢ 𝑊 ∈ ℕ0 & ⊢ 𝑋 ∈ ℕ0 & ⊢ 𝑌 ∈ ℕ0 & ⊢ 𝑍 ∈ ℕ0 & ⊢ 𝑈 < ;10 & ⊢ 𝑃 < ;10 & ⊢ 𝑄 < ;10 & ⊢ (;;𝐿𝑀𝑁 + 𝑂) = ;;;𝑅𝑆𝑇𝑈 & ⊢ ((𝐴.𝐵) · (𝐸.𝐹)) = (𝐼._𝐽𝐾) & ⊢ ((𝐶.𝐷) · (𝐺.𝐻)) = (𝑂._𝑃𝑄) & ⊢ (;;;𝐼𝐽𝐾1 + ;;𝑅𝑆𝑇) = ;;;𝑊𝑋𝑌𝑍 & ⊢ (((𝐴.𝐵) + (𝐶.𝐷)) · ((𝐸.𝐹) + (𝐺.𝐻))) = (((𝐼._𝐽𝐾) + (𝐿._𝑀𝑁)) + (𝑂._𝑃𝑄)) ⇒ ⊢ ((𝐴._𝐵_𝐶𝐷) · (𝐸._𝐹_𝐺𝐻)) < (𝑊._𝑋_𝑌𝑍) | ||
| Theorem | threehalves 33000 | Example theorem demonstrating decimal expansions. (Contributed by Thierry Arnoux, 27-Dec-2021.) |
| ⊢ (3 / 2) = (1.5) | ||
| < Previous Next > |
| Copyright terms: Public domain | < Previous Next > |