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

Theorem xpord2pred 8119
Description: Calculate the predecessor class in frxp2 8118. (Contributed by Scott Fenton, 22-Aug-2024.)
Hypothesis
Ref Expression
xpord2.1 𝑇 = {⟨𝑥, 𝑦⟩ ∣ (𝑥 ∈ (𝐴 × 𝐵) ∧ 𝑦 ∈ (𝐴 × 𝐵) ∧ (((1st𝑥)𝑅(1st𝑦) ∨ (1st𝑥) = (1st𝑦)) ∧ ((2nd𝑥)𝑆(2nd𝑦) ∨ (2nd𝑥) = (2nd𝑦)) ∧ 𝑥𝑦))}
Assertion
Ref Expression
xpord2pred ((𝑋𝐴𝑌𝐵) → Pred(𝑇, (𝐴 × 𝐵), ⟨𝑋, 𝑌⟩) = (((Pred(𝑅, 𝐴, 𝑋) ∪ {𝑋}) × (Pred(𝑆, 𝐵, 𝑌) ∪ {𝑌})) ∖ {⟨𝑋, 𝑌⟩}))
Distinct variable groups:   𝑥,𝐴,𝑦   𝑥,𝐵,𝑦   𝑥,𝑅,𝑦   𝑥,𝑆,𝑦
Allowed substitution hints:   𝑇(𝑥,𝑦)   𝑋(𝑥,𝑦)   𝑌(𝑥,𝑦)

