Metamath Proof Explorer


Theorem atmod3i2

Description: Version of modular law that holds in a Hilbert lattice, when one element is an atom. (Contributed by NM, 10-Jun-2012) (Revised by Mario Carneiro, 10-May-2013)

Ref Expression
Hypotheses atmod.b 𝐵 = ( Base ‘ 𝐾 )
atmod.l = ( le ‘ 𝐾 )
atmod.j = ( join ‘ 𝐾 )
atmod.m = ( meet ‘ 𝐾 )
atmod.a 𝐴 = ( Atoms ‘ 𝐾 )
Assertion atmod3i2 ( ( 𝐾 ∈ HL ∧ ( 𝑃𝐴𝑋𝐵𝑌𝐵 ) ∧ 𝑋 𝑌 ) → ( 𝑋 ( 𝑌 𝑃 ) ) = ( 𝑌 ( 𝑋 𝑃 ) ) )

Proof

Step Hyp Ref Expression
1 atmod.b 𝐵 = ( Base ‘ 𝐾 )
2 atmod.l = ( le ‘ 𝐾 )
3 atmod.j = ( join ‘ 𝐾 )
4 atmod.m = ( meet ‘ 𝐾 )
5 atmod.a 𝐴 = ( Atoms ‘ 𝐾 )
6 hllat ( 𝐾 ∈ HL → 𝐾 ∈ Lat )
7 6 3ad2ant1 ( ( 𝐾 ∈ HL ∧ ( 𝑃𝐴𝑋𝐵𝑌𝐵 ) ∧ 𝑋 𝑌 ) → 𝐾 ∈ Lat )
8 simp23 ( ( 𝐾 ∈ HL ∧ ( 𝑃𝐴𝑋𝐵𝑌𝐵 ) ∧ 𝑋 𝑌 ) → 𝑌𝐵 )
9 simp22 ( ( 𝐾 ∈ HL ∧ ( 𝑃𝐴𝑋𝐵𝑌𝐵 ) ∧ 𝑋 𝑌 ) → 𝑋𝐵 )
10 simp21 ( ( 𝐾 ∈ HL ∧ ( 𝑃𝐴𝑋𝐵𝑌𝐵 ) ∧ 𝑋 𝑌 ) → 𝑃𝐴 )
11 1 5 atbase ( 𝑃𝐴𝑃𝐵 )
12 10 11 syl ( ( 𝐾 ∈ HL ∧ ( 𝑃𝐴𝑋𝐵𝑌𝐵 ) ∧ 𝑋 𝑌 ) → 𝑃𝐵 )
13 1 3 latjcl ( ( 𝐾 ∈ Lat ∧ 𝑋𝐵𝑃𝐵 ) → ( 𝑋 𝑃 ) ∈ 𝐵 )
14 7 9 12 13 syl3anc ( ( 𝐾 ∈ HL ∧ ( 𝑃𝐴𝑋𝐵𝑌𝐵 ) ∧ 𝑋 𝑌 ) → ( 𝑋 𝑃 ) ∈ 𝐵 )
15 1 4 latmcom ( ( 𝐾 ∈ Lat ∧ 𝑌𝐵 ∧ ( 𝑋 𝑃 ) ∈ 𝐵 ) → ( 𝑌 ( 𝑋 𝑃 ) ) = ( ( 𝑋 𝑃 ) 𝑌 ) )
16 7 8 14 15 syl3anc ( ( 𝐾 ∈ HL ∧ ( 𝑃𝐴𝑋𝐵𝑌𝐵 ) ∧ 𝑋 𝑌 ) → ( 𝑌 ( 𝑋 𝑃 ) ) = ( ( 𝑋 𝑃 ) 𝑌 ) )
17 1 2 3 4 5 atmod1i2 ( ( 𝐾 ∈ HL ∧ ( 𝑃𝐴𝑋𝐵𝑌𝐵 ) ∧ 𝑋 𝑌 ) → ( 𝑋 ( 𝑃 𝑌 ) ) = ( ( 𝑋 𝑃 ) 𝑌 ) )
18 1 4 latmcom ( ( 𝐾 ∈ Lat ∧ 𝑃𝐵𝑌𝐵 ) → ( 𝑃 𝑌 ) = ( 𝑌 𝑃 ) )
19 7 12 8 18 syl3anc ( ( 𝐾 ∈ HL ∧ ( 𝑃𝐴𝑋𝐵𝑌𝐵 ) ∧ 𝑋 𝑌 ) → ( 𝑃 𝑌 ) = ( 𝑌 𝑃 ) )
20 19 oveq2d ( ( 𝐾 ∈ HL ∧ ( 𝑃𝐴𝑋𝐵𝑌𝐵 ) ∧ 𝑋 𝑌 ) → ( 𝑋 ( 𝑃 𝑌 ) ) = ( 𝑋 ( 𝑌 𝑃 ) ) )
21 16 17 20 3eqtr2rd ( ( 𝐾 ∈ HL ∧ ( 𝑃𝐴𝑋𝐵𝑌𝐵 ) ∧ 𝑋 𝑌 ) → ( 𝑋 ( 𝑌 𝑃 ) ) = ( 𝑌 ( 𝑋 𝑃 ) ) )