Theorem List for Intuitionistic Logic Explorer - 11701-11800   *Has distinct variable
 group(s)
| Type | Label | Description | 
| Statement | 
|   | 
| Theorem | mertenslem2 11701* | 
Lemma for mertensabs 11702.  (Contributed by Mario Carneiro,
         28-Apr-2014.)
 | 
| ⊢ ((𝜑 ∧ 𝑗 ∈ ℕ0) → (𝐹‘𝑗) = 𝐴)   
 &   ⊢ ((𝜑 ∧ 𝑗 ∈ ℕ0) → (𝐾‘𝑗) = (abs‘𝐴))    &   ⊢ ((𝜑 ∧ 𝑗 ∈ ℕ0) → 𝐴 ∈ ℂ)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ ℕ0) → (𝐺‘𝑘) = 𝐵)   
 &   ⊢ ((𝜑 ∧ 𝑘 ∈ ℕ0) → 𝐵 ∈ ℂ)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ ℕ0) → (𝐻‘𝑘) = Σ𝑗 ∈ (0...𝑘)(𝐴 · (𝐺‘(𝑘 − 𝑗))))    &   ⊢ (𝜑 → seq0( + , 𝐾) ∈ dom ⇝
 )   
 &   ⊢ (𝜑 → seq0( + , 𝐺) ∈ dom ⇝ )    &   ⊢ (𝜑 → 𝐸 ∈ ℝ+)    &   ⊢ 𝑇 = {𝑧 ∣ ∃𝑛 ∈ (0...(𝑠 − 1))𝑧 = (abs‘Σ𝑘 ∈ (ℤ≥‘(𝑛 + 1))(𝐺‘𝑘))}    &   ⊢ (𝜓 ↔ (𝑠 ∈ ℕ ∧ ∀𝑛 ∈
 (ℤ≥‘𝑠)(abs‘Σ𝑘 ∈ (ℤ≥‘(𝑛 + 1))(𝐺‘𝑘)) < ((𝐸 / 2) / (Σ𝑗 ∈ ℕ0 (𝐾‘𝑗) + 1))))    ⇒   ⊢ (𝜑 → ∃𝑦 ∈ ℕ0 ∀𝑚 ∈
 (ℤ≥‘𝑦)(abs‘Σ𝑗 ∈ (0...𝑚)(𝐴 · Σ𝑘 ∈
 (ℤ≥‘((𝑚 − 𝑗) + 1))𝐵)) < 𝐸) | 
|   | 
| Theorem | mertensabs 11702* | 
Mertens' theorem.  If 𝐴(𝑗) is an absolutely convergent series
and
       𝐵(𝑘) is convergent, then
       (Σ𝑗 ∈ ℕ0𝐴(𝑗) · Σ𝑘 ∈ ℕ0𝐵(𝑘)) =
       Σ𝑘 ∈ ℕ0Σ𝑗 ∈ (0...𝑘)(𝐴(𝑗) · 𝐵(𝑘 − 𝑗)) (and
       this latter series is convergent).  This latter sum is commonly known as
       the Cauchy product of the sequences.  The proof follows the outline at
http://en.wikipedia.org/wiki/Cauchy_product#Proof_of_Mertens.27_theorem.
       (Contributed by Mario Carneiro, 29-Apr-2014.)  (Revised by Jim Kingdon,
       8-Dec-2022.)
 | 
| ⊢ ((𝜑 ∧ 𝑗 ∈ ℕ0) → (𝐹‘𝑗) = 𝐴)   
 &   ⊢ ((𝜑 ∧ 𝑗 ∈ ℕ0) → (𝐾‘𝑗) = (abs‘𝐴))    &   ⊢ ((𝜑 ∧ 𝑗 ∈ ℕ0) → 𝐴 ∈ ℂ)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ ℕ0) → (𝐺‘𝑘) = 𝐵)   
 &   ⊢ ((𝜑 ∧ 𝑘 ∈ ℕ0) → 𝐵 ∈ ℂ)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ ℕ0) → (𝐻‘𝑘) = Σ𝑗 ∈ (0...𝑘)(𝐴 · (𝐺‘(𝑘 − 𝑗))))    &   ⊢ (𝜑 → seq0( + , 𝐾) ∈ dom ⇝
 )   
 &   ⊢ (𝜑 → seq0( + , 𝐺) ∈ dom ⇝ )    &   ⊢ (𝜑 → seq0( + , 𝐹) ∈ dom ⇝
 )    ⇒   ⊢ (𝜑 → seq0( + , 𝐻) ⇝ (Σ𝑗 ∈ ℕ0 𝐴 · Σ𝑘 ∈ ℕ0
 𝐵)) | 
|   | 
| 4.9.10  Finite and infinite
 products
 | 
|   | 
| 4.9.10.1  Product sequences
 | 
|   | 
| Theorem | prodf 11703* | 
An infinite product of complex terms is a function from an upper set of
       integers to ℂ.  (Contributed by Scott
Fenton, 4-Dec-2017.)
 | 
| ⊢ 𝑍 = (ℤ≥‘𝑀)    &   ⊢ (𝜑 → 𝑀 ∈ ℤ)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝑍) → (𝐹‘𝑘) ∈ ℂ)   
 ⇒   ⊢ (𝜑 → seq𝑀( · , 𝐹):𝑍⟶ℂ) | 
|   | 
| Theorem | clim2prod 11704* | 
The limit of an infinite product with an initial segment added.
       (Contributed by Scott Fenton, 18-Dec-2017.)
 | 
| ⊢ 𝑍 = (ℤ≥‘𝑀)    &   ⊢ (𝜑 → 𝑁 ∈ 𝑍)   
 &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝑍) → (𝐹‘𝑘) ∈ ℂ)    &   ⊢ (𝜑 → seq(𝑁 + 1)( · , 𝐹) ⇝ 𝐴)    ⇒   ⊢ (𝜑 → seq𝑀( · , 𝐹) ⇝ ((seq𝑀( · , 𝐹)‘𝑁) · 𝐴)) | 
|   | 
| Theorem | clim2divap 11705* | 
The limit of an infinite product with an initial segment removed.
       (Contributed by Scott Fenton, 20-Dec-2017.)
 | 
| ⊢ 𝑍 = (ℤ≥‘𝑀)    &   ⊢ (𝜑 → 𝑁 ∈ 𝑍)   
 &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝑍) → (𝐹‘𝑘) ∈ ℂ)    &   ⊢ (𝜑 → seq𝑀( · , 𝐹) ⇝ 𝐴)   
 &   ⊢ (𝜑 → (seq𝑀( · , 𝐹)‘𝑁) # 0)    ⇒   ⊢ (𝜑 → seq(𝑁 + 1)( · , 𝐹) ⇝ (𝐴 / (seq𝑀( · , 𝐹)‘𝑁))) | 
|   | 
| Theorem | prod3fmul 11706* | 
The product of two infinite products.  (Contributed by Scott Fenton,
       18-Dec-2017.)  (Revised by Jim Kingdon, 22-Mar-2024.)
 | 
| ⊢ (𝜑 → 𝑁 ∈ (ℤ≥‘𝑀))    &   ⊢ ((𝜑 ∧ 𝑘 ∈ (ℤ≥‘𝑀)) → (𝐹‘𝑘) ∈ ℂ)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ (ℤ≥‘𝑀)) → (𝐺‘𝑘) ∈ ℂ)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ (ℤ≥‘𝑀)) → (𝐻‘𝑘) = ((𝐹‘𝑘) · (𝐺‘𝑘)))    ⇒   ⊢ (𝜑 → (seq𝑀( · , 𝐻)‘𝑁) = ((seq𝑀( · , 𝐹)‘𝑁) · (seq𝑀( · , 𝐺)‘𝑁))) | 
|   | 
| Theorem | prodf1 11707 | 
The value of the partial products in a one-valued infinite product.
       (Contributed by Scott Fenton, 5-Dec-2017.)
 | 
| ⊢ 𝑍 = (ℤ≥‘𝑀)   
 ⇒   ⊢ (𝑁 ∈ 𝑍 → (seq𝑀( · , (𝑍 × {1}))‘𝑁) = 1) | 
|   | 
| Theorem | prodf1f 11708 | 
A one-valued infinite product is equal to the constant one function.
       (Contributed by Scott Fenton, 5-Dec-2017.)
 | 
| ⊢ 𝑍 = (ℤ≥‘𝑀)   
 ⇒   ⊢ (𝑀 ∈ ℤ → seq𝑀( · , (𝑍 × {1})) = (𝑍 × {1})) | 
|   | 
| Theorem | prodfclim1 11709 | 
The constant one product converges to one.  (Contributed by Scott
       Fenton, 5-Dec-2017.)
 | 
| ⊢ 𝑍 = (ℤ≥‘𝑀)   
 ⇒   ⊢ (𝑀 ∈ ℤ → seq𝑀( · , (𝑍 × {1})) ⇝ 1) | 
|   | 
| Theorem | prodfap0 11710* | 
The product of finitely many terms apart from zero is apart from zero.
       (Contributed by Scott Fenton, 14-Jan-2018.)  (Revised by Jim Kingdon,
       23-Mar-2024.)
 | 