Proof of Theorem xpord2pred
Dummy variables 𝑎 𝑏 𝑐 𝑑 𝑒 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 opeq1 4828 . . . 4 (𝑎 = 𝑋 → ⟨𝑎, 𝑏⟩ = ⟨𝑋, 𝑏⟩)
2 predeq3 6287 . . . 4 (⟨𝑎, 𝑏⟩ = ⟨𝑋, 𝑏⟩ → Pred(𝑇, (𝐴 × 𝐵), ⟨𝑎, 𝑏⟩) = Pred(𝑇, (𝐴 × 𝐵), ⟨𝑋, 𝑏⟩))
31, 2syl 17 . . 3 (𝑎 = 𝑋 → Pred(𝑇, (𝐴 × 𝐵), ⟨𝑎, 𝑏⟩) = Pred(𝑇, (𝐴 × 𝐵), ⟨𝑋, 𝑏⟩))
4 predeq3 6287 . . . . . 6 (𝑎 = 𝑋 → Pred(𝑅, 𝐴, 𝑎) = Pred(𝑅, 𝐴, 𝑋))
5 sneq 4589 . . . . . 6 (𝑎 = 𝑋 → {𝑎} = {𝑋})
64, 5uneq12d 4120 . . . . 5 (𝑎 = 𝑋 → (Pred(𝑅, 𝐴, 𝑎) ∪ {𝑎}) = (Pred(𝑅, 𝐴, 𝑋) ∪ {𝑋}))
76xpeq1d 5672 . . . 4 (𝑎 = 𝑋 → ((Pred(𝑅, 𝐴, 𝑎) ∪ {𝑎}) × (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏})) = ((Pred(𝑅, 𝐴, 𝑋) ∪ {𝑋}) × (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏})))
81sneqd 4591 . . . 4 (𝑎 = 𝑋 → {⟨𝑎, 𝑏⟩} = {⟨𝑋, 𝑏⟩})
97, 8difeq12d 4079 . . 3 (𝑎 = 𝑋 → (((Pred(𝑅, 𝐴, 𝑎) ∪ {𝑎}) × (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏})) ∖ {⟨𝑎, 𝑏⟩}) = (((Pred(𝑅, 𝐴, 𝑋) ∪ {𝑋}) × (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏})) ∖ {⟨𝑋, 𝑏⟩}))
103, 9eqeq12d 2777 . 2 (𝑎 = 𝑋 → (Pred(𝑇, (𝐴 × 𝐵), ⟨𝑎, 𝑏⟩) = (((Pred(𝑅, 𝐴, 𝑎) ∪ {𝑎}) × (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏})) ∖ {⟨𝑎, 𝑏⟩}) ↔ Pred(𝑇, (𝐴 × 𝐵), ⟨𝑋, 𝑏⟩) = (((Pred(𝑅, 𝐴, 𝑋) ∪ {𝑋}) × (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏})) ∖ {⟨𝑋, 𝑏⟩})))
11 opeq2 4829 . . . 4 (𝑏 = 𝑌 → ⟨𝑋, 𝑏⟩ = ⟨𝑋, 𝑌⟩)
12 predeq3 6287 . . . 4 (⟨𝑋, 𝑏⟩ = ⟨𝑋, 𝑌⟩ → Pred(𝑇, (𝐴 × 𝐵), ⟨𝑋, 𝑏⟩) = Pred(𝑇, (𝐴 × 𝐵), ⟨𝑋, 𝑌⟩))
1311, 12syl 17 . . 3 (𝑏 = 𝑌 → Pred(𝑇, (𝐴 × 𝐵), ⟨𝑋, 𝑏⟩) = Pred(𝑇, (𝐴 × 𝐵), ⟨𝑋, 𝑌⟩))
14 predeq3 6287 . . . . . 6 (𝑏 = 𝑌 → Pred(𝑆, 𝐵, 𝑏) = Pred(𝑆, 𝐵, 𝑌))
15 sneq 4589 . . . . . 6 (𝑏 = 𝑌 → {𝑏} = {𝑌})
1614, 15uneq12d 4120 . . . . 5 (𝑏 = 𝑌 → (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏}) = (Pred(𝑆, 𝐵, 𝑌) ∪ {𝑌}))
1716xpeq2d 5673 . . . 4 (𝑏 = 𝑌 → ((Pred(𝑅, 𝐴, 𝑋) ∪ {𝑋}) × (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏})) = ((Pred(𝑅, 𝐴, 𝑋) ∪ {𝑋}) × (Pred(𝑆, 𝐵, 𝑌) ∪ {𝑌})))
1811sneqd 4591 . . . 4 (𝑏 = 𝑌 → {⟨𝑋, 𝑏⟩} = {⟨𝑋, 𝑌⟩})
1917, 18difeq12d 4079 . . 3 (𝑏 = 𝑌 → (((Pred(𝑅, 𝐴, 𝑋) ∪ {𝑋}) × (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏})) ∖ {⟨𝑋, 𝑏⟩}) = (((Pred(𝑅, 𝐴, 𝑋) ∪ {𝑋}) × (Pred(𝑆, 𝐵, 𝑌) ∪ {𝑌})) ∖ {⟨𝑋, 𝑌⟩}))
2013, 19eqeq12d 2777 . 2 (𝑏 = 𝑌 → (Pred(𝑇, (𝐴 × 𝐵), ⟨𝑋, 𝑏⟩) = (((Pred(𝑅, 𝐴, 𝑋) ∪ {𝑋}) × (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏})) ∖ {⟨𝑋, 𝑏⟩}) ↔ Pred(𝑇, (𝐴 × 𝐵), ⟨𝑋, 𝑌⟩) = (((Pred(𝑅, 𝐴, 𝑋) ∪ {𝑋}) × (Pred(𝑆, 𝐵, 𝑌) ∪ {𝑌})) ∖ {⟨𝑋, 𝑌⟩})))
21 predel 6303 . . . . 5 (𝑒 ∈ Pred(𝑇, (𝐴 × 𝐵), ⟨𝑎, 𝑏⟩) → 𝑒 ∈ (𝐴 × 𝐵))
2221a1i 11 . . . 4 ((𝑎𝐴𝑏𝐵) → (𝑒 ∈ Pred(𝑇, (𝐴 × 𝐵), ⟨𝑎, 𝑏⟩) → 𝑒 ∈ (𝐴 × 𝐵)))
23 eldifi 4082 . . . . 5 (𝑒 ∈ (((Pred(𝑅, 𝐴, 𝑎) ∪ {𝑎}) × (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏})) ∖ {⟨𝑎, 𝑏⟩}) → 𝑒 ∈ ((Pred(𝑅, 𝐴, 𝑎) ∪ {𝑎}) × (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏})))
24 predss 6291 . . . . . . . . 9 Pred(𝑅, 𝐴, 𝑎) ⊆ 𝐴
2524a1i 11 . . . . . . . 8 (𝑎𝐴 → Pred(𝑅, 𝐴, 𝑎) ⊆ 𝐴)
26 snssi 4741 . . . . . . . 8 (𝑎𝐴 → {𝑎} ⊆ 𝐴)
2725, 26unssd 4142 . . . . . . 7 (𝑎𝐴 → (Pred(𝑅, 𝐴, 𝑎) ∪ {𝑎}) ⊆ 𝐴)
28 predss 6291 . . . . . . . . 9 Pred(𝑆, 𝐵, 𝑏) ⊆ 𝐵
2928a1i 11 . . . . . . . 8 (𝑏𝐵 → Pred(𝑆, 𝐵, 𝑏) ⊆ 𝐵)
30 snssi 4741 . . . . . . . 8 (𝑏𝐵 → {𝑏} ⊆ 𝐵)
3129, 30unssd 4142 . . . . . . 7 (𝑏𝐵 → (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏}) ⊆ 𝐵)
32 xpss12 5658 . . . . . . 7 (((Pred(𝑅, 𝐴, 𝑎) ∪ {𝑎}) ⊆ 𝐴 ∧ (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏}) ⊆ 𝐵) → ((Pred(𝑅, 𝐴, 𝑎) ∪ {𝑎}) × (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏})) ⊆ (𝐴 × 𝐵))
3327, 31, 32syl2an 605 . . . . . 6 ((𝑎𝐴𝑏𝐵) → ((Pred(𝑅, 𝐴, 𝑎) ∪ {𝑎}) × (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏})) ⊆ (𝐴 × 𝐵))
3433sseld 3933 . . . . 5 ((𝑎𝐴𝑏𝐵) → (𝑒 ∈ ((Pred(𝑅, 𝐴, 𝑎) ∪ {𝑎}) × (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏})) → 𝑒 ∈ (𝐴 × 𝐵)))
3523, 34syl5 34 . . . 4 ((𝑎𝐴𝑏𝐵) → (𝑒 ∈ (((Pred(𝑅, 𝐴, 𝑎) ∪ {𝑎}) × (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏})) ∖ {⟨𝑎, 𝑏⟩}) → 𝑒 ∈ (𝐴 × 𝐵)))
36 elxp2 5667 . . . . 5 (𝑒 ∈ (𝐴 × 𝐵) ↔ ∃𝑐𝐴𝑑𝐵 𝑒 = ⟨𝑐, 𝑑⟩)
37 opex 5428 . . . . . . . . 9 𝑎, 𝑏⟩ ∈ V
38 opex 5428 . . . . . . . . . 10 𝑐, 𝑑⟩ ∈ V
3938elpred 6300 . . . . . . . . 9 (⟨𝑎, 𝑏⟩ ∈ V → (⟨𝑐, 𝑑⟩ ∈ Pred(𝑇, (𝐴 × 𝐵), ⟨𝑎, 𝑏⟩) ↔ (⟨𝑐, 𝑑⟩ ∈ (𝐴 × 𝐵) ∧ ⟨𝑐, 𝑑𝑇𝑎, 𝑏⟩)))
4037, 39ax-mp 5 . . . . . . . 8 (⟨𝑐, 𝑑⟩ ∈ Pred(𝑇, (𝐴 × 𝐵), ⟨𝑎, 𝑏⟩) ↔ (⟨𝑐, 𝑑⟩ ∈ (𝐴 × 𝐵) ∧ ⟨𝑐, 𝑑𝑇𝑎, 𝑏⟩))
41 opelxpi 5680 . . . . . . . . . . 11 ((𝑐𝐴𝑑𝐵) → ⟨𝑐, 𝑑⟩ ∈ (𝐴 × 𝐵))
4241adantl 485 . . . . . . . . . 10 (((𝑎𝐴𝑏𝐵) ∧ (𝑐𝐴𝑑𝐵)) → ⟨𝑐, 𝑑⟩ ∈ (𝐴 × 𝐵))
4342biantrurd 540 . . . . . . . . 9 (((𝑎𝐴𝑏𝐵) ∧ (𝑐𝐴𝑑𝐵)) → (⟨𝑐, 𝑑𝑇𝑎, 𝑏⟩ ↔ (⟨𝑐, 𝑑⟩ ∈ (𝐴 × 𝐵) ∧ ⟨𝑐, 𝑑𝑇𝑎, 𝑏⟩)))
44 xpord2.1 . . . . . . . . . . 11 𝑇 = {⟨𝑥, 𝑦⟩ ∣ (𝑥 ∈ (𝐴 × 𝐵) ∧ 𝑦 ∈ (𝐴 × 𝐵) ∧ (((1st𝑥)𝑅(1st𝑦) ∨ (1st𝑥) = (1st𝑦)) ∧ ((2nd𝑥)𝑆(2nd𝑦) ∨ (2nd𝑥) = (2nd𝑦)) ∧ 𝑥𝑦))}
4544xpord2lem 8116 . . . . . . . . . 10 (⟨𝑐, 𝑑𝑇𝑎, 𝑏⟩ ↔ ((𝑐𝐴𝑑𝐵) ∧ (𝑎𝐴𝑏𝐵) ∧ ((𝑐𝑅𝑎𝑐 = 𝑎) ∧ (𝑑𝑆𝑏𝑑 = 𝑏) ∧ (𝑐𝑎𝑑𝑏))))
46 eldif 3912 . . . . . . . . . . . . 13 (⟨𝑐, 𝑑⟩ ∈ (((Pred(𝑅, 𝐴, 𝑎) ∪ {𝑎}) × (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏})) ∖ {⟨𝑎, 𝑏⟩}) ↔ (⟨𝑐, 𝑑⟩ ∈ ((Pred(𝑅, 𝐴, 𝑎) ∪ {𝑎}) × (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏})) ∧ ¬ ⟨𝑐, 𝑑⟩ ∈ {⟨𝑎, 𝑏⟩}))
47 opelxp 5679 . . . . . . . . . . . . . . 15 (⟨𝑐, 𝑑⟩ ∈ ((Pred(𝑅, 𝐴, 𝑎) ∪ {𝑎}) × (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏})) ↔ (𝑐 ∈ (Pred(𝑅, 𝐴, 𝑎) ∪ {𝑎}) ∧ 𝑑 ∈ (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏})))
48 elun 4104 . . . . . . . . . . . . . . . . 17 (𝑐 ∈ (Pred(𝑅, 𝐴, 𝑎) ∪ {𝑎}) ↔ (𝑐 ∈ Pred(𝑅, 𝐴, 𝑎) ∨ 𝑐 ∈ {𝑎}))
49 vex 3457 . . . . . . . . . . . . . . . . . . . 20 𝑐 ∈ V
5049elpred 6300 . . . . . . . . . . . . . . . . . . 19 (𝑎 ∈ V → (𝑐 ∈ Pred(𝑅, 𝐴, 𝑎) ↔ (𝑐𝐴𝑐𝑅𝑎)))
5150elv 3458 . . . . . . . . . . . . . . . . . 18 (𝑐 ∈ Pred(𝑅, 𝐴, 𝑎) ↔ (𝑐𝐴𝑐𝑅𝑎))
52 velsn 4595 . . . . . . . . . . . . . . . . . 18 (𝑐 ∈ {𝑎} ↔ 𝑐 = 𝑎)
5351, 52orbi12i 925 . . . . . . . . . . . . . . . . 17 ((𝑐 ∈ Pred(𝑅, 𝐴, 𝑎) ∨ 𝑐 ∈ {𝑎}) ↔ ((𝑐𝐴𝑐𝑅𝑎) ∨ 𝑐 = 𝑎))
5448, 53bitri 277 . . . . . . . . . . . . . . . 16 (𝑐 ∈ (Pred(𝑅, 𝐴, 𝑎) ∪ {𝑎}) ↔ ((𝑐𝐴𝑐𝑅𝑎) ∨ 𝑐 = 𝑎))
55 elun 4104 . . . . . . . . . . . . . . . . 17 (𝑑 ∈ (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏}) ↔ (𝑑 ∈ Pred(𝑆, 𝐵, 𝑏) ∨ 𝑑 ∈ {𝑏}))
56 vex 3457 . . . . . . . . . . . . . . . . . . . 20 𝑑 ∈ V
5756elpred 6300 . . . . . . . . . . . . . . . . . . 19 (𝑏 ∈ V → (𝑑 ∈ Pred(𝑆, 𝐵, 𝑏) ↔ (𝑑𝐵𝑑𝑆𝑏)))
5857elv 3458 . . . . . . . . . . . . . . . . . 18 (𝑑 ∈ Pred(𝑆, 𝐵, 𝑏) ↔ (𝑑𝐵𝑑𝑆𝑏))
59 velsn 4595 . . . . . . . . . . . . . . . . . 18 (𝑑 ∈ {𝑏} ↔ 𝑑 = 𝑏)
6058, 59orbi12i 925 . . . . . . . . . . . . . . . . 17 ((𝑑 ∈ Pred(𝑆, 𝐵, 𝑏) ∨ 𝑑 ∈ {𝑏}) ↔ ((𝑑𝐵𝑑𝑆𝑏) ∨ 𝑑 = 𝑏))
6155, 60bitri 277 . . . . . . . . . . . . . . . 16 (𝑑 ∈ (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏}) ↔ ((𝑑𝐵𝑑𝑆𝑏) ∨ 𝑑 = 𝑏))
6254, 61anbi12i 637 . . . . . . . . . . . . . . 15 ((𝑐 ∈ (Pred(𝑅, 𝐴, 𝑎) ∪ {𝑎}) ∧ 𝑑 ∈ (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏})) ↔ (((𝑐𝐴𝑐𝑅𝑎) ∨ 𝑐 = 𝑎) ∧ ((𝑑𝐵𝑑𝑆𝑏) ∨ 𝑑 = 𝑏)))
6347, 62bitri 277 . . . . . . . . . . . . . 14 (⟨𝑐, 𝑑⟩ ∈ ((Pred(𝑅, 𝐴, 𝑎) ∪ {𝑎}) × (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏})) ↔ (((𝑐𝐴𝑐𝑅𝑎) ∨ 𝑐 = 𝑎) ∧ ((𝑑𝐵𝑑𝑆𝑏) ∨ 𝑑 = 𝑏)))
6438elsn 4594 . . . . . . . . . . . . . . . 16 (⟨𝑐, 𝑑⟩ ∈ {⟨𝑎, 𝑏⟩} ↔ ⟨𝑐, 𝑑⟩ = ⟨𝑎, 𝑏⟩)
6564notbii 322 . . . . . . . . . . . . . . 15 (¬ ⟨𝑐, 𝑑⟩ ∈ {⟨𝑎, 𝑏⟩} ↔ ¬ ⟨𝑐, 𝑑⟩ = ⟨𝑎, 𝑏⟩)
66 df-ne 2957 . . . . . . . . . . . . . . 15 (⟨𝑐, 𝑑⟩ ≠ ⟨𝑎, 𝑏⟩ ↔ ¬ ⟨𝑐, 𝑑⟩ = ⟨𝑎, 𝑏⟩)
6749, 56opthne 5447 . . . . . . . . . . . . . . 15 (⟨𝑐, 𝑑⟩ ≠ ⟨𝑎, 𝑏⟩ ↔ (𝑐𝑎𝑑𝑏))
6865, 66, 673bitr2i 301 . . . . . . . . . . . . . 14 (¬ ⟨𝑐, 𝑑⟩ ∈ {⟨𝑎, 𝑏⟩} ↔ (𝑐𝑎𝑑𝑏))
6963, 68anbi12i 637 . . . . . . . . . . . . 13 ((⟨𝑐, 𝑑⟩ ∈ ((Pred(𝑅, 𝐴, 𝑎) ∪ {𝑎}) × (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏})) ∧ ¬ ⟨𝑐, 𝑑⟩ ∈ {⟨𝑎, 𝑏⟩}) ↔ ((((𝑐𝐴𝑐𝑅𝑎) ∨ 𝑐 = 𝑎) ∧ ((𝑑𝐵𝑑𝑆𝑏) ∨ 𝑑 = 𝑏)) ∧ (𝑐𝑎𝑑𝑏)))
7046, 69bitri 277 . . . . . . . . . . . 12 (⟨𝑐, 𝑑⟩ ∈ (((Pred(𝑅, 𝐴, 𝑎) ∪ {𝑎}) × (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏})) ∖ {⟨𝑎, 𝑏⟩}) ↔ ((((𝑐𝐴𝑐𝑅𝑎) ∨ 𝑐 = 𝑎) ∧ ((𝑑𝐵𝑑𝑆𝑏) ∨ 𝑑 = 𝑏)) ∧ (𝑐𝑎𝑑𝑏)))
71 simprl 780 . . . . . . . . . . . . . . . 16 (((𝑎𝐴𝑏𝐵) ∧ (𝑐𝐴𝑑𝐵)) → 𝑐𝐴)
7271biantrurd 540 . . . . . . . . . . . . . . 15 (((𝑎𝐴𝑏𝐵) ∧ (𝑐𝐴𝑑𝐵)) → (𝑐𝑅𝑎 ↔ (𝑐𝐴𝑐𝑅𝑎)))
7372orbi1d 927 . . . . . . . . . . . . . 14 (((𝑎𝐴𝑏𝐵) ∧ (𝑐𝐴𝑑𝐵)) → ((𝑐𝑅𝑎𝑐 = 𝑎) ↔ ((𝑐𝐴𝑐𝑅𝑎) ∨ 𝑐 = 𝑎)))
74 simprr 782 . . . . . . . . . . . . . . . 16 (((𝑎𝐴𝑏𝐵) ∧ (𝑐𝐴𝑑𝐵)) → 𝑑𝐵)
7574biantrurd 540 . . . . . . . . . . . . . . 15 (((𝑎𝐴𝑏𝐵) ∧ (𝑐𝐴𝑑𝐵)) → (𝑑𝑆𝑏 ↔ (𝑑𝐵𝑑𝑆𝑏)))
7675orbi1d 927 . . . . . . . . . . . . . 14 (((𝑎𝐴𝑏𝐵) ∧ (𝑐𝐴𝑑𝐵)) → ((𝑑𝑆𝑏𝑑 = 𝑏) ↔ ((𝑑𝐵𝑑𝑆𝑏) ∨ 𝑑 = 𝑏)))
7773, 763anbi12d 1457 . . . . . . . . . . . . 13 (((𝑎𝐴𝑏𝐵) ∧ (𝑐𝐴𝑑𝐵)) → (((𝑐𝑅𝑎𝑐 = 𝑎) ∧ (𝑑𝑆𝑏𝑑 = 𝑏) ∧ (𝑐𝑎𝑑𝑏)) ↔ (((𝑐𝐴𝑐𝑅𝑎) ∨ 𝑐 = 𝑎) ∧ ((𝑑𝐵𝑑𝑆𝑏) ∨ 𝑑 = 𝑏) ∧ (𝑐𝑎𝑑𝑏))))
78 df-3an 1099 . . . . . . . . . . . . 13 ((((𝑐𝐴𝑐𝑅𝑎) ∨ 𝑐 = 𝑎) ∧ ((𝑑𝐵𝑑𝑆𝑏) ∨ 𝑑 = 𝑏) ∧ (𝑐𝑎𝑑𝑏)) ↔ ((((𝑐𝐴𝑐𝑅𝑎) ∨ 𝑐 = 𝑎) ∧ ((𝑑𝐵𝑑𝑆𝑏) ∨ 𝑑 = 𝑏)) ∧ (𝑐𝑎𝑑𝑏)))
7977, 78bitr2di 290 . . . . . . . . . . . 12 (((𝑎𝐴𝑏𝐵) ∧ (𝑐𝐴𝑑𝐵)) → (((((𝑐𝐴𝑐𝑅𝑎) ∨ 𝑐 = 𝑎) ∧ ((𝑑𝐵𝑑𝑆𝑏) ∨ 𝑑 = 𝑏)) ∧ (𝑐𝑎𝑑𝑏)) ↔ ((𝑐𝑅𝑎𝑐 = 𝑎) ∧ (𝑑𝑆𝑏𝑑 = 𝑏) ∧ (𝑐𝑎𝑑𝑏))))
8070, 79bitrid 285 . . . . . . . . . . 11 (((𝑎𝐴𝑏𝐵) ∧ (𝑐𝐴𝑑𝐵)) → (⟨𝑐, 𝑑⟩ ∈ (((Pred(𝑅, 𝐴, 𝑎) ∪ {𝑎}) × (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏})) ∖ {⟨𝑎, 𝑏⟩}) ↔ ((𝑐𝑅𝑎𝑐 = 𝑎) ∧ (𝑑𝑆𝑏𝑑 = 𝑏) ∧ (𝑐𝑎𝑑𝑏))))
81 pm3.22 463 . . . . . . . . . . . . 13 (((𝑎𝐴𝑏𝐵) ∧ (𝑐𝐴𝑑𝐵)) → ((𝑐𝐴𝑑𝐵) ∧ (𝑎𝐴𝑏𝐵)))
8281biantrurd 540 . . . . . . . . . . . 12 (((𝑎𝐴𝑏𝐵) ∧ (𝑐𝐴𝑑𝐵)) → (((𝑐𝑅𝑎𝑐 = 𝑎) ∧ (𝑑𝑆𝑏𝑑 = 𝑏) ∧ (𝑐𝑎𝑑𝑏)) ↔ (((𝑐𝐴𝑑𝐵) ∧ (𝑎𝐴𝑏𝐵)) ∧ ((𝑐𝑅𝑎𝑐 = 𝑎) ∧ (𝑑𝑆𝑏𝑑 = 𝑏) ∧ (𝑐𝑎𝑑𝑏)))))
83 df-3an 1099 . . . . . . . . . . . 12 (((𝑐𝐴𝑑𝐵) ∧ (𝑎𝐴𝑏𝐵) ∧ ((𝑐𝑅𝑎𝑐 = 𝑎) ∧ (𝑑𝑆𝑏𝑑 = 𝑏) ∧ (𝑐𝑎𝑑𝑏))) ↔ (((𝑐𝐴𝑑𝐵) ∧ (𝑎𝐴𝑏𝐵)) ∧ ((𝑐𝑅𝑎𝑐 = 𝑎) ∧ (𝑑𝑆𝑏𝑑 = 𝑏) ∧ (𝑐𝑎𝑑𝑏))))
8482, 83bitr4di 291 . . . . . . . . . . 11 (((𝑎𝐴𝑏𝐵) ∧ (𝑐𝐴𝑑𝐵)) → (((𝑐𝑅𝑎𝑐 = 𝑎) ∧ (𝑑𝑆𝑏𝑑 = 𝑏) ∧ (𝑐𝑎𝑑𝑏)) ↔ ((𝑐𝐴𝑑𝐵) ∧ (𝑎𝐴𝑏𝐵) ∧ ((𝑐𝑅𝑎𝑐 = 𝑎) ∧ (𝑑𝑆𝑏𝑑 = 𝑏) ∧ (𝑐𝑎𝑑𝑏)))))
8580, 84bitr2d 282 . . . . . . . . . 10 (((𝑎𝐴𝑏𝐵) ∧ (𝑐𝐴𝑑𝐵)) → (((𝑐𝐴𝑑𝐵) ∧ (𝑎𝐴𝑏𝐵) ∧ ((𝑐𝑅𝑎𝑐 = 𝑎) ∧ (𝑑𝑆𝑏𝑑 = 𝑏) ∧ (𝑐𝑎𝑑𝑏))) ↔ ⟨𝑐, 𝑑⟩ ∈ (((Pred(𝑅, 𝐴, 𝑎) ∪ {𝑎}) × (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏})) ∖ {⟨𝑎, 𝑏⟩})))
8645, 85bitrid 285 . . . . . . . . 9 (((𝑎𝐴𝑏𝐵) ∧ (𝑐𝐴𝑑𝐵)) → (⟨𝑐, 𝑑𝑇𝑎, 𝑏⟩ ↔ ⟨𝑐, 𝑑⟩ ∈ (((Pred(𝑅, 𝐴, 𝑎) ∪ {𝑎}) × (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏})) ∖ {⟨𝑎, 𝑏⟩})))
8743, 86bitr3d 283 . . . . . . . 8 (((𝑎𝐴𝑏𝐵) ∧ (𝑐𝐴𝑑𝐵)) → ((⟨𝑐, 𝑑⟩ ∈ (𝐴 × 𝐵) ∧ ⟨𝑐, 𝑑𝑇𝑎, 𝑏⟩) ↔ ⟨𝑐, 𝑑⟩ ∈ (((Pred(𝑅, 𝐴, 𝑎) ∪ {𝑎}) × (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏})) ∖ {⟨𝑎, 𝑏⟩})))
8840, 87bitrid 285 . . . . . . 7 (((𝑎𝐴𝑏𝐵) ∧ (𝑐𝐴𝑑𝐵)) → (⟨𝑐, 𝑑⟩ ∈ Pred(𝑇, (𝐴 × 𝐵), ⟨𝑎, 𝑏⟩) ↔ ⟨𝑐, 𝑑⟩ ∈ (((Pred(𝑅, 𝐴, 𝑎) ∪ {𝑎}) × (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏})) ∖ {⟨𝑎, 𝑏⟩})))
89 eleq1 2849 . . . . . . . 8 (𝑒 = ⟨𝑐, 𝑑⟩ → (𝑒 ∈ Pred(𝑇, (𝐴 × 𝐵), ⟨𝑎, 𝑏⟩) ↔ ⟨𝑐, 𝑑⟩ ∈ Pred(𝑇, (𝐴 × 𝐵), ⟨𝑎, 𝑏⟩)))
90 eleq1 2849 . . . . . . . 8 (𝑒 = ⟨𝑐, 𝑑⟩ → (𝑒 ∈ (((Pred(𝑅, 𝐴, 𝑎) ∪ {𝑎}) × (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏})) ∖ {⟨𝑎, 𝑏⟩}) ↔ ⟨𝑐, 𝑑⟩ ∈ (((Pred(𝑅, 𝐴, 𝑎) ∪ {𝑎}) × (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏})) ∖ {⟨𝑎, 𝑏⟩})))
9189, 90bibi12d 347 . . . . . . 7 (𝑒 = ⟨𝑐, 𝑑⟩ → ((𝑒 ∈ Pred(𝑇, (𝐴 × 𝐵), ⟨𝑎, 𝑏⟩) ↔ 𝑒 ∈ (((Pred(𝑅, 𝐴, 𝑎) ∪ {𝑎}) × (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏})) ∖ {⟨𝑎, 𝑏⟩})) ↔ (⟨𝑐, 𝑑⟩ ∈ Pred(𝑇, (𝐴 × 𝐵), ⟨𝑎, 𝑏⟩) ↔ ⟨𝑐, 𝑑⟩ ∈ (((Pred(𝑅, 𝐴, 𝑎) ∪ {𝑎}) × (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏})) ∖ {⟨𝑎, 𝑏⟩}))))
9288, 91syl5ibrcom 249 . . . . . 6 (((𝑎𝐴𝑏𝐵) ∧ (𝑐𝐴𝑑𝐵)) → (𝑒 = ⟨𝑐, 𝑑⟩ → (𝑒 ∈ Pred(𝑇, (𝐴 × 𝐵), ⟨𝑎, 𝑏⟩) ↔ 𝑒 ∈ (((Pred(𝑅, 𝐴, 𝑎) ∪ {𝑎}) × (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏})) ∖ {⟨𝑎, 𝑏⟩}))))
9392rexlimdvva 3218 . . . . 5 ((𝑎𝐴𝑏𝐵) → (∃𝑐𝐴𝑑𝐵 𝑒 = ⟨𝑐, 𝑑⟩ → (𝑒 ∈ Pred(𝑇, (𝐴 × 𝐵), ⟨𝑎, 𝑏⟩) ↔ 𝑒 ∈ (((Pred(𝑅, 𝐴, 𝑎) ∪ {𝑎}) × (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏})) ∖ {⟨𝑎, 𝑏⟩}))))
9436, 93biimtrid 244 . . . 4 ((𝑎𝐴𝑏𝐵) → (𝑒 ∈ (𝐴 × 𝐵) → (𝑒 ∈ Pred(𝑇, (𝐴 × 𝐵), ⟨𝑎, 𝑏⟩) ↔ 𝑒 ∈ (((Pred(𝑅, 𝐴, 𝑎) ∪ {𝑎}) × (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏})) ∖ {⟨𝑎, 𝑏⟩}))))
9522, 35, 94pm5.21ndd 381 . . 3 ((𝑎𝐴𝑏𝐵) → (𝑒 ∈ Pred(𝑇, (𝐴 × 𝐵), ⟨𝑎, 𝑏⟩) ↔ 𝑒 ∈ (((Pred(𝑅, 𝐴, 𝑎) ∪ {𝑎}) × (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏})) ∖ {⟨𝑎, 𝑏⟩})))
9695eqrdv 2759 . 2 ((𝑎𝐴𝑏𝐵) → Pred(𝑇, (𝐴 × 𝐵), ⟨𝑎, 𝑏⟩) = (((Pred(𝑅, 𝐴, 𝑎) ∪ {𝑎}) × (Pred(𝑆, 𝐵, 𝑏) ∪ {𝑏})) ∖ {⟨𝑎, 𝑏⟩}))
9710, 20, 96vtocl2ga 3541 1 ((𝑋𝐴𝑌𝐵) → Pred(𝑇, (𝐴 × 𝐵), ⟨𝑋, 𝑌⟩) = (((Pred(𝑅, 𝐴, 𝑋) ∪ {𝑋}) × (Pred(𝑆, 𝐵, 𝑌) ∪ {𝑌})) ∖ {⟨𝑋, 𝑌⟩}))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 208  wa 399  wo 858  w3a 1097   = wceq 1559  wcel 2141  wne 2956  wrex 3085  Vcvv 3453  cdif 3899  cun 3900  wss 3902  {csn 4579  cop 4585   class class class wbr 5097  {copab 5159   × cxp 5641  Predcpred 6282  cfv 6516  1st c1st 7963  2nd c2nd 7964
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1814  ax-4 1828  ax-5 1929  ax-6 1986  ax-7 2027  ax-8 2143  ax-9 2151  ax-10 2174  ax-11 2190  ax-12 2211  ax-ext 2733  ax-sep 5243  ax-nul 5253  ax-pr 5387  ax-un 7713
This theorem depends on definitions:  df-bi 209  df-an 400  df-or 859  df-3an 1099  df-tru 1562  df-fal 1572  df-ex 1799  df-nf 1803  df-sb 2090  df-mo 2565  df-eu 2595  df-clab 2740  df-cleq 2753  df-clel 2836  df-nfc 2910  df-ne 2957  df-ral 3076  df-rex 3086  df-rab 3414  df-v 3455  df-dif 3905  df-un 3907  df-in 3909  df-ss 3919  df-nul 4284  df-if 4478  df-sn 4580  df-pr 4582  df-op 4586  df-uni 4863  df-br 5098  df-opab 5160  df-mpt 5179  df-id 5538  df-xp 5649  df-rel 5650  df-cnv 5651  df-co 5652  df-dm 5653  df-rn 5654  df-res 5655  df-ima 5656  df-pred 6283  df-iota 6472  df-fun 6518  df-fv 6524  df-1st 7965  df-2nd 7966
This theorem is referenced by:  sexp2  8120  xpord2indlem  8121  on2recsov  8632  noxpordpred  28034
  Copyright terms: Public domain W3C validator