MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  omass Structured version   Visualization version   GIF version

Theorem omass 8602
Description: Multiplication of ordinal numbers is associative. Theorem 8.26 of [TakeutiZaring] p. 65. Theorem 4.4 of [Schloeder] p. 13. (Contributed by NM, 28-Dec-2004.)
Assertion
Ref Expression
omass ((𝐴 ∈ On ∧ 𝐵 ∈ On ∧ 𝐶 ∈ On) → ((𝐴 ·o 𝐵) ·o 𝐶) = (𝐴 ·o (𝐵 ·o 𝐶)))

Proof of Theorem omass
Dummy variables 𝑥 𝑦 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 oveq2 7438 . . . . . 6 (𝑥 = ∅ → ((𝐴 ·o 𝐵) ·o 𝑥) = ((𝐴 ·o 𝐵) ·o ∅))
2 oveq2 7438 . . . . . . 7 (𝑥 = ∅ → (𝐵 ·o 𝑥) = (𝐵 ·o ∅))
32oveq2d 7446 . . . . . 6 (𝑥 = ∅ → (𝐴 ·o (𝐵 ·o 𝑥)) = (𝐴 ·o (𝐵 ·o ∅)))
41, 3eqeq12d 2779 . . . . 5 (𝑥 = ∅ → (((𝐴 ·o 𝐵) ·o 𝑥) = (𝐴 ·o (𝐵 ·o 𝑥)) ↔ ((𝐴 ·o 𝐵) ·o ∅) = (𝐴 ·o (𝐵 ·o ∅))))
5 oveq2 7438 . . . . . 6 (𝑥 = 𝑦 → ((𝐴 ·o 𝐵) ·o 𝑥) = ((𝐴 ·o 𝐵) ·o 𝑦))
6 oveq2 7438 . . . . . . 7 (𝑥 = 𝑦 → (𝐵 ·o 𝑥) = (𝐵 ·o 𝑦))
76oveq2d 7446 . . . . . 6 (𝑥 = 𝑦 → (𝐴 ·o (𝐵 ·o 𝑥)) = (𝐴 ·o (𝐵 ·o 𝑦)))
85, 7eqeq12d 2779 . . . . 5 (𝑥 = 𝑦 → (((𝐴 ·o 𝐵) ·o 𝑥) = (𝐴 ·o (𝐵 ·o 𝑥)) ↔ ((𝐴 ·o 𝐵) ·o 𝑦) = (𝐴 ·o (𝐵 ·o 𝑦))))
9 oveq2 7438 . . . . . 6 (𝑥 = suc 𝑦 → ((𝐴 ·o 𝐵) ·o 𝑥) = ((𝐴 ·o 𝐵) ·o suc 𝑦))
10 oveq2 7438 . . . . . . 7 (𝑥 = suc 𝑦 → (𝐵 ·o 𝑥) = (𝐵 ·o suc 𝑦))
1110oveq2d 7446 . . . . . 6 (𝑥 = suc 𝑦 → (𝐴 ·o (𝐵 ·o 𝑥)) = (𝐴 ·o (𝐵 ·o suc 𝑦)))
129, 11eqeq12d 2779 . . . . 5 (𝑥 = suc 𝑦 → (((𝐴 ·o 𝐵) ·o 𝑥) = (𝐴 ·o (𝐵 ·o 𝑥)) ↔ ((𝐴 ·o 𝐵) ·o suc 𝑦) = (𝐴 ·o (𝐵 ·o suc 𝑦))))
13 oveq2 7438 . . . . . 6 (𝑥 = 𝐶 → ((𝐴 ·o 𝐵) ·o 𝑥) = ((𝐴 ·o 𝐵) ·o 𝐶))
14 oveq2 7438 . . . . . . 7 (𝑥 = 𝐶 → (𝐵 ·o 𝑥) = (𝐵 ·o 𝐶))
1514oveq2d 7446 . . . . . 6 (𝑥 = 𝐶 → (𝐴 ·o (𝐵 ·o 𝑥)) = (𝐴 ·o (𝐵 ·o 𝐶)))
1613, 15eqeq12d 2779 . . . . 5 (𝑥 = 𝐶 → (((𝐴 ·o 𝐵) ·o 𝑥) = (𝐴 ·o (𝐵 ·o 𝑥)) ↔ ((𝐴 ·o 𝐵) ·o 𝐶) = (𝐴 ·o (𝐵 ·o 𝐶))))
17 omcl 8558 . . . . . . 7 ((𝐴 ∈ On ∧ 𝐵 ∈ On) → (𝐴 ·o 𝐵) ∈ On)
18 om0 8539 . . . . . . 7 ((𝐴 ·o 𝐵) ∈ On → ((𝐴 ·o 𝐵) ·o ∅) = ∅)
1917, 18syl 18 . . . . . 6 ((𝐴 ∈ On ∧ 𝐵 ∈ On) → ((𝐴 ·o 𝐵) ·o ∅) = ∅)
20 om0 8539 . . . . . . . 8 (𝐵 ∈ On → (𝐵 ·o ∅) = ∅)
2120oveq2d 7446 . . . . . . 7 (𝐵 ∈ On → (𝐴 ·o (𝐵 ·o ∅)) = (𝐴 ·o ∅))
22 om0 8539 . . . . . . 7 (𝐴 ∈ On → (𝐴 ·o ∅) = ∅)
2321, 22sylan9eqr 2820 . . . . . 6 ((𝐴 ∈ On ∧ 𝐵 ∈ On) → (𝐴 ·o (𝐵 ·o ∅)) = ∅)
2419, 23eqtr4d 2801 . . . . 5 ((𝐴 ∈ On ∧ 𝐵 ∈ On) → ((𝐴 ·o 𝐵) ·o ∅) = (𝐴 ·o (𝐵 ·o ∅)))
25 oveq1 7437 . . . . . . . . 9 (((𝐴 ·o 𝐵) ·o 𝑦) = (𝐴 ·o (𝐵 ·o 𝑦)) → (((𝐴 ·o 𝐵) ·o 𝑦) +o (𝐴 ·o 𝐵)) = ((𝐴 ·o (𝐵 ·o 𝑦)) +o (𝐴 ·o 𝐵)))
26 omsuc 8548 . . . . . . . . . . 11 (((𝐴 ·o 𝐵) ∈ On ∧ 𝑦 ∈ On) → ((𝐴 ·o 𝐵) ·o suc 𝑦) = (((𝐴 ·o 𝐵) ·o 𝑦) +o (𝐴 ·o 𝐵)))
2717, 26stoic3 1808 . . . . . . . . . 10 ((𝐴 ∈ On ∧ 𝐵 ∈ On ∧ 𝑦 ∈ On) → ((𝐴 ·o 𝐵) ·o suc 𝑦) = (((𝐴 ·o 𝐵) ·o 𝑦) +o (𝐴 ·o 𝐵)))
28 omsuc 8548 . . . . . . . . . . . . 13 ((𝐵 ∈ On ∧ 𝑦 ∈ On) → (𝐵 ·o suc 𝑦) = ((𝐵 ·o 𝑦) +o 𝐵))
29283adant1 1148 . . . . . . . . . . . 12 ((𝐴 ∈ On ∧ 𝐵 ∈ On ∧ 𝑦 ∈ On) → (𝐵 ·o suc 𝑦) = ((𝐵 ·o 𝑦) +o 𝐵))
3029oveq2d 7446 . . . . . . . . . . 11 ((𝐴 ∈ On ∧ 𝐵 ∈ On ∧ 𝑦 ∈ On) → (𝐴 ·o (𝐵 ·o suc 𝑦)) = (𝐴 ·o ((𝐵 ·o 𝑦) +o 𝐵)))
31 omcl 8558 . . . . . . . . . . . . . . . . 17 ((𝐵 ∈ On ∧ 𝑦 ∈ On) → (𝐵 ·o 𝑦) ∈ On)
32 odi 8601 . . . . . . . . . . . . . . . . 17 ((𝐴 ∈ On ∧ (𝐵 ·o 𝑦) ∈ On ∧ 𝐵 ∈ On) → (𝐴 ·o ((𝐵 ·o 𝑦) +o 𝐵)) = ((𝐴 ·o (𝐵 ·o 𝑦)) +o (𝐴 ·o 𝐵)))
3331, 32syl3an2 1182 . . . . . . . . . . . . . . . 16 ((𝐴 ∈ On ∧ (𝐵 ∈ On ∧ 𝑦 ∈ On) ∧ 𝐵 ∈ On) → (𝐴 ·o ((𝐵 ·o 𝑦) +o 𝐵)) = ((𝐴 ·o (𝐵 ·o 𝑦)) +o (𝐴 ·o 𝐵)))
34333exp 1137 . . . . . . . . . . . . . . 15 (𝐴 ∈ On → ((𝐵 ∈ On ∧ 𝑦 ∈ On) → (𝐵 ∈ On → (𝐴 ·o ((𝐵 ·o 𝑦) +o 𝐵)) = ((𝐴 ·o (𝐵 ·o 𝑦)) +o (𝐴 ·o 𝐵)))))
3534expd 421 . . . . . . . . . . . . . 14 (𝐴 ∈ On → (𝐵 ∈ On → (𝑦 ∈ On → (𝐵 ∈ On → (𝐴 ·o ((𝐵 ·o 𝑦) +o 𝐵)) = ((𝐴 ·o (𝐵 ·o 𝑦)) +o (𝐴 ·o 𝐵))))))
3635com34 92 . . . . . . . . . . . . 13 (𝐴 ∈ On → (𝐵 ∈ On → (𝐵 ∈ On → (𝑦 ∈ On → (𝐴 ·o ((𝐵 ·o 𝑦) +o 𝐵)) = ((𝐴 ·o (𝐵 ·o 𝑦)) +o (𝐴 ·o 𝐵))))))
3736pm2.43d 54 . . . . . . . . . . . 12 (𝐴 ∈ On → (𝐵 ∈ On → (𝑦 ∈ On → (𝐴 ·o ((𝐵 ·o 𝑦) +o 𝐵)) = ((𝐴 ·o (𝐵 ·o 𝑦)) +o (𝐴 ·o 𝐵)))))
38373imp 1128 . . . . . . . . . . 11 ((𝐴 ∈ On ∧ 𝐵 ∈ On ∧ 𝑦 ∈ On) → (𝐴 ·o ((𝐵 ·o 𝑦) +o 𝐵)) = ((𝐴 ·o (𝐵 ·o 𝑦)) +o (𝐴 ·o 𝐵)))
3930, 38eqtrd 2798 . . . . . . . . . 10 ((𝐴 ∈ On ∧ 𝐵 ∈ On ∧ 𝑦 ∈ On) → (𝐴 ·o (𝐵 ·o suc 𝑦)) = ((𝐴 ·o (𝐵 ·o 𝑦)) +o (𝐴 ·o 𝐵)))
4027, 39eqeq12d 2779 . . . . . . . . 9 ((𝐴 ∈ On ∧ 𝐵 ∈ On ∧ 𝑦 ∈ On) → (((𝐴 ·o 𝐵) ·o suc 𝑦) = (𝐴 ·o (𝐵 ·o suc 𝑦)) ↔ (((𝐴 ·o 𝐵) ·o 𝑦) +o (𝐴 ·o 𝐵)) = ((𝐴 ·o (𝐵 ·o 𝑦)) +o (𝐴 ·o 𝐵))))
4125, 40imbitrrid 249 . . . . . . . 8 ((𝐴 ∈ On ∧ 𝐵 ∈ On ∧ 𝑦 ∈ On) → (((𝐴 ·o 𝐵) ·o 𝑦) = (𝐴 ·o (𝐵 ·o 𝑦)) → ((𝐴 ·o 𝐵) ·o suc 𝑦) = (𝐴 ·o (𝐵 ·o suc 𝑦))))
42413exp 1137 . . . . . . 7 (𝐴 ∈ On → (𝐵 ∈ On → (𝑦 ∈ On → (((𝐴 ·o 𝐵) ·o 𝑦) = (𝐴 ·o (𝐵 ·o 𝑦)) → ((𝐴 ·o 𝐵) ·o suc 𝑦) = (𝐴 ·o (𝐵 ·o suc 𝑦))))))
4342com3r 88 . . . . . 6 (𝑦 ∈ On → (𝐴 ∈ On → (𝐵 ∈ On → (((𝐴 ·o 𝐵) ·o 𝑦) = (𝐴 ·o (𝐵 ·o 𝑦)) → ((𝐴 ·o 𝐵) ·o suc 𝑦) = (𝐴 ·o (𝐵 ·o suc 𝑦))))))
4443impd 416 . . . . 5 (𝑦 ∈ On → ((𝐴 ∈ On ∧ 𝐵 ∈ On) → (((𝐴 ·o 𝐵) ·o 𝑦) = (𝐴 ·o (𝐵 ·o 𝑦)) → ((𝐴 ·o 𝐵) ·o suc 𝑦) = (𝐴 ·o (𝐵 ·o suc 𝑦)))))
4517ancoms 464 . . . . . . . . . . . . . 14 ((𝐵 ∈ On ∧ 𝐴 ∈ On) → (𝐴 ·o 𝐵) ∈ On)
46 vex 3458 . . . . . . . . . . . . . . 15 𝑥 ∈ V
47 omlim 8555 . . . . . . . . . . . . . . 15 (((𝐴 ·o 𝐵) ∈ On ∧ (𝑥 ∈ V ∧ Lim 𝑥)) → ((𝐴 ·o 𝐵) ·o 𝑥) = ∪ 𝑦 ∈ 𝑥 ((𝐴 ·o 𝐵) ·o 𝑦))
4846, 47mpanr1 716 . . . . . . . . . . . . . 14 (((𝐴 ·o 𝐵) ∈ On ∧ Lim 𝑥) → ((𝐴 ·o 𝐵) ·o 𝑥) = ∪ 𝑦 ∈ 𝑥 ((𝐴 ·o 𝐵) ·o 𝑦))
4945, 48sylan 592 . . . . . . . . . . . . 13 (((𝐵 ∈ On ∧ 𝐴 ∈ On) ∧ Lim 𝑥) → ((𝐴 ·o 𝐵) ·o 𝑥) = ∪ 𝑦 ∈ 𝑥 ((𝐴 ·o 𝐵) ·o 𝑦))
5049an32s 665 . . . . . . . . . . . 12 (((𝐵 ∈ On ∧ Lim 𝑥) ∧ 𝐴 ∈ On) → ((𝐴 ·o 𝐵) ·o 𝑥) = ∪ 𝑦 ∈ 𝑥 ((𝐴 ·o 𝐵) ·o 𝑦))
5150ad2antrr 739 . . . . . . . . . . 11 (((((𝐵 ∈ On ∧ Lim 𝑥) ∧ 𝐴 ∈ On) ∧ ∅ ∈ 𝐵) ∧ ∀𝑦 ∈ 𝑥 ((𝐴 ·o 𝐵) ·o 𝑦) = (𝐴 ·o (𝐵 ·o 𝑦))) → ((𝐴 ·o 𝐵) ·o 𝑥) = ∪ 𝑦 ∈ 𝑥 ((𝐴 ·o 𝐵) ·o 𝑦))
52 iuneq2 4974 . . . . . . . . . . . 12 (∀𝑦 ∈ 𝑥 ((𝐴 ·o 𝐵) ·o 𝑦) = (𝐴 ·o (𝐵 ·o 𝑦)) → ∪ 𝑦 ∈ 𝑥 ((𝐴 ·o 𝐵) ·o 𝑦) = ∪ 𝑦 ∈ 𝑥 (𝐴 ·o (𝐵 ·o 𝑦)))
53 limelon 6435 . . . . . . . . . . . . . . . . . . . . . 22 ((𝑥 ∈ V ∧ Lim 𝑥) → 𝑥 ∈ On)
5446, 53mpan 703 . . . . . . . . . . . . . . . . . . . . 21 (Lim 𝑥 → 𝑥 ∈ On)
5554anim1i 627 . . . . . . . . . . . . . . . . . . . 20 ((Lim 𝑥 ∧ 𝐵 ∈ On) → (𝑥 ∈ On ∧ 𝐵 ∈ On))
5655ancoms 464 . . . . . . . . . . . . . . . . . . 19 ((𝐵 ∈ On ∧ Lim 𝑥) → (𝑥 ∈ On ∧ 𝐵 ∈ On))
57 omordi 8588 . . . . . . . . . . . . . . . . . . 19 (((𝑥 ∈ On ∧ 𝐵 ∈ On) ∧ ∅ ∈ 𝐵) → (𝑦 ∈ 𝑥 → (𝐵 ·o 𝑦) ∈ (𝐵 ·o 𝑥)))
5856, 57sylan 592 . . . . . . . . . . . . . . . . . 18 (((𝐵 ∈ On ∧ Lim 𝑥) ∧ ∅ ∈ 𝐵) → (𝑦 ∈ 𝑥 → (𝐵 ·o 𝑦) ∈ (𝐵 ·o 𝑥)))
59 ssid 3935 . . . . . . . . . . . . . . . . . . 19 (𝐴 ·o (𝐵 ·o 𝑦)) ⊆ (𝐴 ·o (𝐵 ·o 𝑦))
60 oveq2 7438 . . . . . . . . . . . . . . . . . . . . 21 (𝑧 = (𝐵 ·o 𝑦) → (𝐴 ·o 𝑧) = (𝐴 ·o (𝐵 ·o 𝑦)))
6160sseq2d 3945 . . . . . . . . . . . . . . . . . . . 20 (𝑧 = (𝐵 ·o 𝑦) → ((𝐴 ·o (𝐵 ·o 𝑦)) ⊆ (𝐴 ·o 𝑧) ↔ (𝐴 ·o (𝐵 ·o 𝑦)) ⊆ (𝐴 ·o (𝐵 ·o 𝑦))))
6261rspcev 3580 . . . . . . . . . . . . . . . . . . 19 (((𝐵 ·o 𝑦) ∈ (𝐵 ·o 𝑥) ∧ (𝐴 ·o (𝐵 ·o 𝑦)) ⊆ (𝐴 ·o (𝐵 ·o 𝑦))) → ∃𝑧 ∈ (𝐵 ·o 𝑥)(𝐴 ·o (𝐵 ·o 𝑦)) ⊆ (𝐴 ·o 𝑧))
6359, 62mpan2 704 . . . . . . . . . . . . . . . . . 18 ((𝐵 ·o 𝑦) ∈ (𝐵 ·o 𝑥) → ∃𝑧 ∈ (𝐵 ·o 𝑥)(𝐴 ·o (𝐵 ·o 𝑦)) ⊆ (𝐴 ·o 𝑧))
6458, 63syl6 36 . . . . . . . . . . . . . . . . 17 (((𝐵 ∈ On ∧ Lim 𝑥) ∧ ∅ ∈ 𝐵) → (𝑦 ∈ 𝑥 → ∃𝑧 ∈ (𝐵 ·o 𝑥)(𝐴 ·o (𝐵 ·o 𝑦)) ⊆ (𝐴 ·o 𝑧)))
6564ralrimiv 3157 . . . . . . . . . . . . . . . 16 (((𝐵 ∈ On ∧ Lim 𝑥) ∧ ∅ ∈ 𝐵) → ∀𝑦 ∈ 𝑥 ∃𝑧 ∈ (𝐵 ·o 𝑥)(𝐴 ·o (𝐵 ·o 𝑦)) ⊆ (𝐴 ·o 𝑧))
66 iunss2 5011 . . . . . . . . . . . . . . . 16 (∀𝑦 ∈ 𝑥 ∃𝑧 ∈ (𝐵 ·o 𝑥)(𝐴 ·o (𝐵 ·o 𝑦)) ⊆ (𝐴 ·o 𝑧) → ∪ 𝑦 ∈ 𝑥 (𝐴 ·o (𝐵 ·o 𝑦)) ⊆ ∪ 𝑧 ∈ (𝐵 ·o 𝑥)(𝐴 ·o 𝑧))
6765, 66syl 18 . . . . . . . . . . . . . . 15 (((𝐵 ∈ On ∧ Lim 𝑥) ∧ ∅ ∈ 𝐵) → ∪ 𝑦 ∈ 𝑥 (𝐴 ·o (𝐵 ·o 𝑦)) ⊆ ∪ 𝑧 ∈ (𝐵 ·o 𝑥)(𝐴 ·o 𝑧))
6867adantlr 728 . . . . . . . . . . . . . 14 ((((𝐵 ∈ On ∧ Lim 𝑥) ∧ 𝐴 ∈ On) ∧ ∅ ∈ 𝐵) → ∪ 𝑦 ∈ 𝑥 (𝐴 ·o (𝐵 ·o 𝑦)) ⊆ ∪ 𝑧 ∈ (𝐵 ·o 𝑥)(𝐴 ·o 𝑧))
69 omcl 8558 . . . . . . . . . . . . . . . . . . . . 21 ((𝐵 ∈ On ∧ 𝑥 ∈ On) → (𝐵 ·o 𝑥) ∈ On)
7054, 69sylan2 605 . . . . . . . . . . . . . . . . . . . 20 ((𝐵 ∈ On ∧ Lim 𝑥) → (𝐵 ·o 𝑥) ∈ On)
71 onelon 6394 . . . . . . . . . . . . . . . . . . . 20 (((𝐵 ·o 𝑥) ∈ On ∧ 𝑧 ∈ (𝐵 ·o 𝑥)) → 𝑧 ∈ On)
7270, 71sylan 592 . . . . . . . . . . . . . . . . . . 19 (((𝐵 ∈ On ∧ Lim 𝑥) ∧ 𝑧 ∈ (𝐵 ·o 𝑥)) → 𝑧 ∈ On)
7372adantlr 728 . . . . . . . . . . . . . . . . . 18 ((((𝐵 ∈ On ∧ Lim 𝑥) ∧ 𝐴 ∈ On) ∧ 𝑧 ∈ (𝐵 ·o 𝑥)) → 𝑧 ∈ On)
74 omordlim 8599 . . . . . . . . . . . . . . . . . . . . . . . 24 (((𝐵 ∈ On ∧ (𝑥 ∈ V ∧ Lim 𝑥)) ∧ 𝑧 ∈ (𝐵 ·o 𝑥)) → ∃𝑦 ∈ 𝑥 𝑧 ∈ (𝐵 ·o 𝑦))
7574ex 418 . . . . . . . . . . . . . . . . . . . . . . 23 ((𝐵 ∈ On ∧ (𝑥 ∈ V ∧ Lim 𝑥)) → (𝑧 ∈ (𝐵 ·o 𝑥) → ∃𝑦 ∈ 𝑥 𝑧 ∈ (𝐵 ·o 𝑦)))
7646, 75mpanr1 716 . . . . . . . . . . . . . . . . . . . . . 22 ((𝐵 ∈ On ∧ Lim 𝑥) → (𝑧 ∈ (𝐵 ·o 𝑥) → ∃𝑦 ∈ 𝑥 𝑧 ∈ (𝐵 ·o 𝑦)))
7776ad2antlr 740 . . . . . . . . . . . . . . . . . . . . 21 (((𝑧 ∈ On ∧ (𝐵 ∈ On ∧ Lim 𝑥)) ∧ 𝐴 ∈ On) → (𝑧 ∈ (𝐵 ·o 𝑥) → ∃𝑦 ∈ 𝑥 𝑧 ∈ (𝐵 ·o 𝑦)))
78 onelon 6394 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 ((𝑥 ∈ On ∧ 𝑦 ∈ 𝑥) → 𝑦 ∈ On)
7954, 78sylan 592 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 ((Lim 𝑥 ∧ 𝑦 ∈ 𝑥) → 𝑦 ∈ On)
8079, 31sylan2 605 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 ((𝐵 ∈ On ∧ (Lim 𝑥 ∧ 𝑦 ∈ 𝑥)) → (𝐵 ·o 𝑦) ∈ On)
81 onelss 6412 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 ((𝐵 ·o 𝑦) ∈ On → (𝑧 ∈ (𝐵 ·o 𝑦) → 𝑧 ⊆ (𝐵 ·o 𝑦)))
82813ad2ant2 1152 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 ((𝑧 ∈ On ∧ (𝐵 ·o 𝑦) ∈ On ∧ 𝐴 ∈ On) → (𝑧 ∈ (𝐵 ·o 𝑦) → 𝑧 ⊆ (𝐵 ·o 𝑦)))
83 omwordi 8593 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 ((𝑧 ∈ On ∧ (𝐵 ·o 𝑦) ∈ On ∧ 𝐴 ∈ On) → (𝑧 ⊆ (𝐵 ·o 𝑦) → (𝐴 ·o 𝑧) ⊆ (𝐴 ·o (𝐵 ·o 𝑦))))
8482, 83syld 48 . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 ((𝑧 ∈ On ∧ (𝐵 ·o 𝑦) ∈ On ∧ 𝐴 ∈ On) → (𝑧 ∈ (𝐵 ·o 𝑦) → (𝐴 ·o 𝑧) ⊆ (𝐴 ·o (𝐵 ·o 𝑦))))
85843exp 1137 . . . . . . . . . . . . . . . . . . . . . . . . . . 27 (𝑧 ∈ On → ((𝐵 ·o 𝑦) ∈ On → (𝐴 ∈ On → (𝑧 ∈ (𝐵 ·o 𝑦) → (𝐴 ·o 𝑧) ⊆ (𝐴 ·o (𝐵 ·o 𝑦))))))
8680, 85syl5 35 . . . . . . . . . . . . . . . . . . . . . . . . . 26 (𝑧 ∈ On → ((𝐵 ∈ On ∧ (Lim 𝑥 ∧ 𝑦 ∈ 𝑥)) → (𝐴 ∈ On → (𝑧 ∈ (𝐵 ·o 𝑦) → (𝐴 ·o 𝑧) ⊆ (𝐴 ·o (𝐵 ·o 𝑦))))))
8786exp4d 439 . . . . . . . . . . . . . . . . . . . . . . . . 25 (𝑧 ∈ On → (𝐵 ∈ On → (Lim 𝑥 → (𝑦 ∈ 𝑥 → (𝐴 ∈ On → (𝑧 ∈ (𝐵 ·o 𝑦) → (𝐴 ·o 𝑧) ⊆ (𝐴 ·o (𝐵 ·o 𝑦))))))))
8887imp32 424 . . . . . . . . . . . . . . . . . . . . . . . 24 ((𝑧 ∈ On ∧ (𝐵 ∈ On ∧ Lim 𝑥)) → (𝑦 ∈ 𝑥 → (𝐴 ∈ On → (𝑧 ∈ (𝐵 ·o 𝑦) → (𝐴 ·o 𝑧) ⊆ (𝐴 ·o (𝐵 ·o 𝑦))))))
8988com23 87 . . . . . . . . . . . . . . . . . . . . . . 23 ((𝑧 ∈ On ∧ (𝐵 ∈ On ∧ Lim 𝑥)) → (𝐴 ∈ On → (𝑦 ∈ 𝑥 → (𝑧 ∈ (𝐵 ·o 𝑦) → (𝐴 ·o 𝑧) ⊆ (𝐴 ·o (𝐵 ·o 𝑦))))))
9089imp 412 . . . . . . . . . . . . . . . . . . . . . 22 (((𝑧 ∈ On ∧ (𝐵 ∈ On ∧ Lim 𝑥)) ∧ 𝐴 ∈ On) → (𝑦 ∈ 𝑥 → (𝑧 ∈ (𝐵 ·o 𝑦) → (𝐴 ·o 𝑧) ⊆ (𝐴 ·o (𝐵 ·o 𝑦)))))
9190reximdvai 3177 . . . . . . . . . . . . . . . . . . . . 21 (((𝑧 ∈ On ∧ (𝐵 ∈ On ∧ Lim 𝑥)) ∧ 𝐴 ∈ On) → (∃𝑦 ∈ 𝑥 𝑧 ∈ (𝐵 ·o 𝑦) → ∃𝑦 ∈ 𝑥 (𝐴 ·o 𝑧) ⊆ (𝐴 ·o (𝐵 ·o 𝑦))))
9277, 91syld 48 . . . . . . . . . . . . . . . . . . . 20 (((𝑧 ∈ On ∧ (𝐵 ∈ On ∧ Lim 𝑥)) ∧ 𝐴 ∈ On) → (𝑧 ∈ (𝐵 ·o 𝑥) → ∃𝑦 ∈ 𝑥 (𝐴 ·o 𝑧) ⊆ (𝐴 ·o (𝐵 ·o 𝑦))))
9392exp31 425 . . . . . . . . . . . . . . . . . . 19 (𝑧 ∈ On → ((𝐵 ∈ On ∧ Lim 𝑥) → (𝐴 ∈ On → (𝑧 ∈ (𝐵 ·o 𝑥) → ∃𝑦 ∈ 𝑥 (𝐴 ·o 𝑧) ⊆ (𝐴 ·o (𝐵 ·o 𝑦))))))
9493imp4c 429 . . . . . . . . . . . . . . . . . 18 (𝑧 ∈ On → ((((𝐵 ∈ On ∧ Lim 𝑥) ∧ 𝐴 ∈ On) ∧ 𝑧 ∈ (𝐵 ·o 𝑥)) → ∃𝑦 ∈ 𝑥 (𝐴 ·o 𝑧) ⊆ (𝐴 ·o (𝐵 ·o 𝑦))))
9573, 94mpcom 39 . . . . . . . . . . . . . . . . 17 ((((𝐵 ∈ On ∧ Lim 𝑥) ∧ 𝐴 ∈ On) ∧ 𝑧 ∈ (𝐵 ·o 𝑥)) → ∃𝑦 ∈ 𝑥 (𝐴 ·o 𝑧) ⊆ (𝐴 ·o (𝐵 ·o 𝑦)))
9695ralrimiva 3158 . . . . . . . . . . . . . . . 16 (((𝐵 ∈ On ∧ Lim 𝑥) ∧ 𝐴 ∈ On) → ∀𝑧 ∈ (𝐵 ·o 𝑥)∃𝑦 ∈ 𝑥 (𝐴 ·o 𝑧) ⊆ (𝐴 ·o (𝐵 ·o 𝑦)))
97 iunss2 5011 . . . . . . . . . . . . . . . 16 (∀𝑧 ∈ (𝐵 ·o 𝑥)∃𝑦 ∈ 𝑥 (𝐴 ·o 𝑧) ⊆ (𝐴 ·o (𝐵 ·o 𝑦)) → ∪ 𝑧 ∈ (𝐵 ·o 𝑥)(𝐴 ·o 𝑧) ⊆ ∪ 𝑦 ∈ 𝑥 (𝐴 ·o (𝐵 ·o 𝑦)))
9896, 97syl 18 . . . . . . . . . . . . . . 15 (((𝐵 ∈ On ∧ Lim 𝑥) ∧ 𝐴 ∈ On) → ∪ 𝑧 ∈ (𝐵 ·o 𝑥)(𝐴 ·o 𝑧) ⊆ ∪ 𝑦 ∈ 𝑥 (𝐴 ·o (𝐵 ·o 𝑦)))
9998adantr 486 . . . . . . . . . . . . . 14 ((((𝐵 ∈ On ∧ Lim 𝑥) ∧ 𝐴 ∈ On) ∧ ∅ ∈ 𝐵) → ∪ 𝑧 ∈ (𝐵 ·o 𝑥)(𝐴 ·o 𝑧) ⊆ ∪ 𝑦 ∈ 𝑥 (𝐴 ·o (𝐵 ·o 𝑦)))
10068, 99eqssd 3930 . . . . . . . . . . . . 13 ((((𝐵 ∈ On ∧ Lim 𝑥) ∧ 𝐴 ∈ On) ∧ ∅ ∈ 𝐵) → ∪ 𝑦 ∈ 𝑥 (𝐴 ·o (𝐵 ·o 𝑦)) = ∪ 𝑧 ∈ (𝐵 ·o 𝑥)(𝐴 ·o 𝑧))
101 omlimcl 8600 . . . . . . . . . . . . . . . . 17 (((𝐵 ∈ On ∧ (𝑥 ∈ V ∧ Lim 𝑥)) ∧ ∅ ∈ 𝐵) → Lim (𝐵 ·o 𝑥))
10246, 101mpanlr1 719 . . . . . . . . . . . . . . . 16 (((𝐵 ∈ On ∧ Lim 𝑥) ∧ ∅ ∈ 𝐵) → Lim (𝐵 ·o 𝑥))
103 ovex 7463 . . . . . . . . . . . . . . . . 17 (𝐵 ·o 𝑥) ∈ V
104 omlim 8555 . . . . . . . . . . . . . . . . 17 ((𝐴 ∈ On ∧ ((𝐵 ·o 𝑥) ∈ V ∧ Lim (𝐵 ·o 𝑥))) → (𝐴 ·o (𝐵 ·o 𝑥)) = ∪ 𝑧 ∈ (𝐵 ·o 𝑥)(𝐴 ·o 𝑧))
105103, 104mpanr1 716 . . . . . . . . . . . . . . . 16 ((𝐴 ∈ On ∧ Lim (𝐵 ·o 𝑥)) → (𝐴 ·o (𝐵 ·o 𝑥)) = ∪ 𝑧 ∈ (𝐵 ·o 𝑥)(𝐴 ·o 𝑧))
106102, 105sylan2 605 . . . . . . . . . . . . . . 15 ((𝐴 ∈ On ∧ ((𝐵 ∈ On ∧ Lim 𝑥) ∧ ∅ ∈ 𝐵)) → (𝐴 ·o (𝐵 ·o 𝑥)) = ∪ 𝑧 ∈ (𝐵 ·o 𝑥)(𝐴 ·o 𝑧))
107106ancoms 464 . . . . . . . . . . . . . 14 ((((𝐵 ∈ On ∧ Lim 𝑥) ∧ ∅ ∈ 𝐵) ∧ 𝐴 ∈ On) → (𝐴 ·o (𝐵 ·o 𝑥)) = ∪ 𝑧 ∈ (𝐵 ·o 𝑥)(𝐴 ·o 𝑧))
108107an32s 665 . . . . . . . . . . . . 13 ((((𝐵 ∈ On ∧ Lim 𝑥) ∧ 𝐴 ∈ On) ∧ ∅ ∈ 𝐵) → (𝐴 ·o (𝐵 ·o 𝑥)) = ∪ 𝑧 ∈ (𝐵 ·o 𝑥)(𝐴 ·o 𝑧))
109100, 108eqtr4d 2801 . . . . . . . . . . . 12 ((((𝐵 ∈ On ∧ Lim 𝑥) ∧ 𝐴 ∈ On) ∧ ∅ ∈ 𝐵) → ∪ 𝑦 ∈ 𝑥 (𝐴 ·o (𝐵 ·o 𝑦)) = (𝐴 ·o (𝐵 ·o 𝑥)))
11052, 109sylan9eqr 2820 . . . . . . . . . . 11 (((((𝐵 ∈ On ∧ Lim 𝑥) ∧ 𝐴 ∈ On) ∧ ∅ ∈ 𝐵) ∧ ∀𝑦 ∈ 𝑥 ((𝐴 ·o 𝐵) ·o 𝑦) = (𝐴 ·o (𝐵 ·o 𝑦))) → ∪ 𝑦 ∈ 𝑥 ((𝐴 ·o 𝐵) ·o 𝑦) = (𝐴 ·o (𝐵 ·o 𝑥)))
11151, 110eqtrd 2798 . . . . . . . . . 10 (((((𝐵 ∈ On ∧ Lim 𝑥) ∧ 𝐴 ∈ On) ∧ ∅ ∈ 𝐵) ∧ ∀𝑦 ∈ 𝑥 ((𝐴 ·o 𝐵) ·o 𝑦) = (𝐴 ·o (𝐵 ·o 𝑦))) → ((𝐴 ·o 𝐵) ·o 𝑥) = (𝐴 ·o (𝐵 ·o 𝑥)))
112111exp31 425 . . . . . . . . 9 (((𝐵 ∈ On ∧ Lim 𝑥) ∧ 𝐴 ∈ On) → (∅ ∈ 𝐵 → (∀𝑦 ∈ 𝑥 ((𝐴 ·o 𝐵) ·o 𝑦) = (𝐴 ·o (𝐵 ·o 𝑦)) → ((𝐴 ·o 𝐵) ·o 𝑥) = (𝐴 ·o (𝐵 ·o 𝑥)))))
113 eloni 6379 . . . . . . . . . . . . 13 (𝐵 ∈ On → Ord 𝐵)
114 ord0eln0 6426 . . . . . . . . . . . . . 14 (Ord 𝐵 → (∅ ∈ 𝐵 ↔ 𝐵 ≠ ∅))
115114necon2bbid 3002 . . . . . . . . . . . . 13 (Ord 𝐵 → (𝐵 = ∅ ↔ ¬ ∅ ∈ 𝐵))
116113, 115syl 18 . . . . . . . . . . . 12 (𝐵 ∈ On → (𝐵 = ∅ ↔ ¬ ∅ ∈ 𝐵))
117116ad2antrr 739 . . . . . . . . . . 11 (((𝐵 ∈ On ∧ Lim 𝑥) ∧ 𝐴 ∈ On) → (𝐵 = ∅ ↔ ¬ ∅ ∈ 𝐵))
118 oveq2 7438 . . . . . . . . . . . . . . . . . . 19 (𝐵 = ∅ → (𝐴 ·o 𝐵) = (𝐴 ·o ∅))
119118, 22sylan9eqr 2820 . . . . . . . . . . . . . . . . . 18 ((𝐴 ∈ On ∧ 𝐵 = ∅) → (𝐴 ·o 𝐵) = ∅)
120119oveq1d 7445 . . . . . . . . . . . . . . . . 17 ((𝐴 ∈ On ∧ 𝐵 = ∅) → ((𝐴 ·o 𝐵) ·o 𝑥) = (∅ ·o 𝑥))
121 om0r 8561 . . . . . . . . . . . . . . . . 17 (𝑥 ∈ On → (∅ ·o 𝑥) = ∅)
122120, 121sylan9eqr 2820 . . . . . . . . . . . . . . . 16 ((𝑥 ∈ On ∧ (𝐴 ∈ On ∧ 𝐵 = ∅)) → ((𝐴 ·o 𝐵) ·o 𝑥) = ∅)
123122anassrs 473 . . . . . . . . . . . . . . 15 (((𝑥 ∈ On ∧ 𝐴 ∈ On) ∧ 𝐵 = ∅) → ((𝐴 ·o 𝐵) ·o 𝑥) = ∅)
124 oveq1 7437 . . . . . . . . . . . . . . . . . . 19 (𝐵 = ∅ → (𝐵 ·o 𝑥) = (∅ ·o 𝑥))
125124, 121sylan9eqr 2820 . . . . . . . . . . . . . . . . . 18 ((𝑥 ∈ On ∧ 𝐵 = ∅) → (𝐵 ·o 𝑥) = ∅)
126125oveq2d 7446 . . . . . . . . . . . . . . . . 17 ((𝑥 ∈ On ∧ 𝐵 = ∅) → (𝐴 ·o (𝐵 ·o 𝑥)) = (𝐴 ·o ∅))
127126, 22sylan9eq 2818 . . . . . . . . . . . . . . . 16 (((𝑥 ∈ On ∧ 𝐵 = ∅) ∧ 𝐴 ∈ On) → (𝐴 ·o (𝐵 ·o 𝑥)) = ∅)
128127an32s 665 . . . . . . . . . . . . . . 15 (((𝑥 ∈ On ∧ 𝐴 ∈ On) ∧ 𝐵 = ∅) → (𝐴 ·o (𝐵 ·o 𝑥)) = ∅)
129123, 128eqtr4d 2801 . . . . . . . . . . . . . 14 (((𝑥 ∈ On ∧ 𝐴 ∈ On) ∧ 𝐵 = ∅) → ((𝐴 ·o 𝐵) ·o 𝑥) = (𝐴 ·o (𝐵 ·o 𝑥)))
130129ex 418 . . . . . . . . . . . . 13 ((𝑥 ∈ On ∧ 𝐴 ∈ On) → (𝐵 = ∅ → ((𝐴 ·o 𝐵) ·o 𝑥) = (𝐴 ·o (𝐵 ·o 𝑥))))
13154, 130sylan 592 . . . . . . . . . . . 12 ((Lim 𝑥 ∧ 𝐴 ∈ On) → (𝐵 = ∅ → ((𝐴 ·o 𝐵) ·o 𝑥) = (𝐴 ·o (𝐵 ·o 𝑥))))
132131adantll 727 . . . . . . . . . . 11 (((𝐵 ∈ On ∧ Lim 𝑥) ∧ 𝐴 ∈ On) → (𝐵 = ∅ → ((𝐴 ·o 𝐵) ·o 𝑥) = (𝐴 ·o (𝐵 ·o 𝑥))))
133117, 132sylbird 263 . . . . . . . . . 10 (((𝐵 ∈ On ∧ Lim 𝑥) ∧ 𝐴 ∈ On) → (¬ ∅ ∈ 𝐵 → ((𝐴 ·o 𝐵) ·o 𝑥) = (𝐴 ·o (𝐵 ·o 𝑥))))
134133a1dd 51 . . . . . . . . 9 (((𝐵 ∈ On ∧ Lim 𝑥) ∧ 𝐴 ∈ On) → (¬ ∅ ∈ 𝐵 → (∀𝑦 ∈ 𝑥 ((𝐴 ·o 𝐵) ·o 𝑦) = (𝐴 ·o (𝐵 ·o 𝑦)) → ((𝐴 ·o 𝐵) ·o 𝑥) = (𝐴 ·o (𝐵 ·o 𝑥)))))
135112, 134pm2.61d 181 . . . . . . . 8 (((𝐵 ∈ On ∧ Lim 𝑥) ∧ 𝐴 ∈ On) → (∀𝑦 ∈ 𝑥 ((𝐴 ·o 𝐵) ·o 𝑦) = (𝐴 ·o (𝐵 ·o 𝑦)) → ((𝐴 ·o 𝐵) ·o 𝑥) = (𝐴 ·o (𝐵 ·o 𝑥))))
136135exp31 425 . . . . . . 7 (𝐵 ∈ On → (Lim 𝑥 → (𝐴 ∈ On → (∀𝑦 ∈ 𝑥 ((𝐴 ·o 𝐵) ·o 𝑦) = (𝐴 ·o (𝐵 ·o 𝑦)) → ((𝐴 ·o 𝐵) ·o 𝑥) = (𝐴 ·o (𝐵 ·o 𝑥))))))
137136com3l 90 . . . . . 6 (Lim 𝑥 → (𝐴 ∈ On → (𝐵 ∈ On → (∀𝑦 ∈ 𝑥 ((𝐴 ·o 𝐵) ·o 𝑦) = (𝐴 ·o (𝐵 ·o 𝑦)) → ((𝐴 ·o 𝐵) ·o 𝑥) = (𝐴 ·o (𝐵 ·o 𝑥))))))
138137impd 416 . . . . 5 (Lim 𝑥 → ((𝐴 ∈ On ∧ 𝐵 ∈ On) → (∀𝑦 ∈ 𝑥 ((𝐴 ·o 𝐵) ·o 𝑦) = (𝐴 ·o (𝐵 ·o 𝑦)) → ((𝐴 ·o 𝐵) ·o 𝑥) = (𝐴 ·o (𝐵 ·o 𝑥)))))
1394, 8, 12, 16, 24, 44, 138tfinds3 7886 . . . 4 (𝐶 ∈ On → ((𝐴 ∈ On ∧ 𝐵 ∈ On) → ((𝐴 ·o 𝐵) ·o 𝐶) = (𝐴 ·o (𝐵 ·o 𝐶))))
140139expd 421 . . 3 (𝐶 ∈ On → (𝐴 ∈ On → (𝐵 ∈ On → ((𝐴 ·o 𝐵) ·o 𝐶) = (𝐴 ·o (𝐵 ·o 𝐶)))))
141140com3l 90 . 2 (𝐴 ∈ On → (𝐵 ∈ On → (𝐶 ∈ On → ((𝐴 ·o 𝐵) ·o 𝐶) = (𝐴 ·o (𝐵 ·o 𝐶)))))
1421413imp 1128 1 ((𝐴 ∈ On ∧ 𝐵 ∈ On ∧ 𝐶 ∈ On) → ((𝐴 ·o 𝐵) ·o 𝐶) = (𝐴 ·o (𝐵 ·o 𝐶)))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  ¬ wn 3   → wi 4   ↔ wb 209   ∧ wa 401   ∧ w3a 1103   = wceq 1569   ∈ wcel 2146  ∀wral 3080  ∃wrex 3090  Vcvv 3454   ⊆ wss 3900  ∅c0 4281  ∪ ciun 4954  Ord word 6368  Oncon0 6369  Lim wlim 6370  suc csuc 6371  (class class class)co 7430   +o coa 8487   ·o comu 8488
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1827  ax-4 1841  ax-5 1944  ax-6 2001  ax-7 2042  ax-8 2148  ax-9 2156  ax-10 2179  ax-11 2196  ax-12 2215  ax-ext 2735  ax-rep 5235  ax-sep 5252  ax-nul 5263  ax-pr 5395  ax-un 7761
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1572  df-fal 1582  df-ex 1812  df-nf 1816  df-sb 2101  df-mo 2567  df-eu 2597  df-clab 2742  df-cleq 2755  df-clel 2839  df-nfc 2913  df-ne 2960  df-ral 3081  df-rex 3091  df-rmo 3369  df-reu 3370  df-rab 3417  df-v 3456  df-sbc 3743  df-csb 3852  df-ss 3901  df-pss 4017  df-dif 4050  df-in 4094  df-un 4154  df-nul 4282  df-if 4486  df-pw 4562  df-sn 4589  df-pr 4591  df-op 4839  df-uni 4871  df-int 4911  df-iun 4956  df-br 5107  df-opab 5171  df-mpt 5190  df-tr 5216  df-id 5550  df-eprel 5555  df-po 5563  df-so 5564  df-fr 5608  df-we 5610  df-xp 5661  df-rel 5662  df-cnv 5663  df-co 5664  df-dm 5665  df-rn 5666  df-res 5667  df-ima 5668  df-pred 6311  df-ord 6372  df-on 6373  df-lim 6374  df-suc 6375  df-iota 6501  df-fun 6549  df-fn 6550  df-f 6551  df-f1 6552  df-fo 6553  df-f1o 6554  df-fv 6555  df-ov 7433  df-oprab 7434  df-mpo 7435  df-om 7888  df-2nd 8012  df-frecs 8313  df-wrecs 8344  df-recs 8393  df-rdg 8432  df-1o 8490  df-oadd 8494  df-omul 8495
This theorem is used by:  oeoalem  8619  omabs  8674
  Copyright terms: Public domain W3C validator