| ⊢ (𝜑 → 𝑁 ∈ (ℤ≥‘𝑀))    &   ⊢ ((𝜑 ∧ 𝑘 ∈ (ℤ≥‘𝑀)) → (𝐹‘𝑘) ∈ ℂ)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ (𝑀...𝑁)) → (𝐹‘𝑘) # 0)    ⇒   ⊢ (𝜑 → (seq𝑀( · , 𝐹)‘𝑁) # 0) | 
|   | 
| Theorem | prodfrecap 11711* | 
The reciprocal of a finite product.  (Contributed by Scott Fenton,
       15-Jan-2018.)  (Revised by Jim Kingdon, 24-Mar-2024.)
 | 
| ⊢ (𝜑 → 𝑁 ∈ (ℤ≥‘𝑀))    &   ⊢ ((𝜑 ∧ 𝑘 ∈ (ℤ≥‘𝑀)) → (𝐹‘𝑘) ∈ ℂ)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ (𝑀...𝑁)) → (𝐹‘𝑘) # 0)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ (𝑀...𝑁)) → (𝐺‘𝑘) = (1 / (𝐹‘𝑘)))    &   ⊢ ((𝜑 ∧ 𝑘 ∈ (ℤ≥‘𝑀)) → (𝐺‘𝑘) ∈ ℂ)   
 ⇒   ⊢ (𝜑 → (seq𝑀( · , 𝐺)‘𝑁) = (1 / (seq𝑀( · , 𝐹)‘𝑁))) | 
|   | 
| Theorem | prodfdivap 11712* | 
The quotient of two products.  (Contributed by Scott Fenton,
       15-Jan-2018.)  (Revised by Jim Kingdon, 24-Mar-2024.)
 | 
| ⊢ (𝜑 → 𝑁 ∈ (ℤ≥‘𝑀))    &   ⊢ ((𝜑 ∧ 𝑘 ∈ (ℤ≥‘𝑀)) → (𝐹‘𝑘) ∈ ℂ)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ (ℤ≥‘𝑀)) → (𝐺‘𝑘) ∈ ℂ)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ (ℤ≥‘𝑀)) → (𝐺‘𝑘) # 0)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ (ℤ≥‘𝑀)) → (𝐻‘𝑘) = ((𝐹‘𝑘) / (𝐺‘𝑘)))    ⇒   ⊢ (𝜑 → (seq𝑀( · , 𝐻)‘𝑁) = ((seq𝑀( · , 𝐹)‘𝑁) / (seq𝑀( · , 𝐺)‘𝑁))) | 
|   | 
| 4.9.10.2  Non-trivial convergence
 | 
|   | 
| Theorem | ntrivcvgap 11713* | 
A non-trivially converging infinite product converges.  (Contributed by
       Scott Fenton, 18-Dec-2017.)
 | 
| ⊢ 𝑍 = (ℤ≥‘𝑀)    &   ⊢ (𝜑 → ∃𝑛 ∈ 𝑍 ∃𝑦(𝑦 # 0 ∧ seq𝑛( · , 𝐹) ⇝ 𝑦))   
 &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝑍) → (𝐹‘𝑘) ∈ ℂ)   
 ⇒   ⊢ (𝜑 → seq𝑀( · , 𝐹) ∈ dom ⇝ ) | 
|   | 
| Theorem | ntrivcvgap0 11714* | 
A product that converges to a value apart from zero converges
       non-trivially.  (Contributed by Scott Fenton, 18-Dec-2017.)
 | 
| ⊢ 𝑍 = (ℤ≥‘𝑀)    &   ⊢ (𝜑 → 𝑀 ∈ ℤ)    &   ⊢ (𝜑 → seq𝑀( · , 𝐹) ⇝ 𝑋)   
 &   ⊢ (𝜑 → 𝑋 # 0)    ⇒   ⊢ (𝜑 → ∃𝑛 ∈ 𝑍 ∃𝑦(𝑦 # 0 ∧ seq𝑛( · , 𝐹) ⇝ 𝑦)) | 
|   | 
| 4.9.10.3  Complex products
 | 
|   | 
| Syntax | cprod 11715 | 
Extend class notation to include complex products.
 | 
| class ∏𝑘 ∈ 𝐴 𝐵 | 
|   | 
| Definition | df-proddc 11716* | 
Define the product of a series with an index set of integers 𝐴.
       This definition takes most of the aspects of df-sumdc 11519 and adapts them
       for multiplication instead of addition.  However, we insist that in the
       infinite case, there is a nonzero tail of the sequence.  This ensures
       that the convergence criteria match those of infinite sums.
       (Contributed by Scott Fenton, 4-Dec-2017.)  (Revised by Jim Kingdon,
       21-Mar-2024.)
 | 
| ⊢ ∏𝑘 ∈ 𝐴 𝐵 = (℩𝑥(∃𝑚 ∈ ℤ ((𝐴 ⊆
 (ℤ≥‘𝑚) ∧ ∀𝑗 ∈ (ℤ≥‘𝑚)DECID 𝑗 ∈ 𝐴) ∧ (∃𝑛 ∈ (ℤ≥‘𝑚)∃𝑦(𝑦 # 0 ∧ seq𝑛( · , (𝑘 ∈ ℤ ↦ if(𝑘 ∈ 𝐴, 𝐵, 1))) ⇝ 𝑦) ∧ seq𝑚( · , (𝑘 ∈ ℤ ↦ if(𝑘 ∈ 𝐴, 𝐵, 1))) ⇝ 𝑥)) ∨ ∃𝑚 ∈ ℕ ∃𝑓(𝑓:(1...𝑚)–1-1-onto→𝐴 ∧ 𝑥 = (seq1( · , (𝑛 ∈ ℕ ↦ if(𝑛 ≤ 𝑚, ⦋(𝑓‘𝑛) / 𝑘⦌𝐵, 1)))‘𝑚)))) | 
|   | 
| Theorem | prodeq1f 11717 | 
Equality theorem for a product.  (Contributed by Scott Fenton,
       1-Dec-2017.)
 | 
| ⊢ Ⅎ𝑘𝐴   
 &   ⊢ Ⅎ𝑘𝐵    ⇒   ⊢ (𝐴 = 𝐵 → ∏𝑘 ∈ 𝐴 𝐶 = ∏𝑘 ∈ 𝐵 𝐶) | 
|   | 
| Theorem | prodeq1 11718* | 
Equality theorem for a product.  (Contributed by Scott Fenton,
       1-Dec-2017.)
 | 
| ⊢ (𝐴 = 𝐵 → ∏𝑘 ∈ 𝐴 𝐶 = ∏𝑘 ∈ 𝐵 𝐶) | 
|   | 
| Theorem | nfcprod1 11719* | 
Bound-variable hypothesis builder for product.  (Contributed by Scott
       Fenton, 4-Dec-2017.)
 | 
| ⊢ Ⅎ𝑘𝐴    ⇒   ⊢ Ⅎ𝑘∏𝑘 ∈ 𝐴 𝐵 | 
|   | 
| Theorem | nfcprod 11720* | 
Bound-variable hypothesis builder for product: if 𝑥 is (effectively)
       not free in 𝐴 and 𝐵, it is not free in ∏𝑘 ∈
𝐴𝐵.
       (Contributed by Scott Fenton, 1-Dec-2017.)
 | 
| ⊢ Ⅎ𝑥𝐴   
 &   ⊢ Ⅎ𝑥𝐵    ⇒   ⊢ Ⅎ𝑥∏𝑘 ∈ 𝐴 𝐵 | 
|   | 
| Theorem | prodeq2w 11721* | 
Equality theorem for product, when the class expressions 𝐵 and 𝐶
       are equal everywhere.  Proved using only Extensionality.  (Contributed
       by Scott Fenton, 4-Dec-2017.)
 | 
| ⊢ (∀𝑘 𝐵 = 𝐶 → ∏𝑘 ∈ 𝐴 𝐵 = ∏𝑘 ∈ 𝐴 𝐶) | 
|   | 
| Theorem | prodeq2 11722* | 
Equality theorem for product.  (Contributed by Scott Fenton,
       4-Dec-2017.)
 | 
| ⊢ (∀𝑘 ∈ 𝐴 𝐵 = 𝐶 → ∏𝑘 ∈ 𝐴 𝐵 = ∏𝑘 ∈ 𝐴 𝐶) | 
|   | 
| Theorem | cbvprod 11723* | 
Change bound variable in a product.  (Contributed by Scott Fenton,
         4-Dec-2017.)
 | 
| ⊢ (𝑗 = 𝑘 → 𝐵 = 𝐶)   
 &   ⊢ Ⅎ𝑘𝐴   
 &   ⊢ Ⅎ𝑗𝐴   
 &   ⊢ Ⅎ𝑘𝐵   
 &   ⊢ Ⅎ𝑗𝐶    ⇒   ⊢ ∏𝑗 ∈ 𝐴 𝐵 = ∏𝑘 ∈ 𝐴 𝐶 | 
|   | 
| Theorem | cbvprodv 11724* | 
Change bound variable in a product.  (Contributed by Scott Fenton,
       4-Dec-2017.)
 | 
| ⊢ (𝑗 = 𝑘 → 𝐵 = 𝐶)    ⇒   ⊢ ∏𝑗 ∈ 𝐴 𝐵 = ∏𝑘 ∈ 𝐴 𝐶 | 
|   | 
| Theorem | cbvprodi 11725* | 
Change bound variable in a product.  (Contributed by Scott Fenton,
       4-Dec-2017.)
 | 
| ⊢ Ⅎ𝑘𝐵   
 &   ⊢ Ⅎ𝑗𝐶   
 &   ⊢ (𝑗 = 𝑘 → 𝐵 = 𝐶)    ⇒   ⊢ ∏𝑗 ∈ 𝐴 𝐵 = ∏𝑘 ∈ 𝐴 𝐶 | 
|   | 
| Theorem | prodeq1i 11726* | 
Equality inference for product.  (Contributed by Scott Fenton,
       4-Dec-2017.)
 | 
| ⊢ 𝐴 = 𝐵    ⇒   ⊢ ∏𝑘 ∈ 𝐴 𝐶 = ∏𝑘 ∈ 𝐵 𝐶 | 
|   | 
| Theorem | prodeq2i 11727* | 
Equality inference for product.  (Contributed by Scott Fenton,
       4-Dec-2017.)
 | 
| ⊢ (𝑘 ∈ 𝐴 → 𝐵 = 𝐶)    ⇒   ⊢ ∏𝑘 ∈ 𝐴 𝐵 = ∏𝑘 ∈ 𝐴 𝐶 | 
|   | 
| Theorem | prodeq12i 11728* | 
Equality inference for product.  (Contributed by Scott Fenton,
       4-Dec-2017.)
 | 
| ⊢ 𝐴 = 𝐵   
 &   ⊢ (𝑘 ∈ 𝐴 → 𝐶 = 𝐷)    ⇒   ⊢ ∏𝑘 ∈ 𝐴 𝐶 = ∏𝑘 ∈ 𝐵 𝐷 | 
|   | 
| Theorem | prodeq1d 11729* | 
Equality deduction for product.  (Contributed by Scott Fenton,
       4-Dec-2017.)
 | 
| ⊢ (𝜑 → 𝐴 = 𝐵)    ⇒   ⊢ (𝜑 → ∏𝑘 ∈ 𝐴 𝐶 = ∏𝑘 ∈ 𝐵 𝐶) | 
|   | 
| Theorem | prodeq2d 11730* | 
Equality deduction for product.  Note that unlike prodeq2dv 11731, 𝑘
       may occur in 𝜑.  (Contributed by Scott Fenton,
4-Dec-2017.)
 | 
| ⊢ (𝜑 → ∀𝑘 ∈ 𝐴 𝐵 = 𝐶)    ⇒   ⊢ (𝜑 → ∏𝑘 ∈ 𝐴 𝐵 = ∏𝑘 ∈ 𝐴 𝐶) | 
|   | 
| Theorem | prodeq2dv 11731* | 
Equality deduction for product.  (Contributed by Scott Fenton,
       4-Dec-2017.)
 | 
| ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐵 = 𝐶)    ⇒   ⊢ (𝜑 → ∏𝑘 ∈ 𝐴 𝐵 = ∏𝑘 ∈ 𝐴 𝐶) | 
|   | 
| Theorem | prodeq2sdv 11732* | 
Equality deduction for product.  (Contributed by Scott Fenton,
       4-Dec-2017.)
 | 
| ⊢ (𝜑 → 𝐵 = 𝐶)    ⇒   ⊢ (𝜑 → ∏𝑘 ∈ 𝐴 𝐵 = ∏𝑘 ∈ 𝐴 𝐶) | 
|   | 
| Theorem | 2cprodeq2dv 11733* | 
Equality deduction for double product.  (Contributed by Scott Fenton,
       4-Dec-2017.)
 | 
| ⊢ ((𝜑 ∧ 𝑗 ∈ 𝐴 ∧ 𝑘 ∈ 𝐵) → 𝐶 = 𝐷)    ⇒   ⊢ (𝜑 → ∏𝑗 ∈ 𝐴 ∏𝑘 ∈ 𝐵 𝐶 = ∏𝑗 ∈ 𝐴 ∏𝑘 ∈ 𝐵 𝐷) | 
|   | 
| Theorem | prodeq12dv 11734* | 
Equality deduction for product.  (Contributed by Scott Fenton,
       4-Dec-2017.)
 | 
| ⊢ (𝜑 → 𝐴 = 𝐵)   
 &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐶 = 𝐷)    ⇒   ⊢ (𝜑 → ∏𝑘 ∈ 𝐴 𝐶 = ∏𝑘 ∈ 𝐵 𝐷) | 
|   | 
| Theorem | prodeq12rdv 11735* | 
Equality deduction for product.  (Contributed by Scott Fenton,
       4-Dec-2017.)
 | 
| ⊢ (𝜑 → 𝐴 = 𝐵)   
 &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐵) → 𝐶 = 𝐷)    ⇒   ⊢ (𝜑 → ∏𝑘 ∈ 𝐴 𝐶 = ∏𝑘 ∈ 𝐵 𝐷) | 
|   | 
| Theorem | prodrbdclem 11736* | 
Lemma for prodrbdc 11739.  (Contributed by Scott Fenton, 4-Dec-2017.)
         (Revised by Jim Kingdon, 4-Apr-2024.)
 | 
| ⊢ 𝐹 = (𝑘 ∈ ℤ ↦ if(𝑘 ∈ 𝐴, 𝐵, 1))    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐵 ∈ ℂ)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ (ℤ≥‘𝑀)) → DECID
 𝑘 ∈ 𝐴)   
 &   ⊢ (𝜑 → 𝑁 ∈ (ℤ≥‘𝑀))   
 ⇒   ⊢ ((𝜑 ∧ 𝐴 ⊆
 (ℤ≥‘𝑁)) → (seq𝑀( · , 𝐹) ↾
 (ℤ≥‘𝑁)) = seq𝑁( · , 𝐹)) | 
