Metamath Proof Explorer


Theorem joinlem

Description: Lemma for join properties. (Contributed by NM, 16-Sep-2011) (Revised by NM, 12-Sep-2018)

Ref Expression
Hypotheses joinval2.b 𝐵 = ( Base ‘ 𝐾 )
joinval2.l = ( le ‘ 𝐾 )
joinval2.j = ( join ‘ 𝐾 )
joinval2.k ( 𝜑𝐾𝑉 )
joinval2.x ( 𝜑𝑋𝐵 )
joinval2.y ( 𝜑𝑌𝐵 )
joinlem.e ( 𝜑 → ⟨ 𝑋 , 𝑌 ⟩ ∈ dom )
Assertion joinlem ( 𝜑 → ( ( 𝑋 ( 𝑋 𝑌 ) ∧ 𝑌 ( 𝑋 𝑌 ) ) ∧ ∀ 𝑧𝐵 ( ( 𝑋 𝑧𝑌 𝑧 ) → ( 𝑋 𝑌 ) 𝑧 ) ) )

Proof

Step Hyp Ref Expression
1 joinval2.b 𝐵 = ( Base ‘ 𝐾 )
2 joinval2.l = ( le ‘ 𝐾 )
3 joinval2.j = ( join ‘ 𝐾 )
4 joinval2.k ( 𝜑𝐾𝑉 )
5 joinval2.x ( 𝜑𝑋𝐵 )
6 joinval2.y ( 𝜑𝑌𝐵 )
7 joinlem.e ( 𝜑 → ⟨ 𝑋 , 𝑌 ⟩ ∈ dom )
8 1 2 3 4 5 6 7 joineu ( 𝜑 → ∃! 𝑥𝐵 ( ( 𝑋 𝑥𝑌 𝑥 ) ∧ ∀ 𝑧𝐵 ( ( 𝑋 𝑧𝑌 𝑧 ) → 𝑥 𝑧 ) ) )
9 riotasbc ( ∃! 𝑥𝐵 ( ( 𝑋 𝑥𝑌 𝑥 ) ∧ ∀ 𝑧𝐵 ( ( 𝑋 𝑧𝑌 𝑧 ) → 𝑥 𝑧 ) ) → [ ( 𝑥𝐵 ( ( 𝑋 𝑥𝑌 𝑥 ) ∧ ∀ 𝑧𝐵 ( ( 𝑋 𝑧𝑌 𝑧 ) → 𝑥 𝑧 ) ) ) / 𝑥 ] ( ( 𝑋 𝑥𝑌 𝑥 ) ∧ ∀ 𝑧𝐵 ( ( 𝑋 𝑧𝑌 𝑧 ) → 𝑥 𝑧 ) ) )
10 8 9 syl ( 𝜑[ ( 𝑥𝐵 ( ( 𝑋 𝑥𝑌 𝑥 ) ∧ ∀ 𝑧𝐵 ( ( 𝑋 𝑧𝑌 𝑧 ) → 𝑥 𝑧 ) ) ) / 𝑥 ] ( ( 𝑋 𝑥𝑌 𝑥 ) ∧ ∀ 𝑧𝐵 ( ( 𝑋 𝑧𝑌 𝑧 ) → 𝑥 𝑧 ) ) )
11 1 2 3 4 5 6 joinval2 ( 𝜑 → ( 𝑋 𝑌 ) = ( 𝑥𝐵 ( ( 𝑋 𝑥𝑌 𝑥 ) ∧ ∀ 𝑧𝐵 ( ( 𝑋 𝑧𝑌 𝑧 ) → 𝑥 𝑧 ) ) ) )
12 11 sbceq1d ( 𝜑 → ( [ ( 𝑋 𝑌 ) / 𝑥 ] ( ( 𝑋 𝑥𝑌 𝑥 ) ∧ ∀ 𝑧𝐵 ( ( 𝑋 𝑧𝑌 𝑧 ) → 𝑥 𝑧 ) ) ↔ [ ( 𝑥𝐵 ( ( 𝑋 𝑥𝑌 𝑥 ) ∧ ∀ 𝑧𝐵 ( ( 𝑋 𝑧𝑌 𝑧 ) → 𝑥 𝑧 ) ) ) / 𝑥 ] ( ( 𝑋 𝑥𝑌 𝑥 ) ∧ ∀ 𝑧𝐵 ( ( 𝑋 𝑧𝑌 𝑧 ) → 𝑥 𝑧 ) ) ) )
13 10 12 mpbird ( 𝜑[ ( 𝑋 𝑌 ) / 𝑥 ] ( ( 𝑋 𝑥𝑌 𝑥 ) ∧ ∀ 𝑧𝐵 ( ( 𝑋 𝑧𝑌 𝑧 ) → 𝑥 𝑧 ) ) )
14 ovex ( 𝑋 𝑌 ) ∈ V
15 breq2 ( 𝑥 = ( 𝑋 𝑌 ) → ( 𝑋 𝑥𝑋 ( 𝑋 𝑌 ) ) )
16 breq2 ( 𝑥 = ( 𝑋 𝑌 ) → ( 𝑌 𝑥𝑌 ( 𝑋 𝑌 ) ) )
17 15 16 anbi12d ( 𝑥 = ( 𝑋 𝑌 ) → ( ( 𝑋 𝑥𝑌 𝑥 ) ↔ ( 𝑋 ( 𝑋 𝑌 ) ∧ 𝑌 ( 𝑋 𝑌 ) ) ) )
18 breq1 ( 𝑥 = ( 𝑋 𝑌 ) → ( 𝑥 𝑧 ↔ ( 𝑋 𝑌 ) 𝑧 ) )
19 18 imbi2d ( 𝑥 = ( 𝑋 𝑌 ) → ( ( ( 𝑋 𝑧𝑌 𝑧 ) → 𝑥 𝑧 ) ↔ ( ( 𝑋 𝑧𝑌 𝑧 ) → ( 𝑋 𝑌 ) 𝑧 ) ) )
20 19 ralbidv ( 𝑥 = ( 𝑋 𝑌 ) → ( ∀ 𝑧𝐵 ( ( 𝑋 𝑧𝑌 𝑧 ) → 𝑥 𝑧 ) ↔ ∀ 𝑧𝐵 ( ( 𝑋 𝑧𝑌 𝑧 ) → ( 𝑋 𝑌 ) 𝑧 ) ) )
21 17 20 anbi12d ( 𝑥 = ( 𝑋 𝑌 ) → ( ( ( 𝑋 𝑥𝑌 𝑥 ) ∧ ∀ 𝑧𝐵 ( ( 𝑋 𝑧𝑌 𝑧 ) → 𝑥 𝑧 ) ) ↔ ( ( 𝑋 ( 𝑋 𝑌 ) ∧ 𝑌 ( 𝑋 𝑌 ) ) ∧ ∀ 𝑧𝐵 ( ( 𝑋 𝑧𝑌 𝑧 ) → ( 𝑋 𝑌 ) 𝑧 ) ) ) )
22 14 21 sbcie ( [ ( 𝑋 𝑌 ) / 𝑥 ] ( ( 𝑋 𝑥𝑌 𝑥 ) ∧ ∀ 𝑧𝐵 ( ( 𝑋 𝑧𝑌 𝑧 ) → 𝑥 𝑧 ) ) ↔ ( ( 𝑋 ( 𝑋 𝑌 ) ∧ 𝑌 ( 𝑋 𝑌 ) ) ∧ ∀ 𝑧𝐵 ( ( 𝑋 𝑧𝑌 𝑧 ) → ( 𝑋 𝑌 ) 𝑧 ) ) )
23 13 22 sylib ( 𝜑 → ( ( 𝑋 ( 𝑋 𝑌 ) ∧ 𝑌 ( 𝑋 𝑌 ) ) ∧ ∀ 𝑧𝐵 ( ( 𝑋 𝑧𝑌 𝑧 ) → ( 𝑋 𝑌 ) 𝑧 ) ) )