Metamath Proof Explorer


Theorem dmdbr

Description: Binary relation expressing the dual modular pair property. (Contributed by NM, 27-Apr-2006) (New usage is discouraged.)

Ref Expression
Assertion dmdbr ( ( 𝐴C𝐵C ) → ( 𝐴 𝑀* 𝐵 ↔ ∀ 𝑥C ( 𝐵𝑥 → ( ( 𝑥𝐴 ) ∨ 𝐵 ) = ( 𝑥 ∩ ( 𝐴 𝐵 ) ) ) ) )

Proof

Step Hyp Ref Expression
1 eleq1 ( 𝑦 = 𝐴 → ( 𝑦C𝐴C ) )
2 1 anbi1d ( 𝑦 = 𝐴 → ( ( 𝑦C𝑧C ) ↔ ( 𝐴C𝑧C ) ) )
3 ineq2 ( 𝑦 = 𝐴 → ( 𝑥𝑦 ) = ( 𝑥𝐴 ) )
4 3 oveq1d ( 𝑦 = 𝐴 → ( ( 𝑥𝑦 ) ∨ 𝑧 ) = ( ( 𝑥𝐴 ) ∨ 𝑧 ) )
5 oveq1 ( 𝑦 = 𝐴 → ( 𝑦 𝑧 ) = ( 𝐴 𝑧 ) )
6 5 ineq2d ( 𝑦 = 𝐴 → ( 𝑥 ∩ ( 𝑦 𝑧 ) ) = ( 𝑥 ∩ ( 𝐴 𝑧 ) ) )
7 4 6 eqeq12d ( 𝑦 = 𝐴 → ( ( ( 𝑥𝑦 ) ∨ 𝑧 ) = ( 𝑥 ∩ ( 𝑦 𝑧 ) ) ↔ ( ( 𝑥𝐴 ) ∨ 𝑧 ) = ( 𝑥 ∩ ( 𝐴 𝑧 ) ) ) )
8 7 imbi2d ( 𝑦 = 𝐴 → ( ( 𝑧𝑥 → ( ( 𝑥𝑦 ) ∨ 𝑧 ) = ( 𝑥 ∩ ( 𝑦 𝑧 ) ) ) ↔ ( 𝑧𝑥 → ( ( 𝑥𝐴 ) ∨ 𝑧 ) = ( 𝑥 ∩ ( 𝐴 𝑧 ) ) ) ) )
9 8 ralbidv ( 𝑦 = 𝐴 → ( ∀ 𝑥C ( 𝑧𝑥 → ( ( 𝑥𝑦 ) ∨ 𝑧 ) = ( 𝑥 ∩ ( 𝑦 𝑧 ) ) ) ↔ ∀ 𝑥C ( 𝑧𝑥 → ( ( 𝑥𝐴 ) ∨ 𝑧 ) = ( 𝑥 ∩ ( 𝐴 𝑧 ) ) ) ) )
10 2 9 anbi12d ( 𝑦 = 𝐴 → ( ( ( 𝑦C𝑧C ) ∧ ∀ 𝑥C ( 𝑧𝑥 → ( ( 𝑥𝑦 ) ∨ 𝑧 ) = ( 𝑥 ∩ ( 𝑦 𝑧 ) ) ) ) ↔ ( ( 𝐴C𝑧C ) ∧ ∀ 𝑥C ( 𝑧𝑥 → ( ( 𝑥𝐴 ) ∨ 𝑧 ) = ( 𝑥 ∩ ( 𝐴 𝑧 ) ) ) ) ) )
11 eleq1 ( 𝑧 = 𝐵 → ( 𝑧C𝐵C ) )
12 11 anbi2d ( 𝑧 = 𝐵 → ( ( 𝐴C𝑧C ) ↔ ( 𝐴C𝐵C ) ) )
13 sseq1 ( 𝑧 = 𝐵 → ( 𝑧𝑥𝐵𝑥 ) )
14 oveq2 ( 𝑧 = 𝐵 → ( ( 𝑥𝐴 ) ∨ 𝑧 ) = ( ( 𝑥𝐴 ) ∨ 𝐵 ) )
15 oveq2 ( 𝑧 = 𝐵 → ( 𝐴 𝑧 ) = ( 𝐴 𝐵 ) )
16 15 ineq2d ( 𝑧 = 𝐵 → ( 𝑥 ∩ ( 𝐴 𝑧 ) ) = ( 𝑥 ∩ ( 𝐴 𝐵 ) ) )
17 14 16 eqeq12d ( 𝑧 = 𝐵 → ( ( ( 𝑥𝐴 ) ∨ 𝑧 ) = ( 𝑥 ∩ ( 𝐴 𝑧 ) ) ↔ ( ( 𝑥𝐴 ) ∨ 𝐵 ) = ( 𝑥 ∩ ( 𝐴 𝐵 ) ) ) )
18 13 17 imbi12d ( 𝑧 = 𝐵 → ( ( 𝑧𝑥 → ( ( 𝑥𝐴 ) ∨ 𝑧 ) = ( 𝑥 ∩ ( 𝐴 𝑧 ) ) ) ↔ ( 𝐵𝑥 → ( ( 𝑥𝐴 ) ∨ 𝐵 ) = ( 𝑥 ∩ ( 𝐴 𝐵 ) ) ) ) )
19 18 ralbidv ( 𝑧 = 𝐵 → ( ∀ 𝑥C ( 𝑧𝑥 → ( ( 𝑥𝐴 ) ∨ 𝑧 ) = ( 𝑥 ∩ ( 𝐴 𝑧 ) ) ) ↔ ∀ 𝑥C ( 𝐵𝑥 → ( ( 𝑥𝐴 ) ∨ 𝐵 ) = ( 𝑥 ∩ ( 𝐴 𝐵 ) ) ) ) )
20 12 19 anbi12d ( 𝑧 = 𝐵 → ( ( ( 𝐴C𝑧C ) ∧ ∀ 𝑥C ( 𝑧𝑥 → ( ( 𝑥𝐴 ) ∨ 𝑧 ) = ( 𝑥 ∩ ( 𝐴 𝑧 ) ) ) ) ↔ ( ( 𝐴C𝐵C ) ∧ ∀ 𝑥C ( 𝐵𝑥 → ( ( 𝑥𝐴 ) ∨ 𝐵 ) = ( 𝑥 ∩ ( 𝐴 𝐵 ) ) ) ) ) )
21 df-dmd 𝑀* = { ⟨ 𝑦 , 𝑧 ⟩ ∣ ( ( 𝑦C𝑧C ) ∧ ∀ 𝑥C ( 𝑧𝑥 → ( ( 𝑥𝑦 ) ∨ 𝑧 ) = ( 𝑥 ∩ ( 𝑦 𝑧 ) ) ) ) }
22 10 20 21 brabg ( ( 𝐴C𝐵C ) → ( 𝐴 𝑀* 𝐵 ↔ ( ( 𝐴C𝐵C ) ∧ ∀ 𝑥C ( 𝐵𝑥 → ( ( 𝑥𝐴 ) ∨ 𝐵 ) = ( 𝑥 ∩ ( 𝐴 𝐵 ) ) ) ) ) )
23 22 bianabs ( ( 𝐴C𝐵C ) → ( 𝐴 𝑀* 𝐵 ↔ ∀ 𝑥C ( 𝐵𝑥 → ( ( 𝑥𝐴 ) ∨ 𝐵 ) = ( 𝑥 ∩ ( 𝐴 𝐵 ) ) ) ) )