|   | 
| Theorem | fproddccvg 11737* | 
The sequence of partial products of a finite product converges to
           the whole product.  (Contributed by Scott Fenton, 4-Dec-2017.)
 | 
| ⊢ 𝐹 = (𝑘 ∈ ℤ ↦ if(𝑘 ∈ 𝐴, 𝐵, 1))    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐵 ∈ ℂ)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ (ℤ≥‘𝑀)) → DECID
 𝑘 ∈ 𝐴)   
 &   ⊢ (𝜑 → 𝑁 ∈ (ℤ≥‘𝑀))    &   ⊢ (𝜑 → 𝐴 ⊆ (𝑀...𝑁))    ⇒   ⊢ (𝜑 → seq𝑀( · , 𝐹) ⇝ (seq𝑀( · , 𝐹)‘𝑁)) | 
|   | 
| Theorem | prodrbdclem2 11738* | 
Lemma for prodrbdc 11739.  (Contributed by Scott Fenton,
           4-Dec-2017.)
 | 
| ⊢ 𝐹 = (𝑘 ∈ ℤ ↦ if(𝑘 ∈ 𝐴, 𝐵, 1))    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐵 ∈ ℂ)    &   ⊢ (𝜑 → 𝑀 ∈ ℤ)    &   ⊢ (𝜑 → 𝑁 ∈ ℤ)    &   ⊢ (𝜑 → 𝐴 ⊆
 (ℤ≥‘𝑀))    &   ⊢ (𝜑 → 𝐴 ⊆
 (ℤ≥‘𝑁))    &   ⊢ ((𝜑 ∧ 𝑘 ∈ (ℤ≥‘𝑀)) → DECID
 𝑘 ∈ 𝐴)   
 &   ⊢ ((𝜑 ∧ 𝑘 ∈ (ℤ≥‘𝑁)) → DECID
 𝑘 ∈ 𝐴)    ⇒   ⊢ ((𝜑 ∧ 𝑁 ∈ (ℤ≥‘𝑀)) → (seq𝑀( · , 𝐹) ⇝ 𝐶 ↔ seq𝑁( · , 𝐹) ⇝ 𝐶)) | 
|   | 
| Theorem | prodrbdc 11739* | 
Rebase the starting point of a product.  (Contributed by Scott Fenton,
         4-Dec-2017.)
 | 
| ⊢ 𝐹 = (𝑘 ∈ ℤ ↦ if(𝑘 ∈ 𝐴, 𝐵, 1))    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐵 ∈ ℂ)    &   ⊢ (𝜑 → 𝑀 ∈ ℤ)    &   ⊢ (𝜑 → 𝑁 ∈ ℤ)    &   ⊢ (𝜑 → 𝐴 ⊆
 (ℤ≥‘𝑀))    &   ⊢ (𝜑 → 𝐴 ⊆
 (ℤ≥‘𝑁))    &   ⊢ ((𝜑 ∧ 𝑘 ∈ (ℤ≥‘𝑀)) → DECID
 𝑘 ∈ 𝐴)   
 &   ⊢ ((𝜑 ∧ 𝑘 ∈ (ℤ≥‘𝑁)) → DECID
 𝑘 ∈ 𝐴)    ⇒   ⊢ (𝜑 → (seq𝑀( · , 𝐹) ⇝ 𝐶 ↔ seq𝑁( · , 𝐹) ⇝ 𝐶)) | 
|   | 
| Theorem | prodmodclem3 11740* | 
Lemma for prodmodc 11743.  (Contributed by Scott Fenton, 4-Dec-2017.)
         (Revised by Jim Kingdon, 11-Apr-2024.)
 | 
