Metamath Proof Explorer


Theorem islat

Description: The predicate "is a lattice." (Contributed by NM, 18-Oct-2012) (Revised by NM, 12-Sep-2018)

Ref Expression
Hypotheses islat.b
|- B = ( Base ` K )
islat.j
|- .\/ = ( join ` K )
islat.m
|- ./\ = ( meet ` K )
Assertion islat
|- ( K e. Lat <-> ( K e. Poset /\ ( dom .\/ = ( B X. B ) /\ dom ./\ = ( B X. B ) ) ) )

Proof

Step Hyp Ref Expression
1 islat.b
 |-  B = ( Base ` K )
2 islat.j
 |-  .\/ = ( join ` K )
3 islat.m
 |-  ./\ = ( meet ` K )
4 fveq2
 |-  ( l = K -> ( join ` l ) = ( join ` K ) )
5 4 2 eqtr4di
 |-  ( l = K -> ( join ` l ) = .\/ )
6 5 dmeqd
 |-  ( l = K -> dom ( join ` l ) = dom .\/ )
7 fveq2
 |-  ( l = K -> ( Base ` l ) = ( Base ` K ) )
8 7 1 eqtr4di
 |-  ( l = K -> ( Base ` l ) = B )
9 8 sqxpeqd
 |-  ( l = K -> ( ( Base ` l ) X. ( Base ` l ) ) = ( B X. B ) )
10 6 9 eqeq12d
 |-  ( l = K -> ( dom ( join ` l ) = ( ( Base ` l ) X. ( Base ` l ) ) <-> dom .\/ = ( B X. B ) ) )
11 fveq2
 |-  ( l = K -> ( meet ` l ) = ( meet ` K ) )
12 11 3 eqtr4di
 |-  ( l = K -> ( meet ` l ) = ./\ )
13 12 dmeqd
 |-  ( l = K -> dom ( meet ` l ) = dom ./\ )
14 13 9 eqeq12d
 |-  ( l = K -> ( dom ( meet ` l ) = ( ( Base ` l ) X. ( Base ` l ) ) <-> dom ./\ = ( B X. B ) ) )
15 10 14 anbi12d
 |-  ( l = K -> ( ( dom ( join ` l ) = ( ( Base ` l ) X. ( Base ` l ) ) /\ dom ( meet ` l ) = ( ( Base ` l ) X. ( Base ` l ) ) ) <-> ( dom .\/ = ( B X. B ) /\ dom ./\ = ( B X. B ) ) ) )
16 df-lat
 |-  Lat = { l e. Poset | ( dom ( join ` l ) = ( ( Base ` l ) X. ( Base ` l ) ) /\ dom ( meet ` l ) = ( ( Base ` l ) X. ( Base ` l ) ) ) }
17 15 16 elrab2
 |-  ( K e. Lat <-> ( K e. Poset /\ ( dom .\/ = ( B X. B ) /\ dom ./\ = ( B X. B ) ) ) )