Users' Mathboxes Mathbox for Norm Megill < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  cdleme30a Structured version   Visualization version   Unicode version

Theorem cdleme30a 35666
Description: Part of proof of Lemma E in [Crawley] p. 113. (Contributed by NM, 9-Feb-2013.)
Hypotheses
Ref Expression
cdleme30.b  |-  B  =  ( Base `  K
)
cdleme30.l  |-  .<_  =  ( le `  K )
cdleme30.j  |-  .\/  =  ( join `  K )
cdleme30.m  |-  ./\  =  ( meet `  K )
cdleme30.a  |-  A  =  ( Atoms `  K )
cdleme30.h  |-  H  =  ( LHyp `  K
)
Assertion
Ref Expression
cdleme30a  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  ( s  .\/  ( Y  ./\  W ) )  =  Y )

Proof of Theorem cdleme30a
StepHypRef Expression
1 simp1l 1085 . . . 4  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  K  e.  HL )
2 hllat 34650 . . . 4  |-  ( K  e.  HL  ->  K  e.  Lat )
31, 2syl 17 . . 3  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  K  e.  Lat )
4 simp21 1094 . . . 4  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  s  e.  A
)
5 cdleme30.b . . . . 5  |-  B  =  ( Base `  K
)
6 cdleme30.a . . . . 5  |-  A  =  ( Atoms `  K )
75, 6atbase 34576 . . . 4  |-  ( s  e.  A  ->  s  e.  B )
84, 7syl 17 . . 3  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  s  e.  B
)
9 simp23 1096 . . . 4  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  Y  e.  B
)
10 simp1r 1086 . . . . 5  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  W  e.  H
)
11 cdleme30.h . . . . . 6  |-  H  =  ( LHyp `  K
)
125, 11lhpbase 35284 . . . . 5  |-  ( W  e.  H  ->  W  e.  B )
1310, 12syl 17 . . . 4  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  W  e.  B
)
14 cdleme30.m . . . . 5  |-  ./\  =  ( meet `  K )
155, 14latmcl 17052 . . . 4  |-  ( ( K  e.  Lat  /\  Y  e.  B  /\  W  e.  B )  ->  ( Y  ./\  W
)  e.  B )
163, 9, 13, 15syl3anc 1326 . . 3  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  ( Y  ./\  W )  e.  B )
17 simp22l 1180 . . 3  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  X  e.  B
)
18 cdleme30.j . . . 4  |-  .\/  =  ( join `  K )
195, 18latjass 17095 . . 3  |-  ( ( K  e.  Lat  /\  ( s  e.  B  /\  ( Y  ./\  W
)  e.  B  /\  X  e.  B )
)  ->  ( (
s  .\/  ( Y  ./\ 
W ) )  .\/  X )  =  ( s 
.\/  ( ( Y 
./\  W )  .\/  X ) ) )
203, 8, 16, 17, 19syl13anc 1328 . 2  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  ( ( s 
.\/  ( Y  ./\  W ) )  .\/  X
)  =  ( s 
.\/  ( ( Y 
./\  W )  .\/  X ) ) )
21 simp3l 1089 . . . 4  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  ( s  .\/  ( X  ./\  W ) )  =  X )
22 simp3r 1090 . . . . . 6  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  X  .<_  Y )
23 cdleme30.l . . . . . . . 8  |-  .<_  =  ( le `  K )
245, 23, 14latmlem1 17081 . . . . . . 7  |-  ( ( K  e.  Lat  /\  ( X  e.  B  /\  Y  e.  B  /\  W  e.  B
) )  ->  ( X  .<_  Y  ->  ( X  ./\  W )  .<_  ( Y  ./\  W ) ) )
253, 17, 9, 13, 24syl13anc 1328 . . . . . 6  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  ( X  .<_  Y  ->  ( X  ./\  W )  .<_  ( Y  ./\ 
W ) ) )
2622, 25mpd 15 . . . . 5  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  ( X  ./\  W )  .<_  ( Y  ./\ 
W ) )
275, 14latmcl 17052 . . . . . . 7  |-  ( ( K  e.  Lat  /\  X  e.  B  /\  W  e.  B )  ->  ( X  ./\  W
)  e.  B )
283, 17, 13, 27syl3anc 1326 . . . . . 6  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  ( X  ./\  W )  e.  B )
295, 23, 18latjlej2 17066 . . . . . 6  |-  ( ( K  e.  Lat  /\  ( ( X  ./\  W )  e.  B  /\  ( Y  ./\  W )  e.  B  /\  s  e.  B ) )  -> 
( ( X  ./\  W )  .<_  ( Y  ./\ 
W )  ->  (
s  .\/  ( X  ./\ 
W ) )  .<_  ( s  .\/  ( Y  ./\  W ) ) ) )
303, 28, 16, 8, 29syl13anc 1328 . . . . 5  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  ( ( X 
./\  W )  .<_  ( Y  ./\  W )  ->  ( s  .\/  ( X  ./\  W ) )  .<_  ( s  .\/  ( Y  ./\  W
) ) ) )
3126, 30mpd 15 . . . 4  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  ( s  .\/  ( X  ./\  W ) )  .<_  ( s  .\/  ( Y  ./\  W
) ) )
3221, 31eqbrtrrd 4677 . . 3  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  X  .<_  ( s 
.\/  ( Y  ./\  W ) ) )
335, 18latjcl 17051 . . . . 5  |-  ( ( K  e.  Lat  /\  s  e.  B  /\  ( Y  ./\  W )  e.  B )  -> 
( s  .\/  ( Y  ./\  W ) )  e.  B )
343, 8, 16, 33syl3anc 1326 . . . 4  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  ( s  .\/  ( Y  ./\  W ) )  e.  B )
355, 23, 18latleeqj2 17064 . . . 4  |-  ( ( K  e.  Lat  /\  X  e.  B  /\  ( s  .\/  ( Y  ./\  W ) )  e.  B )  -> 
( X  .<_  ( s 
.\/  ( Y  ./\  W ) )  <->  ( (
s  .\/  ( Y  ./\ 
W ) )  .\/  X )  =  ( s 
.\/  ( Y  ./\  W ) ) ) )
363, 17, 34, 35syl3anc 1326 . . 3  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  ( X  .<_  ( s  .\/  ( Y 
./\  W ) )  <-> 
( ( s  .\/  ( Y  ./\  W ) )  .\/  X )  =  ( s  .\/  ( Y  ./\  W ) ) ) )
3732, 36mpbid 222 . 2  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  ( ( s 
.\/  ( Y  ./\  W ) )  .\/  X
)  =  ( s 
.\/  ( Y  ./\  W ) ) )
38 simp1 1061 . . . . 5  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  ( K  e.  HL  /\  W  e.  H ) )
395, 23, 18, 14, 11lhpmod2i2 35324 . . . . 5  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( Y  e.  B  /\  X  e.  B )  /\  X  .<_  Y )  ->  (
( Y  ./\  W
)  .\/  X )  =  ( Y  ./\  ( W  .\/  X ) ) )
4038, 9, 17, 22, 39syl121anc 1331 . . . 4  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  ( ( Y 
./\  W )  .\/  X )  =  ( Y 
./\  ( W  .\/  X ) ) )
4140oveq2d 6666 . . 3  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  ( s  .\/  ( ( Y  ./\  W )  .\/  X ) )  =  ( s 
.\/  ( Y  ./\  ( W  .\/  X ) ) ) )
42 simp22 1095 . . . . . . 7  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  ( X  e.  B  /\  -.  X  .<_  W ) )
43 eqid 2622 . . . . . . . 8  |-  ( 1.
`  K )  =  ( 1. `  K
)
445, 23, 18, 43, 11lhpj1 35308 . . . . . . 7  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( X  e.  B  /\  -.  X  .<_  W ) )  -> 
( W  .\/  X
)  =  ( 1.
`  K ) )
4538, 42, 44syl2anc 693 . . . . . 6  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  ( W  .\/  X )  =  ( 1.
`  K ) )
4645oveq2d 6666 . . . . 5  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  ( Y  ./\  ( W  .\/  X ) )  =  ( Y 
./\  ( 1. `  K ) ) )
47 hlol 34648 . . . . . . 7  |-  ( K  e.  HL  ->  K  e.  OL )
481, 47syl 17 . . . . . 6  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  K  e.  OL )
495, 14, 43olm11 34514 . . . . . 6  |-  ( ( K  e.  OL  /\  Y  e.  B )  ->  ( Y  ./\  ( 1. `  K ) )  =  Y )
5048, 9, 49syl2anc 693 . . . . 5  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  ( Y  ./\  ( 1. `  K ) )  =  Y )
5146, 50eqtrd 2656 . . . 4  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  ( Y  ./\  ( W  .\/  X ) )  =  Y )
5251oveq2d 6666 . . 3  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  ( s  .\/  ( Y  ./\  ( W 
.\/  X ) ) )  =  ( s 
.\/  Y ) )
535, 23, 18latlej1 17060 . . . . . . 7  |-  ( ( K  e.  Lat  /\  s  e.  B  /\  ( X  ./\  W )  e.  B )  -> 
s  .<_  ( s  .\/  ( X  ./\  W ) ) )
543, 8, 28, 53syl3anc 1326 . . . . . 6  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  s  .<_  ( s 
.\/  ( X  ./\  W ) ) )
5554, 21breqtrd 4679 . . . . 5  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  s  .<_  X )
565, 23, 3, 8, 17, 9, 55, 22lattrd 17058 . . . 4  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  s  .<_  Y )
575, 23, 18latleeqj1 17063 . . . . 5  |-  ( ( K  e.  Lat  /\  s  e.  B  /\  Y  e.  B )  ->  ( s  .<_  Y  <->  ( s  .\/  Y )  =  Y ) )
583, 8, 9, 57syl3anc 1326 . . . 4  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  ( s  .<_  Y 
<->  ( s  .\/  Y
)  =  Y ) )
5956, 58mpbid 222 . . 3  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  ( s  .\/  Y )  =  Y )
6041, 52, 593eqtrd 2660 . 2  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  ( s  .\/  ( ( Y  ./\  W )  .\/  X ) )  =  Y )
6120, 37, 603eqtr3d 2664 1  |-  ( ( ( K  e.  HL  /\  W  e.  H )  /\  ( s  e.  A  /\  ( X  e.  B  /\  -.  X  .<_  W )  /\  Y  e.  B )  /\  ( ( s  .\/  ( X  ./\  W ) )  =  X  /\  X  .<_  Y ) )  ->  ( s  .\/  ( Y  ./\  W ) )  =  Y )
Colors of variables: wff setvar class
Syntax hints:   -. wn 3    -> wi 4    <-> wb 196    /\ wa 384    /\ w3a 1037    = wceq 1483    e. wcel 1990   class class class wbr 4653   ` cfv 5888  (class class class)co 6650   Basecbs 15857   lecple 15948   joincjn 16944   meetcmee 16945   1.cp1 17038   Latclat 17045   OLcol 34461   Atomscatm 34550   HLchlt 34637   LHypclh 35270
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1722  ax-4 1737  ax-5 1839  ax-6 1888  ax-7 1935  ax-8 1992  ax-9 1999  ax-10 2019  ax-11 2034  ax-12 2047  ax-13 2246  ax-ext 2602  ax-rep 4771  ax-sep 4781  ax-nul 4789  ax-pow 4843  ax-pr 4906  ax-un 6949
This theorem depends on definitions:  df-bi 197  df-or 385  df-an 386  df-3an 1039  df-tru 1486  df-ex 1705  df-nf 1710  df-sb 1881  df-eu 2474  df-mo 2475  df-clab 2609  df-cleq 2615  df-clel 2618  df-nfc 2753  df-ne 2795  df-ral 2917  df-rex 2918  df-reu 2919  df-rab 2921  df-v 3202  df-sbc 3436  df-csb 3534  df-dif 3577  df-un 3579  df-in 3581  df-ss 3588  df-nul 3916  df-if 4087  df-pw 4160  df-sn 4178  df-pr 4180  df-op 4184  df-uni 4437  df-iun 4522  df-iin 4523  df-br 4654  df-opab 4713  df-mpt 4730  df-id 5024  df-xp 5120  df-rel 5121  df-cnv 5122  df-co 5123  df-dm 5124  df-rn 5125  df-res 5126  df-ima 5127  df-iota 5851  df-fun 5890  df-fn 5891  df-f 5892  df-f1 5893  df-fo 5894  df-f1o 5895  df-fv 5896  df-riota 6611  df-ov 6653  df-oprab 6654  df-mpt2 6655  df-1st 7168  df-2nd 7169  df-preset 16928  df-poset 16946  df-plt 16958  df-lub 16974  df-glb 16975  df-join 16976  df-meet 16977  df-p0 17039  df-p1 17040  df-lat 17046  df-clat 17108  df-oposet 34463  df-ol 34465  df-oml 34466  df-covers 34553  df-ats 34554  df-atl 34585  df-cvlat 34609  df-hlat 34638  df-psubsp 34789  df-pmap 34790  df-padd 35082  df-lhyp 35274
This theorem is referenced by:  cdleme32b  35730
  Copyright terms: Public domain W3C validator