| ⊢ 𝐹 = (𝑘 ∈ ℤ ↦ if(𝑘 ∈ 𝐴, 𝐵, 1))    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐵 ∈ ℂ)    &   ⊢ 𝐺 = (𝑗 ∈ ℕ ↦ if(𝑗 ≤ (♯‘𝐴), ⦋(𝑓‘𝑗) / 𝑘⦌𝐵, 1))    &   ⊢ 𝐻 = (𝑗 ∈ ℕ ↦ if(𝑗 ≤ (♯‘𝐴), ⦋(𝐾‘𝑗) / 𝑘⦌𝐵, 1))    &   ⊢ (𝜑 → (𝑀 ∈ ℕ ∧ 𝑁 ∈ ℕ))    &   ⊢ (𝜑 → 𝑓:(1...𝑀)–1-1-onto→𝐴)   
 &   ⊢ (𝜑 → 𝐾:(1...𝑁)–1-1-onto→𝐴)    ⇒   ⊢ (𝜑 → (seq1( · , 𝐺)‘𝑀) = (seq1( · , 𝐻)‘𝑁)) | 
|   | 
| Theorem | prodmodclem2a 11741* | 
Lemma for prodmodc 11743.  (Contributed by Scott Fenton, 4-Dec-2017.)
         (Revised by Jim Kingdon, 11-Apr-2024.)
 | 
| ⊢ 𝐹 = (𝑘 ∈ ℤ ↦ if(𝑘 ∈ 𝐴, 𝐵, 1))    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐵 ∈ ℂ)    &   ⊢ 𝐺 = (𝑗 ∈ ℕ ↦ if(𝑗 ≤ (♯‘𝐴), ⦋(𝑓‘𝑗) / 𝑘⦌𝐵, 1))    &   ⊢ 𝐻 = (𝑗 ∈ ℕ ↦ if(𝑗 ≤ (♯‘𝐴), ⦋(𝐾‘𝑗) / 𝑘⦌𝐵, 1))    &   ⊢ ((𝜑 ∧ 𝑘 ∈ (ℤ≥‘𝑀)) → DECID
 𝑘 ∈ 𝐴)   
 &   ⊢ (𝜑 → 𝑁 ∈ ℕ)    &   ⊢ (𝜑 → 𝑀 ∈ ℤ)    &   ⊢ (𝜑 → 𝐴 ⊆
 (ℤ≥‘𝑀))    &   ⊢ (𝜑 → 𝑓:(1...𝑁)–1-1-onto→𝐴)   
 &   ⊢ (𝜑 → 𝐾 Isom < , <
 ((1...(♯‘𝐴)),
 𝐴))    ⇒   ⊢ (𝜑 → seq𝑀( · , 𝐹) ⇝ (seq1( · , 𝐺)‘𝑁)) | 
|   | 
| Theorem | prodmodclem2 11742* | 
Lemma for prodmodc 11743.  (Contributed by Scott Fenton, 4-Dec-2017.)
         (Revised by Jim Kingdon, 13-Apr-2024.)
 | 
| ⊢ 𝐹 = (𝑘 ∈ ℤ ↦ if(𝑘 ∈ 𝐴, 𝐵, 1))    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐵 ∈ ℂ)    &   ⊢ 𝐺 = (𝑗 ∈ ℕ ↦ if(𝑗 ≤ (♯‘𝐴), ⦋(𝑓‘𝑗) / 𝑘⦌𝐵, 1))    ⇒   ⊢ ((𝜑 ∧ ∃𝑚 ∈ ℤ ((𝐴 ⊆
 (ℤ≥‘𝑚) ∧ ∀𝑗 ∈ (ℤ≥‘𝑚)DECID 𝑗 ∈ 𝐴) ∧ (∃𝑛 ∈ (ℤ≥‘𝑚)∃𝑦(𝑦 # 0 ∧ seq𝑛( · , 𝐹) ⇝ 𝑦) ∧ seq𝑚( · , 𝐹) ⇝ 𝑥))) → (∃𝑚 ∈ ℕ ∃𝑓(𝑓:(1...𝑚)–1-1-onto→𝐴 ∧ 𝑧 = (seq1( · , 𝐺)‘𝑚)) → 𝑥 = 𝑧)) | 
|   | 
| Theorem | prodmodc 11743* | 
A product has at most one limit.  (Contributed by Scott Fenton,
         4-Dec-2017.)  (Modified by Jim Kingdon, 14-Apr-2024.)
 | 
| ⊢ 𝐹 = (𝑘 ∈ ℤ ↦ if(𝑘 ∈ 𝐴, 𝐵, 1))    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐵 ∈ ℂ)    &   ⊢ 𝐺 = (𝑗 ∈ ℕ ↦ if(𝑗 ≤ (♯‘𝐴), ⦋(𝑓‘𝑗) / 𝑘⦌𝐵, 1))    ⇒   ⊢ (𝜑 → ∃*𝑥(∃𝑚 ∈ ℤ ((𝐴 ⊆
 (ℤ≥‘𝑚) ∧ ∀𝑗 ∈ (ℤ≥‘𝑚)DECID 𝑗 ∈ 𝐴) ∧ (∃𝑛 ∈ (ℤ≥‘𝑚)∃𝑦(𝑦 # 0 ∧ seq𝑛( · , 𝐹) ⇝ 𝑦) ∧ seq𝑚( · , 𝐹) ⇝ 𝑥)) ∨ ∃𝑚 ∈ ℕ ∃𝑓(𝑓:(1...𝑚)–1-1-onto→𝐴 ∧ 𝑥 = (seq1( · , 𝐺)‘𝑚)))) | 
|   | 
| Theorem | zproddc 11744* | 
Series product with index set a subset of the upper integers.
         (Contributed by Scott Fenton, 5-Dec-2017.)
 | 
| ⊢ 𝑍 = (ℤ≥‘𝑀)    &   ⊢ (𝜑 → 𝑀 ∈ ℤ)    &   ⊢ (𝜑 → ∃𝑛 ∈ 𝑍 ∃𝑦(𝑦 # 0 ∧ seq𝑛( · , 𝐹) ⇝ 𝑦))   
 &   ⊢ (𝜑 → 𝐴 ⊆ 𝑍)   
 &   ⊢ (𝜑 → ∀𝑗 ∈ 𝑍 DECID 𝑗 ∈ 𝐴)   
 &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝑍) → (𝐹‘𝑘) = if(𝑘 ∈ 𝐴, 𝐵, 1))    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐵 ∈ ℂ)   
 ⇒   ⊢ (𝜑 → ∏𝑘 ∈ 𝐴 𝐵 = ( ⇝ ‘seq𝑀( · , 𝐹))) | 
|   | 
| Theorem | iprodap 11745* | 
Series product with an upper integer index set (i.e. an infinite
         product.)  (Contributed by Scott Fenton, 5-Dec-2017.)
 | 
| ⊢ 𝑍 = (ℤ≥‘𝑀)    &   ⊢ (𝜑 → 𝑀 ∈ ℤ)    &   ⊢ (𝜑 → ∃𝑛 ∈ 𝑍 ∃𝑦(𝑦 # 0 ∧ seq𝑛( · , 𝐹) ⇝ 𝑦))   
 &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝑍) → (𝐹‘𝑘) = 𝐵)   
 &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝑍) → 𝐵 ∈ ℂ)   
 ⇒   ⊢ (𝜑 → ∏𝑘 ∈ 𝑍 𝐵 = ( ⇝ ‘seq𝑀( · , 𝐹))) | 
|   | 
| Theorem | zprodap0 11746* | 
Nonzero series product with index set a subset of the upper integers.
         (Contributed by Scott Fenton, 6-Dec-2017.)
 | 
| ⊢ 𝑍 = (ℤ≥‘𝑀)    &   ⊢ (𝜑 → 𝑀 ∈ ℤ)    &   ⊢ (𝜑 → 𝑋 # 0)    &   ⊢ (𝜑 → seq𝑀( · , 𝐹) ⇝ 𝑋)   
 &   ⊢ (𝜑 → ∀𝑗 ∈ 𝑍 DECID 𝑗 ∈ 𝐴)   
 &   ⊢ (𝜑 → 𝐴 ⊆ 𝑍)   
 &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝑍) → (𝐹‘𝑘) = if(𝑘 ∈ 𝐴, 𝐵, 1))    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐵 ∈ ℂ)   
 ⇒   ⊢ (𝜑 → ∏𝑘 ∈ 𝐴 𝐵 = 𝑋) | 
|   | 
| Theorem | iprodap0 11747* | 
Nonzero series product with an upper integer index set (i.e. an
         infinite product.)  (Contributed by Scott Fenton, 6-Dec-2017.)
 | 
| ⊢ 𝑍 = (ℤ≥‘𝑀)    &   ⊢ (𝜑 → 𝑀 ∈ ℤ)    &   ⊢ (𝜑 → 𝑋 # 0)    &   ⊢ (𝜑 → seq𝑀( · , 𝐹) ⇝ 𝑋)   
 &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝑍) → (𝐹‘𝑘) = 𝐵)   
 &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝑍) → 𝐵 ∈ ℂ)   
 ⇒   ⊢ (𝜑 → ∏𝑘 ∈ 𝑍 𝐵 = 𝑋) | 
|   | 
| 4.9.10.4  Finite products
 | 
|   | 
| Theorem | fprodseq 11748* | 
The value of a product over a nonempty finite set.  (Contributed by
       Scott Fenton, 6-Dec-2017.)  (Revised by Jim Kingdon, 15-Jul-2024.)
 | 
| ⊢ (𝑘 = (𝐹‘𝑛) → 𝐵 = 𝐶)   
 &   ⊢ (𝜑 → 𝑀 ∈ ℕ)    &   ⊢ (𝜑 → 𝐹:(1...𝑀)–1-1-onto→𝐴)   
 &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐵 ∈ ℂ)    &   ⊢ ((𝜑 ∧ 𝑛 ∈ (1...𝑀)) → (𝐺‘𝑛) = 𝐶)    ⇒   ⊢ (𝜑 → ∏𝑘 ∈ 𝐴 𝐵 = (seq1( · , (𝑛 ∈ ℕ ↦ if(𝑛 ≤ 𝑀, (𝐺‘𝑛), 1)))‘𝑀)) | 
|   | 
| Theorem | fprodntrivap 11749* | 
A non-triviality lemma for finite sequences.  (Contributed by Scott
       Fenton, 16-Dec-2017.)
 | 
| ⊢ 𝑍 = (ℤ≥‘𝑀)    &   ⊢ (𝜑 → 𝑁 ∈ 𝑍)   
 &   ⊢ (𝜑 → 𝐴 ⊆ (𝑀...𝑁))    ⇒   ⊢ (𝜑 → ∃𝑛 ∈ 𝑍 ∃𝑦(𝑦 # 0 ∧ seq𝑛( · , (𝑘 ∈ 𝑍 ↦ if(𝑘 ∈ 𝐴, 𝐵, 1))) ⇝ 𝑦)) | 
|   | 
| Theorem | prod0 11750 | 
A product over the empty set is one.  (Contributed by Scott Fenton,
       5-Dec-2017.)
 | 
| ⊢ ∏𝑘 ∈ ∅ 𝐴 = 1 | 
|   | 
| Theorem | prod1dc 11751* | 
Any product of one over a valid set is one.  (Contributed by Scott
       Fenton, 7-Dec-2017.)  (Revised by Jim Kingdon, 5-Aug-2024.)
 | 
| ⊢ (((𝑀 ∈ ℤ ∧ 𝐴 ⊆
 (ℤ≥‘𝑀) ∧ ∀𝑗 ∈ (ℤ≥‘𝑀)DECID 𝑗 ∈ 𝐴) ∨ 𝐴 ∈ Fin) → ∏𝑘 ∈ 𝐴 1 = 1) | 
|   | 
| Theorem | prodfct 11752* | 
A lemma to facilitate conversions from the function form to the
       class-variable form of a product.  (Contributed by Scott Fenton,
       7-Dec-2017.)
 | 
| ⊢ (∀𝑘 ∈ 𝐴 𝐵 ∈ ℂ → ∏𝑗 ∈ 𝐴 ((𝑘 ∈ 𝐴 ↦ 𝐵)‘𝑗) = ∏𝑘 ∈ 𝐴 𝐵) | 
|   | 
| Theorem | fprodf1o 11753* | 
Re-index a finite product using a bijection.  (Contributed by Scott
       Fenton, 7-Dec-2017.)
 | 
| ⊢ (𝑘 = 𝐺 → 𝐵 = 𝐷)   
 &   ⊢ (𝜑 → 𝐶 ∈ Fin)    &   ⊢ (𝜑 → 𝐹:𝐶–1-1-onto→𝐴)   
 &   ⊢ ((𝜑 ∧ 𝑛 ∈ 𝐶) → (𝐹‘𝑛) = 𝐺)   
 &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐵 ∈ ℂ)   
 ⇒   ⊢ (𝜑 → ∏𝑘 ∈ 𝐴 𝐵 = ∏𝑛 ∈ 𝐶 𝐷) | 
|   | 
| Theorem | prodssdc 11754* | 
Change the index set to a subset in an upper integer product.
       (Contributed by Scott Fenton, 11-Dec-2017.)  (Revised by Jim Kingdon,
       6-Aug-2024.)
 | 
| ⊢ (𝜑 → 𝐴 ⊆ 𝐵)   
 &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐶 ∈ ℂ)    &   ⊢ (𝜑 → ∃𝑛 ∈ (ℤ≥‘𝑀)∃𝑦(𝑦 # 0 ∧ seq𝑛( · , (𝑘 ∈ (ℤ≥‘𝑀) ↦ if(𝑘 ∈ 𝐵, 𝐶, 1))) ⇝ 𝑦))   
 &   ⊢ (𝜑 → ∀𝑗 ∈ (ℤ≥‘𝑀)DECID 𝑗 ∈ 𝐴)   
 &   ⊢ (𝜑 → 𝑀 ∈ ℤ)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ (𝐵 ∖ 𝐴)) → 𝐶 = 1)    &   ⊢ (𝜑 → 𝐵 ⊆
 (ℤ≥‘𝑀))    &   ⊢ (𝜑 → ∀𝑗 ∈
 (ℤ≥‘𝑀)DECID 𝑗 ∈ 𝐵)    ⇒   ⊢ (𝜑 → ∏𝑘 ∈ 𝐴 𝐶 = ∏𝑘 ∈ 𝐵 𝐶) | 
|   | 
| Theorem | fprodssdc 11755* | 
Change the index set to a subset in a finite sum.  (Contributed by Scott
       Fenton, 16-Dec-2017.)
 | 
| ⊢ (𝜑 → 𝐴 ⊆ 𝐵)   
 &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐶 ∈ ℂ)    &   ⊢ (𝜑 → ∀𝑗 ∈ 𝐵 DECID 𝑗 ∈ 𝐴)   
 &   ⊢ ((𝜑 ∧ 𝑘 ∈ (𝐵 ∖ 𝐴)) → 𝐶 = 1)    &   ⊢ (𝜑 → 𝐵 ∈ Fin)    ⇒   ⊢ (𝜑 → ∏𝑘 ∈ 𝐴 𝐶 = ∏𝑘 ∈ 𝐵 𝐶) | 
|   | 
| Theorem | fprodmul 11756* | 
The product of two finite products.  (Contributed by Scott Fenton,
       14-Dec-2017.)
 | 
| ⊢ (𝜑 → 𝐴 ∈ Fin)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐵 ∈ ℂ)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐶 ∈ ℂ)   
 ⇒   ⊢ (𝜑 → ∏𝑘 ∈ 𝐴 (𝐵 · 𝐶) = (∏𝑘 ∈ 𝐴 𝐵 · ∏𝑘 ∈ 𝐴 𝐶)) | 
|   | 
| Theorem | prodsnf 11757* | 
A product of a singleton is the term.  A version of prodsn 11758 using
       bound-variable hypotheses instead of distinct variable conditions.
       (Contributed by Glauco Siliprandi, 5-Apr-2020.)
 | 
| ⊢ Ⅎ𝑘𝐵   
 &   ⊢ (𝑘 = 𝑀 → 𝐴 = 𝐵)    ⇒   ⊢ ((𝑀 ∈ 𝑉 ∧ 𝐵 ∈ ℂ) → ∏𝑘 ∈ {𝑀}𝐴 = 𝐵) | 
|   | 
| Theorem | prodsn 11758* | 
A product of a singleton is the term.  (Contributed by Scott Fenton,
       14-Dec-2017.)
 | 
| ⊢ (𝑘 = 𝑀 → 𝐴 = 𝐵)    ⇒   ⊢ ((𝑀 ∈ 𝑉 ∧ 𝐵 ∈ ℂ) → ∏𝑘 ∈ {𝑀}𝐴 = 𝐵) | 
|   | 
| Theorem | fprod1 11759* | 
A finite product of only one term is the term itself.  (Contributed by
       Scott Fenton, 14-Dec-2017.)
 | 
| ⊢ (𝑘 = 𝑀 → 𝐴 = 𝐵)    ⇒   ⊢ ((𝑀 ∈ ℤ ∧ 𝐵 ∈ ℂ) → ∏𝑘 ∈ (𝑀...𝑀)𝐴 = 𝐵) | 
|   | 
| Theorem | climprod1 11760 | 
The limit of a product over one.  (Contributed by Scott Fenton,
       15-Dec-2017.)
 | 
| ⊢ 𝑍 = (ℤ≥‘𝑀)    &   ⊢ (𝜑 → 𝑀 ∈ ℤ)   
 ⇒   ⊢ (𝜑 → seq𝑀( · , (𝑍 × {1})) ⇝ 1) | 
|   | 
| Theorem | fprodsplitdc 11761* | 
Split a finite product into two parts.  New proofs should use
       fprodsplit 11762 which is the same but with one fewer
hypothesis.
       (Contributed by Scott Fenton, 16-Dec-2017.)
       (New usage is discouraged.)
 | 
| ⊢ (𝜑 → (𝐴 ∩ 𝐵) = ∅)    &   ⊢ (𝜑 → 𝑈 = (𝐴 ∪ 𝐵))    &   ⊢ (𝜑 → 𝑈 ∈ Fin)    &   ⊢ (𝜑 → ∀𝑗 ∈ 𝑈 DECID 𝑗 ∈ 𝐴)   
 &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝑈) → 𝐶 ∈ ℂ)   
 ⇒   ⊢ (𝜑 → ∏𝑘 ∈ 𝑈 𝐶 = (∏𝑘 ∈ 𝐴 𝐶 · ∏𝑘 ∈ 𝐵 𝐶)) | 
|   | 
| Theorem | fprodsplit 11762* | 
Split a finite product into two parts.  (Contributed by Scott Fenton,
       16-Dec-2017.)
 | 
| ⊢ (𝜑 → (𝐴 ∩ 𝐵) = ∅)    &   ⊢ (𝜑 → 𝑈 = (𝐴 ∪ 𝐵))    &   ⊢ (𝜑 → 𝑈 ∈ Fin)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝑈) → 𝐶 ∈ ℂ)   
 ⇒   ⊢ (𝜑 → ∏𝑘 ∈ 𝑈 𝐶 = (∏𝑘 ∈ 𝐴 𝐶 · ∏𝑘 ∈ 𝐵 𝐶)) | 
|   | 
| Theorem | fprodm1 11763* | 
Separate out the last term in a finite product.  (Contributed by Scott
       Fenton, 16-Dec-2017.)
 | 
| ⊢ (𝜑 → 𝑁 ∈ (ℤ≥‘𝑀))    &   ⊢ ((𝜑 ∧ 𝑘 ∈ (𝑀...𝑁)) → 𝐴 ∈ ℂ)    &   ⊢ (𝑘 = 𝑁 → 𝐴 = 𝐵)    ⇒   ⊢ (𝜑 → ∏𝑘 ∈ (𝑀...𝑁)𝐴 = (∏𝑘 ∈ (𝑀...(𝑁 − 1))𝐴 · 𝐵)) | 
|   | 
| Theorem | fprod1p 11764* | 
Separate out the first term in a finite product.  (Contributed by Scott
       Fenton, 24-Dec-2017.)
 | 
| ⊢ (𝜑 → 𝑁 ∈ (ℤ≥‘𝑀))    &   ⊢ ((𝜑 ∧ 𝑘 ∈ (𝑀...𝑁)) → 𝐴 ∈ ℂ)    &   ⊢ (𝑘 = 𝑀 → 𝐴 = 𝐵)    ⇒   ⊢ (𝜑 → ∏𝑘 ∈ (𝑀...𝑁)𝐴 = (𝐵 · ∏𝑘 ∈ ((𝑀 + 1)...𝑁)𝐴)) | 
|   | 
| Theorem | fprodp1 11765* | 
Multiply in the last term in a finite product.  (Contributed by Scott
       Fenton, 24-Dec-2017.)
 | 
| ⊢ (𝜑 → 𝑁 ∈ (ℤ≥‘𝑀))    &   ⊢ ((𝜑 ∧ 𝑘 ∈ (𝑀...(𝑁 + 1))) → 𝐴 ∈ ℂ)    &   ⊢ (𝑘 = (𝑁 + 1) → 𝐴 = 𝐵)    ⇒   ⊢ (𝜑 → ∏𝑘 ∈ (𝑀...(𝑁 + 1))𝐴 = (∏𝑘 ∈ (𝑀...𝑁)𝐴 · 𝐵)) | 
|   | 
| Theorem | fprodm1s 11766* | 
Separate out the last term in a finite product.  (Contributed by Scott
       Fenton, 27-Dec-2017.)
 | 
| ⊢ (𝜑 → 𝑁 ∈ (ℤ≥‘𝑀))    &   ⊢ ((𝜑 ∧ 𝑘 ∈ (𝑀...𝑁)) → 𝐴 ∈ ℂ)   
 ⇒   ⊢ (𝜑 → ∏𝑘 ∈ (𝑀...𝑁)𝐴 = (∏𝑘 ∈ (𝑀...(𝑁 − 1))𝐴 · ⦋𝑁 / 𝑘⦌𝐴)) | 
|   | 
| Theorem | fprodp1s 11767* | 
Multiply in the last term in a finite product.  (Contributed by Scott
       Fenton, 27-Dec-2017.)
 | 
| ⊢ (𝜑 → 𝑁 ∈ (ℤ≥‘𝑀))    &   ⊢ ((𝜑 ∧ 𝑘 ∈ (𝑀...(𝑁 + 1))) → 𝐴 ∈ ℂ)   
 ⇒   ⊢ (𝜑 → ∏𝑘 ∈ (𝑀...(𝑁 + 1))𝐴 = (∏𝑘 ∈ (𝑀...𝑁)𝐴 · ⦋(𝑁 + 1) / 𝑘⦌𝐴)) | 
|   | 
| Theorem | prodsns 11768* | 
A product of the singleton is the term.  (Contributed by Scott Fenton,
       25-Dec-2017.)
 | 
| ⊢ ((𝑀 ∈ 𝑉 ∧ ⦋𝑀 / 𝑘⦌𝐴 ∈ ℂ) → ∏𝑘 ∈ {𝑀}𝐴 = ⦋𝑀 / 𝑘⦌𝐴) | 
|   | 
| Theorem | fprodunsn 11769* | 
Multiply in an additional term in a finite product.  See also
       fprodsplitsn 11798 which is the same but with a Ⅎ𝑘𝜑 hypothesis in
       place of the distinct variable condition between 𝜑 and 𝑘.
       (Contributed by Jim Kingdon, 16-Aug-2024.)
 | 
| ⊢ Ⅎ𝑘𝐷   
 &   ⊢ (𝜑 → 𝐴 ∈ Fin)    &   ⊢ (𝜑 → 𝐵 ∈ 𝑉)   
 &   ⊢ (𝜑 → ¬ 𝐵 ∈ 𝐴)   
 &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐶 ∈ ℂ)    &   ⊢ (𝜑 → 𝐷 ∈ ℂ)    &   ⊢ (𝑘 = 𝐵 → 𝐶 = 𝐷)    ⇒   ⊢ (𝜑 → ∏𝑘 ∈ (𝐴 ∪ {𝐵})𝐶 = (∏𝑘 ∈ 𝐴 𝐶 · 𝐷)) | 
|   | 
| Theorem | fprodcl2lem 11770* | 
Finite product closure lemma.  (Contributed by Scott Fenton,
         14-Dec-2017.)  (Revised by Jim Kingdon, 17-Aug-2024.)
 | 
| ⊢ (𝜑 → 𝑆 ⊆ ℂ)    &   ⊢ ((𝜑 ∧ (𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆)) → (𝑥 · 𝑦) ∈ 𝑆)   
 &   ⊢ (𝜑 → 𝐴 ∈ Fin)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐵 ∈ 𝑆)   
 &   ⊢ (𝜑 → 𝐴 ≠ ∅)   
 ⇒   ⊢ (𝜑 → ∏𝑘 ∈ 𝐴 𝐵 ∈ 𝑆) | 
|   | 
| Theorem | fprodcllem 11771* | 
Finite product closure lemma.  (Contributed by Scott Fenton,
       14-Dec-2017.)
 | 
| ⊢ (𝜑 → 𝑆 ⊆ ℂ)    &   ⊢ ((𝜑 ∧ (𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆)) → (𝑥 · 𝑦) ∈ 𝑆)   
 &   ⊢ (𝜑 → 𝐴 ∈ Fin)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐵 ∈ 𝑆)   
 &   ⊢ (𝜑 → 1 ∈ 𝑆)    ⇒   ⊢ (𝜑 → ∏𝑘 ∈ 𝐴 𝐵 ∈ 𝑆) | 
|   | 
| Theorem | fprodcl 11772* | 
Closure of a finite product of complex numbers.  (Contributed by Scott
         Fenton, 14-Dec-2017.)
 | 
| ⊢ (𝜑 → 𝐴 ∈ Fin)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐵 ∈ ℂ)   
 ⇒   ⊢ (𝜑 → ∏𝑘 ∈ 𝐴 𝐵 ∈ ℂ) | 
|   | 
| Theorem | fprodrecl 11773* | 
Closure of a finite product of real numbers.  (Contributed by Scott
         Fenton, 14-Dec-2017.)
 | 
| ⊢ (𝜑 → 𝐴 ∈ Fin)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐵 ∈ ℝ)   
 ⇒   ⊢ (𝜑 → ∏𝑘 ∈ 𝐴 𝐵 ∈ ℝ) | 
|   | 
| Theorem | fprodzcl 11774* | 
Closure of a finite product of integers.  (Contributed by Scott
         Fenton, 14-Dec-2017.)
 | 
| ⊢ (𝜑 → 𝐴 ∈ Fin)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐵 ∈ ℤ)   
 ⇒   ⊢ (𝜑 → ∏𝑘 ∈ 𝐴 𝐵 ∈ ℤ) | 
|   | 
| Theorem | fprodnncl 11775* | 
Closure of a finite product of positive integers.  (Contributed by
         Scott Fenton, 14-Dec-2017.)
 | 
| ⊢ (𝜑 → 𝐴 ∈ Fin)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐵 ∈ ℕ)   
 ⇒   ⊢ (𝜑 → ∏𝑘 ∈ 𝐴 𝐵 ∈ ℕ) | 
|   | 
| Theorem | fprodrpcl 11776* | 
Closure of a finite product of positive reals.  (Contributed by Scott
         Fenton, 14-Dec-2017.)
 | 
| ⊢ (𝜑 → 𝐴 ∈ Fin)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐵 ∈
 ℝ+)    ⇒   ⊢ (𝜑 → ∏𝑘 ∈ 𝐴 𝐵 ∈
 ℝ+) | 
|   | 
| Theorem | fprodnn0cl 11777* | 
Closure of a finite product of nonnegative integers.  (Contributed by
         Scott Fenton, 14-Dec-2017.)
 | 
| ⊢ (𝜑 → 𝐴 ∈ Fin)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐵 ∈
 ℕ0)    ⇒   ⊢ (𝜑 → ∏𝑘 ∈ 𝐴 𝐵 ∈
 ℕ0) | 
|   | 
| Theorem | fprodcllemf 11778* | 
Finite product closure lemma.  A version of fprodcllem 11771 using
       bound-variable hypotheses instead of distinct variable conditions.
       (Contributed by Glauco Siliprandi, 5-Apr-2020.)
 | 
| ⊢ Ⅎ𝑘𝜑   
 &   ⊢ (𝜑 → 𝑆 ⊆ ℂ)    &   ⊢ ((𝜑 ∧ (𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆)) → (𝑥 · 𝑦) ∈ 𝑆)   
 &   ⊢ (𝜑 → 𝐴 ∈ Fin)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐵 ∈ 𝑆)   
 &   ⊢ (𝜑 → 1 ∈ 𝑆)    ⇒   ⊢ (𝜑 → ∏𝑘 ∈ 𝐴 𝐵 ∈ 𝑆) | 
|   | 
| Theorem | fprodreclf 11779* | 
Closure of a finite product of real numbers.  A version of fprodrecl 11773
       using bound-variable hypotheses instead of distinct variable conditions.
       (Contributed by Glauco Siliprandi, 5-Apr-2020.)
 | 
| ⊢ Ⅎ𝑘𝜑   
 &   ⊢ (𝜑 → 𝐴 ∈ Fin)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐵 ∈ ℝ)   
 ⇒   ⊢ (𝜑 → ∏𝑘 ∈ 𝐴 𝐵 ∈ ℝ) | 
|   | 
| Theorem | fprodfac 11780* | 
Factorial using product notation.  (Contributed by Scott Fenton,
       15-Dec-2017.)
 | 
| ⊢ (𝐴 ∈ ℕ0 →
 (!‘𝐴) = ∏𝑘 ∈ (1...𝐴)𝑘) | 
|   | 
| Theorem | fprodabs 11781* | 
The absolute value of a finite product.  (Contributed by Scott Fenton,
       25-Dec-2017.)
 | 
| ⊢ 𝑍 = (ℤ≥‘𝑀)    &   ⊢ (𝜑 → 𝑁 ∈ 𝑍)   
 &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝑍) → 𝐴 ∈ ℂ)   
 ⇒   ⊢ (𝜑 → (abs‘∏𝑘 ∈ (𝑀...𝑁)𝐴) = ∏𝑘 ∈ (𝑀...𝑁)(abs‘𝐴)) | 
|   | 
| Theorem | fprodeq0 11782* | 
Any finite product containing a zero term is itself zero.  (Contributed
       by Scott Fenton, 27-Dec-2017.)
 | 
| ⊢ 𝑍 = (ℤ≥‘𝑀)    &   ⊢ (𝜑 → 𝑁 ∈ 𝑍)   
 &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝑍) → 𝐴 ∈ ℂ)    &   ⊢ ((𝜑 ∧ 𝑘 = 𝑁) → 𝐴 = 0)    ⇒   ⊢ ((𝜑 ∧ 𝐾 ∈ (ℤ≥‘𝑁)) → ∏𝑘 ∈ (𝑀...𝐾)𝐴 = 0) | 
|   | 
| Theorem | fprodshft 11783* | 
Shift the index of a finite product.  (Contributed by Scott Fenton,
         5-Jan-2018.)
 | 
| ⊢ (𝜑 → 𝐾 ∈ ℤ)    &   ⊢ (𝜑 → 𝑀 ∈ ℤ)    &   ⊢ (𝜑 → 𝑁 ∈ ℤ)    &   ⊢ ((𝜑 ∧ 𝑗 ∈ (𝑀...𝑁)) → 𝐴 ∈ ℂ)    &   ⊢ (𝑗 = (𝑘 − 𝐾) → 𝐴 = 𝐵)    ⇒   ⊢ (𝜑 → ∏𝑗 ∈ (𝑀...𝑁)𝐴 = ∏𝑘 ∈ ((𝑀 + 𝐾)...(𝑁 + 𝐾))𝐵) | 
|   | 
| Theorem | fprodrev 11784* | 
Reversal of a finite product.  (Contributed by Scott Fenton,
       5-Jan-2018.)
 | 
| ⊢ (𝜑 → 𝐾 ∈ ℤ)    &   ⊢ (𝜑 → 𝑀 ∈ ℤ)    &   ⊢ (𝜑 → 𝑁 ∈ ℤ)    &   ⊢ ((𝜑 ∧ 𝑗 ∈ (𝑀...𝑁)) → 𝐴 ∈ ℂ)    &   ⊢ (𝑗 = (𝐾 − 𝑘) → 𝐴 = 𝐵)    ⇒   ⊢ (𝜑 → ∏𝑗 ∈ (𝑀...𝑁)𝐴 = ∏𝑘 ∈ ((𝐾 − 𝑁)...(𝐾 − 𝑀))𝐵) | 
|   | 
| Theorem | fprodconst 11785* | 
The product of constant terms (𝑘 is not free in 𝐵).
       (Contributed by Scott Fenton, 12-Jan-2018.)
 | 
| ⊢ ((𝐴 ∈ Fin ∧ 𝐵 ∈ ℂ) → ∏𝑘 ∈ 𝐴 𝐵 = (𝐵↑(♯‘𝐴))) | 
|   | 
| Theorem | fprodap0 11786* | 
A finite product of nonzero terms is nonzero.  (Contributed by Scott
       Fenton, 15-Jan-2018.)
 | 
| ⊢ (𝜑 → 𝐴 ∈ Fin)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐵 ∈ ℂ)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐵 # 0)    ⇒   ⊢ (𝜑 → ∏𝑘 ∈ 𝐴 𝐵 # 0) | 
|   | 
| Theorem | fprod2dlemstep 11787* | 
Lemma for fprod2d 11788- induction step.  (Contributed by Scott
Fenton,
         30-Jan-2018.)
 | 
| ⊢ (𝑧 = 〈𝑗, 𝑘〉 → 𝐷 = 𝐶)   
 &   ⊢ (𝜑 → 𝐴 ∈ Fin)    &   ⊢ ((𝜑 ∧ 𝑗 ∈ 𝐴) → 𝐵 ∈ Fin)    &   ⊢ ((𝜑 ∧ (𝑗 ∈ 𝐴 ∧ 𝑘 ∈ 𝐵)) → 𝐶 ∈ ℂ)    &   ⊢ (𝜑 → ¬ 𝑦 ∈ 𝑥)   
 &   ⊢ (𝜑 → (𝑥 ∪ {𝑦}) ⊆ 𝐴)   
 &   ⊢ (𝜑 → 𝑥 ∈ Fin)    &   ⊢ (𝜓 ↔ ∏𝑗 ∈ 𝑥 ∏𝑘 ∈ 𝐵 𝐶 = ∏𝑧 ∈ ∪
 𝑗 ∈ 𝑥 ({𝑗} × 𝐵)𝐷)    ⇒   ⊢ ((𝜑 ∧ 𝜓) → ∏𝑗 ∈ (𝑥 ∪ {𝑦})∏𝑘 ∈ 𝐵 𝐶 = ∏𝑧 ∈ ∪
 𝑗 ∈ (𝑥 ∪ {𝑦})({𝑗} × 𝐵)𝐷) | 
|   | 
| Theorem | fprod2d 11788* | 
Write a double product as a product over a two-dimensional region.
       Compare fsum2d 11600.  (Contributed by Scott Fenton,
30-Jan-2018.)
 | 
| ⊢ (𝑧 = 〈𝑗, 𝑘〉 → 𝐷 = 𝐶)   
 &   ⊢ (𝜑 → 𝐴 ∈ Fin)    &   ⊢ ((𝜑 ∧ 𝑗 ∈ 𝐴) → 𝐵 ∈ Fin)    &   ⊢ ((𝜑 ∧ (𝑗 ∈ 𝐴 ∧ 𝑘 ∈ 𝐵)) → 𝐶 ∈ ℂ)   
 ⇒   ⊢ (𝜑 → ∏𝑗 ∈ 𝐴 ∏𝑘 ∈ 𝐵 𝐶 = ∏𝑧 ∈ ∪
 𝑗 ∈ 𝐴 ({𝑗} × 𝐵)𝐷) | 
|   | 
| Theorem | fprodxp 11789* | 
Combine two products into a single product over the cartesian product.
       (Contributed by Scott Fenton, 1-Feb-2018.)
 | 
| ⊢ (𝑧 = 〈𝑗, 𝑘〉 → 𝐷 = 𝐶)   
 &   ⊢ (𝜑 → 𝐴 ∈ Fin)    &   ⊢ (𝜑 → 𝐵 ∈ Fin)    &   ⊢ ((𝜑 ∧ (𝑗 ∈ 𝐴 ∧ 𝑘 ∈ 𝐵)) → 𝐶 ∈ ℂ)   
 ⇒   ⊢ (𝜑 → ∏𝑗 ∈ 𝐴 ∏𝑘 ∈ 𝐵 𝐶 = ∏𝑧 ∈ (𝐴 × 𝐵)𝐷) | 
|   | 
| Theorem | fprodcnv 11790* | 
Transform a product region using the converse operation.  (Contributed
       by Scott Fenton, 1-Feb-2018.)
 | 
| ⊢ (𝑥 = 〈𝑗, 𝑘〉 → 𝐵 = 𝐷)   
 &   ⊢ (𝑦 = 〈𝑘, 𝑗〉 → 𝐶 = 𝐷)   
 &   ⊢ (𝜑 → 𝐴 ∈ Fin)    &   ⊢ (𝜑 → Rel 𝐴)   
 &   ⊢ ((𝜑 ∧ 𝑥 ∈ 𝐴) → 𝐵 ∈ ℂ)   
 ⇒   ⊢ (𝜑 → ∏𝑥 ∈ 𝐴 𝐵 = ∏𝑦 ∈ ◡ 𝐴𝐶) | 
|   | 
| Theorem | fprodcom2fi 11791* | 
Interchange order of multiplication.  Note that 𝐵(𝑗) and
       𝐷(𝑘) are not necessarily constant
expressions.  (Contributed by
       Scott Fenton, 1-Feb-2018.)  (Proof shortened by JJ, 2-Aug-2021.)
 | 
| ⊢ (𝜑 → 𝐴 ∈ Fin)    &   ⊢ (𝜑 → 𝐶 ∈ Fin)    &   ⊢ ((𝜑 ∧ 𝑗 ∈ 𝐴) → 𝐵 ∈ Fin)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐶) → 𝐷 ∈ Fin)    &   ⊢ (𝜑 → ((𝑗 ∈ 𝐴 ∧ 𝑘 ∈ 𝐵) ↔ (𝑘 ∈ 𝐶 ∧ 𝑗 ∈ 𝐷)))    &   ⊢ ((𝜑 ∧ (𝑗 ∈ 𝐴 ∧ 𝑘 ∈ 𝐵)) → 𝐸 ∈ ℂ)   
 ⇒   ⊢ (𝜑 → ∏𝑗 ∈ 𝐴 ∏𝑘 ∈ 𝐵 𝐸 = ∏𝑘 ∈ 𝐶 ∏𝑗 ∈ 𝐷 𝐸) | 
|   | 
| Theorem | fprodcom 11792* | 
Interchange product order.  (Contributed by Scott Fenton,
       2-Feb-2018.)
 | 
| ⊢ (𝜑 → 𝐴 ∈ Fin)    &   ⊢ (𝜑 → 𝐵 ∈ Fin)    &   ⊢ ((𝜑 ∧ (𝑗 ∈ 𝐴 ∧ 𝑘 ∈ 𝐵)) → 𝐶 ∈ ℂ)   
 ⇒   ⊢ (𝜑 → ∏𝑗 ∈ 𝐴 ∏𝑘 ∈ 𝐵 𝐶 = ∏𝑘 ∈ 𝐵 ∏𝑗 ∈ 𝐴 𝐶) | 
|   | 
| Theorem | fprod0diagfz 11793* | 
Two ways to express "the product of 𝐴(𝑗, 𝑘) over the triangular
       region 𝑀 ≤ 𝑗, 𝑀 ≤ 𝑘, 𝑗 + 𝑘 ≤ 𝑁.  Compare
       fisum0diag 11606.  (Contributed by Scott Fenton, 2-Feb-2018.)
 | 
| ⊢ ((𝜑 ∧ (𝑗 ∈ (0...𝑁) ∧ 𝑘 ∈ (0...(𝑁 − 𝑗)))) → 𝐴 ∈ ℂ)    &   ⊢ (𝜑 → 𝑁 ∈ ℤ)   
 ⇒   ⊢ (𝜑 → ∏𝑗 ∈ (0...𝑁)∏𝑘 ∈ (0...(𝑁 − 𝑗))𝐴 = ∏𝑘 ∈ (0...𝑁)∏𝑗 ∈ (0...(𝑁 − 𝑘))𝐴) | 
|   | 
| Theorem | fprodrec 11794* | 
The finite product of reciprocals is the reciprocal of the product.
       (Contributed by Jim Kingdon, 28-Aug-2024.)
 | 
| ⊢ (𝜑 → 𝐴 ∈ Fin)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐵 ∈ ℂ)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐵 # 0)    ⇒   ⊢ (𝜑 → ∏𝑘 ∈ 𝐴 (1 / 𝐵) = (1 / ∏𝑘 ∈ 𝐴 𝐵)) | 
|   | 
| Theorem | fproddivap 11795* | 
The quotient of two finite products.  (Contributed by Scott Fenton,
       15-Jan-2018.)
 | 
| ⊢ (𝜑 → 𝐴 ∈ Fin)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐵 ∈ ℂ)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐶 ∈ ℂ)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐶 # 0)    ⇒   ⊢ (𝜑 → ∏𝑘 ∈ 𝐴 (𝐵 / 𝐶) = (∏𝑘 ∈ 𝐴 𝐵 / ∏𝑘 ∈ 𝐴 𝐶)) | 
|   | 
| Theorem | fproddivapf 11796* | 
The quotient of two finite products.  A version of fproddivap 11795 using
       bound-variable hypotheses instead of distinct variable conditions.
       (Contributed by Glauco Siliprandi, 5-Apr-2020.)
 | 
| ⊢ Ⅎ𝑘𝜑   
 &   ⊢ (𝜑 → 𝐴 ∈ Fin)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐵 ∈ ℂ)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐶 ∈ ℂ)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐶 # 0)    ⇒   ⊢ (𝜑 → ∏𝑘 ∈ 𝐴 (𝐵 / 𝐶) = (∏𝑘 ∈ 𝐴 𝐵 / ∏𝑘 ∈ 𝐴 𝐶)) | 
|   | 
| Theorem | fprodsplitf 11797* | 
Split a finite product into two parts.  A version of fprodsplit 11762 using
       bound-variable hypotheses instead of distinct variable conditions.
       (Contributed by Glauco Siliprandi, 5-Apr-2020.)
 | 
| ⊢ Ⅎ𝑘𝜑   
 &   ⊢ (𝜑 → (𝐴 ∩ 𝐵) = ∅)    &   ⊢ (𝜑 → 𝑈 = (𝐴 ∪ 𝐵))    &   ⊢ (𝜑 → 𝑈 ∈ Fin)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝑈) → 𝐶 ∈ ℂ)   
 ⇒   ⊢ (𝜑 → ∏𝑘 ∈ 𝑈 𝐶 = (∏𝑘 ∈ 𝐴 𝐶 · ∏𝑘 ∈ 𝐵 𝐶)) | 
|   | 
| Theorem | fprodsplitsn 11798* | 
Separate out a term in a finite product.  See also fprodunsn 11769 which is
       the same but with a distinct variable condition in place of
       Ⅎ𝑘𝜑.  (Contributed by Glauco Siliprandi,
5-Apr-2020.)
 | 
| ⊢ Ⅎ𝑘𝜑   
 &   ⊢ Ⅎ𝑘𝐷   
 &   ⊢ (𝜑 → 𝐴 ∈ Fin)    &   ⊢ (𝜑 → 𝐵 ∈ 𝑉)   
 &   ⊢ (𝜑 → ¬ 𝐵 ∈ 𝐴)   
 &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐶 ∈ ℂ)    &   ⊢ (𝑘 = 𝐵 → 𝐶 = 𝐷)   
 &   ⊢ (𝜑 → 𝐷 ∈ ℂ)   
 ⇒   ⊢ (𝜑 → ∏𝑘 ∈ (𝐴 ∪ {𝐵})𝐶 = (∏𝑘 ∈ 𝐴 𝐶 · 𝐷)) | 
|   | 
| Theorem | fprodsplit1f 11799* | 
Separate out a term in a finite product.  (Contributed by Glauco
       Siliprandi, 5-Apr-2020.)
 | 
| ⊢ Ⅎ𝑘𝜑   
 &   ⊢ (𝜑 → Ⅎ𝑘𝐷)   
 &   ⊢ (𝜑 → 𝐴 ∈ Fin)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐵 ∈ ℂ)    &   ⊢ (𝜑 → 𝐶 ∈ 𝐴)   
 &   ⊢ ((𝜑 ∧ 𝑘 = 𝐶) → 𝐵 = 𝐷)    ⇒   ⊢ (𝜑 → ∏𝑘 ∈ 𝐴 𝐵 = (𝐷 · ∏𝑘 ∈ (𝐴 ∖ {𝐶})𝐵)) | 
|   | 
| Theorem | fprodclf 11800* | 
Closure of a finite product of complex numbers.  A version of fprodcl 11772
       using bound-variable hypotheses instead of distinct variable conditions.
       (Contributed by Glauco Siliprandi, 5-Apr-2020.)
 | 
| ⊢ Ⅎ𝑘𝜑   
 &   ⊢ (𝜑 → 𝐴 ∈ Fin)    &   ⊢ ((𝜑 ∧ 𝑘 ∈ 𝐴) → 𝐵 ∈ ℂ)   
 ⇒   ⊢ (𝜑 → ∏𝑘 ∈ 𝐴 𝐵 ∈ ℂ) |