Mathbox for Norm Megill < Previous   Next > Nearby theorems Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  cdleme26f2ALTN Structured version   Visualization version   GIF version

Theorem cdleme26f2ALTN 37659
 Description: Part of proof of Lemma E in [Crawley] p. 113. cdleme26fALTN 37657 with s and t swapped (this case is not mentioned by them). If s ≤ t ∨ v, then f(s) ≤ fs(t) ∨ v. TODO: FIX COMMENT. (Contributed by NM, 1-Feb-2013.) (New usage is discouraged.)
Hypotheses
Ref Expression
cdleme26.b 𝐵 = (Base‘𝐾)
cdleme26.l = (le‘𝐾)
cdleme26.j = (join‘𝐾)
cdleme26.m = (meet‘𝐾)
cdleme26.a 𝐴 = (Atoms‘𝐾)
cdleme26.h 𝐻 = (LHyp‘𝐾)
cdleme26f2.u 𝑈 = ((𝑃 𝑄) 𝑊)
cdleme26f2.f 𝐺 = ((𝑠 𝑈) (𝑄 ((𝑃 𝑠) 𝑊)))
cdleme26f2.n 𝑂 = ((𝑃 𝑄) (𝐺 ((𝑇 𝑠) 𝑊)))
cdleme26f2.e 𝐸 = (𝑢𝐵𝑠𝐴 ((¬ 𝑠 𝑊 ∧ ¬ 𝑠 (𝑃 𝑄)) → 𝑢 = 𝑂))
Assertion
Ref Expression
cdleme26f2ALTN ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝑄𝑇 (𝑃 𝑄)) ∧ (𝑠𝐴 ∧ ¬ 𝑠 𝑊)) ∧ ((𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊)) ∧ ((¬ 𝑠 𝑊 ∧ ¬ 𝑠 (𝑃 𝑄)) ∧ (𝑠𝑇𝑠 (𝑇 𝑉)) ∧ (𝑉𝐴𝑉 𝑊))) → 𝐺 (𝐸 𝑉))
Distinct variable groups:   𝑢,𝑠,𝐴   𝐵,𝑠,𝑢   𝐻,𝑠   ,𝑠,𝑢   𝐾,𝑠   ,𝑠,𝑢   ,𝑠,𝑢   𝑢,𝑂   𝑃,𝑠,𝑢   𝑄,𝑠,𝑢   𝑇,𝑠,𝑢   𝑈,𝑠,𝑢   𝑊,𝑠,𝑢
Allowed substitution hints:   𝐸(𝑢,𝑠)   𝐺(𝑢,𝑠)   𝐻(𝑢)   𝐾(𝑢)   𝑂(𝑠)   𝑉(𝑢,𝑠)

Proof of Theorem cdleme26f2ALTN
StepHypRef Expression
1 simp11 1200 . . 3 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝑄𝑇 (𝑃 𝑄)) ∧ (𝑠𝐴 ∧ ¬ 𝑠 𝑊)) ∧ ((𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊)) ∧ ((¬ 𝑠 𝑊 ∧ ¬ 𝑠 (𝑃 𝑄)) ∧ (𝑠𝑇𝑠 (𝑇 𝑉)) ∧ (𝑉𝐴𝑉 𝑊))) → (𝐾 ∈ HL ∧ 𝑊𝐻))
2 simp23 1205 . . 3 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝑄𝑇 (𝑃 𝑄)) ∧ (𝑠𝐴 ∧ ¬ 𝑠 𝑊)) ∧ ((𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊)) ∧ ((¬ 𝑠 𝑊 ∧ ¬ 𝑠 (𝑃 𝑄)) ∧ (𝑠𝑇𝑠 (𝑇 𝑉)) ∧ (𝑉𝐴𝑉 𝑊))) → (𝑇𝐴 ∧ ¬ 𝑇 𝑊))
3 simp31r 1294 . . . 4 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝑄𝑇 (𝑃 𝑄)) ∧ (𝑠𝐴 ∧ ¬ 𝑠 𝑊)) ∧ ((𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊)) ∧ ((¬ 𝑠 𝑊 ∧ ¬ 𝑠 (𝑃 𝑄)) ∧ (𝑠𝑇𝑠 (𝑇 𝑉)) ∧ (𝑉𝐴𝑉 𝑊))) → ¬ 𝑠 (𝑃 𝑄))
4 simp12r 1284 . . . 4 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝑄𝑇 (𝑃 𝑄)) ∧ (𝑠𝐴 ∧ ¬ 𝑠 𝑊)) ∧ ((𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊)) ∧ ((¬ 𝑠 𝑊 ∧ ¬ 𝑠 (𝑃 𝑄)) ∧ (𝑠𝑇𝑠 (𝑇 𝑉)) ∧ (𝑉𝐴𝑉 𝑊))) → 𝑇 (𝑃 𝑄))
5 simp12l 1283 . . . 4 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝑄𝑇 (𝑃 𝑄)) ∧ (𝑠𝐴 ∧ ¬ 𝑠 𝑊)) ∧ ((𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊)) ∧ ((¬ 𝑠 𝑊 ∧ ¬ 𝑠 (𝑃 𝑄)) ∧ (𝑠𝑇𝑠 (𝑇 𝑉)) ∧ (𝑉𝐴𝑉 𝑊))) → 𝑃𝑄)
63, 4, 53jca 1125 . . 3 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝑄𝑇 (𝑃 𝑄)) ∧ (𝑠𝐴 ∧ ¬ 𝑠 𝑊)) ∧ ((𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊)) ∧ ((¬ 𝑠 𝑊 ∧ ¬ 𝑠 (𝑃 𝑄)) ∧ (𝑠𝑇𝑠 (𝑇 𝑉)) ∧ (𝑉𝐴𝑉 𝑊))) → (¬ 𝑠 (𝑃 𝑄) ∧ 𝑇 (𝑃 𝑄) ∧ 𝑃𝑄))
7 simp21 1203 . . 3 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝑄𝑇 (𝑃 𝑄)) ∧ (𝑠𝐴 ∧ ¬ 𝑠 𝑊)) ∧ ((𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊)) ∧ ((¬ 𝑠 𝑊 ∧ ¬ 𝑠 (𝑃 𝑄)) ∧ (𝑠𝑇𝑠 (𝑇 𝑉)) ∧ (𝑉𝐴𝑉 𝑊))) → (𝑃𝐴 ∧ ¬ 𝑃 𝑊))
8 simp22 1204 . . 3 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝑄𝑇 (𝑃 𝑄)) ∧ (𝑠𝐴 ∧ ¬ 𝑠 𝑊)) ∧ ((𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊)) ∧ ((¬ 𝑠 𝑊 ∧ ¬ 𝑠 (𝑃 𝑄)) ∧ (𝑠𝑇𝑠 (𝑇 𝑉)) ∧ (𝑉𝐴𝑉 𝑊))) → (𝑄𝐴 ∧ ¬ 𝑄 𝑊))
9 simp13 1202 . . 3 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝑄𝑇 (𝑃 𝑄)) ∧ (𝑠𝐴 ∧ ¬ 𝑠 𝑊)) ∧ ((𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊)) ∧ ((¬ 𝑠 𝑊 ∧ ¬ 𝑠 (𝑃 𝑄)) ∧ (𝑠𝑇𝑠 (𝑇 𝑉)) ∧ (𝑉𝐴𝑉 𝑊))) → (𝑠𝐴 ∧ ¬ 𝑠 𝑊))
10 simp32 1207 . . 3 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝑄𝑇 (𝑃 𝑄)) ∧ (𝑠𝐴 ∧ ¬ 𝑠 𝑊)) ∧ ((𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊)) ∧ ((¬ 𝑠 𝑊 ∧ ¬ 𝑠 (𝑃 𝑄)) ∧ (𝑠𝑇𝑠 (𝑇 𝑉)) ∧ (𝑉𝐴𝑉 𝑊))) → (𝑠𝑇𝑠 (𝑇 𝑉)))
11 simp33 1208 . . 3 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝑄𝑇 (𝑃 𝑄)) ∧ (𝑠𝐴 ∧ ¬ 𝑠 𝑊)) ∧ ((𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊)) ∧ ((¬ 𝑠 𝑊 ∧ ¬ 𝑠 (𝑃 𝑄)) ∧ (𝑠𝑇𝑠 (𝑇 𝑉)) ∧ (𝑉𝐴𝑉 𝑊))) → (𝑉𝐴𝑉 𝑊))
12 cdleme26.l . . . 4 = (le‘𝐾)
13 cdleme26.j . . . 4 = (join‘𝐾)
14 cdleme26.m . . . 4 = (meet‘𝐾)
15 cdleme26.a . . . 4 𝐴 = (Atoms‘𝐾)
16 cdleme26.h . . . 4 𝐻 = (LHyp‘𝐾)
17 cdleme26f2.u . . . 4 𝑈 = ((𝑃 𝑄) 𝑊)
18 cdleme26f2.f . . . 4 𝐺 = ((𝑠 𝑈) (𝑄 ((𝑃 𝑠) 𝑊)))
19 cdleme26f2.n . . . 4 𝑂 = ((𝑃 𝑄) (𝐺 ((𝑇 𝑠) 𝑊)))
2012, 13, 14, 15, 16, 17, 18, 19cdleme22f2 37642 . . 3 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (¬ 𝑠 (𝑃 𝑄) ∧ 𝑇 (𝑃 𝑄) ∧ 𝑃𝑄)) ∧ ((𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ ((𝑠𝐴 ∧ ¬ 𝑠 𝑊) ∧ (𝑠𝑇𝑠 (𝑇 𝑉)) ∧ (𝑉𝐴𝑉 𝑊))) → 𝐺 (𝑂 𝑉))
211, 2, 6, 7, 8, 9, 10, 11, 20syl323anc 1397 . 2 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝑄𝑇 (𝑃 𝑄)) ∧ (𝑠𝐴 ∧ ¬ 𝑠 𝑊)) ∧ ((𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊)) ∧ ((¬ 𝑠 𝑊 ∧ ¬ 𝑠 (𝑃 𝑄)) ∧ (𝑠𝑇𝑠 (𝑇 𝑉)) ∧ (𝑉𝐴𝑉 𝑊))) → 𝐺 (𝑂 𝑉))
22 simp23l 1291 . . . . 5 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝑄𝑇 (𝑃 𝑄)) ∧ (𝑠𝐴 ∧ ¬ 𝑠 𝑊)) ∧ ((𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊)) ∧ ((¬ 𝑠 𝑊 ∧ ¬ 𝑠 (𝑃 𝑄)) ∧ (𝑠𝑇𝑠 (𝑇 𝑉)) ∧ (𝑉𝐴𝑉 𝑊))) → 𝑇𝐴)
23 simp23r 1292 . . . . 5 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝑄𝑇 (𝑃 𝑄)) ∧ (𝑠𝐴 ∧ ¬ 𝑠 𝑊)) ∧ ((𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊)) ∧ ((¬ 𝑠 𝑊 ∧ ¬ 𝑠 (𝑃 𝑄)) ∧ (𝑠𝑇𝑠 (𝑇 𝑉)) ∧ (𝑉𝐴𝑉 𝑊))) → ¬ 𝑇 𝑊)
24 cdleme26.b . . . . . 6 𝐵 = (Base‘𝐾)
25 cdleme26f2.e . . . . . 6 𝐸 = (𝑢𝐵𝑠𝐴 ((¬ 𝑠 𝑊 ∧ ¬ 𝑠 (𝑃 𝑄)) → 𝑢 = 𝑂))
2624, 12, 13, 14, 15, 16, 17, 18, 19, 25cdleme25cl 37652 . . . . 5 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊)) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊) ∧ (𝑃𝑄𝑇 (𝑃 𝑄))) → 𝐸𝐵)
271, 7, 8, 22, 23, 5, 4, 26syl322anc 1395 . . . 4 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝑄𝑇 (𝑃 𝑄)) ∧ (𝑠𝐴 ∧ ¬ 𝑠 𝑊)) ∧ ((𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊)) ∧ ((¬ 𝑠 𝑊 ∧ ¬ 𝑠 (𝑃 𝑄)) ∧ (𝑠𝑇𝑠 (𝑇 𝑉)) ∧ (𝑉𝐴𝑉 𝑊))) → 𝐸𝐵)
28 simp13l 1285 . . . 4 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝑄𝑇 (𝑃 𝑄)) ∧ (𝑠𝐴 ∧ ¬ 𝑠 𝑊)) ∧ ((𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊)) ∧ ((¬ 𝑠 𝑊 ∧ ¬ 𝑠 (𝑃 𝑄)) ∧ (𝑠𝑇𝑠 (𝑇 𝑉)) ∧ (𝑉𝐴𝑉 𝑊))) → 𝑠𝐴)
29 simp31 1206 . . . 4 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝑄𝑇 (𝑃 𝑄)) ∧ (𝑠𝐴 ∧ ¬ 𝑠 𝑊)) ∧ ((𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊)) ∧ ((¬ 𝑠 𝑊 ∧ ¬ 𝑠 (𝑃 𝑄)) ∧ (𝑠𝑇𝑠 (𝑇 𝑉)) ∧ (𝑉𝐴𝑉 𝑊))) → (¬ 𝑠 𝑊 ∧ ¬ 𝑠 (𝑃 𝑄)))
3024fvexi 6663 . . . . 5 𝐵 ∈ V
3130, 25riotasv 36254 . . . 4 ((𝐸𝐵𝑠𝐴 ∧ (¬ 𝑠 𝑊 ∧ ¬ 𝑠 (𝑃 𝑄))) → 𝐸 = 𝑂)
3227, 28, 29, 31syl3anc 1368 . . 3 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝑄𝑇 (𝑃 𝑄)) ∧ (𝑠𝐴 ∧ ¬ 𝑠 𝑊)) ∧ ((𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊)) ∧ ((¬ 𝑠 𝑊 ∧ ¬ 𝑠 (𝑃 𝑄)) ∧ (𝑠𝑇𝑠 (𝑇 𝑉)) ∧ (𝑉𝐴𝑉 𝑊))) → 𝐸 = 𝑂)
3332oveq1d 7154 . 2 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝑄𝑇 (𝑃 𝑄)) ∧ (𝑠𝐴 ∧ ¬ 𝑠 𝑊)) ∧ ((𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊)) ∧ ((¬ 𝑠 𝑊 ∧ ¬ 𝑠 (𝑃 𝑄)) ∧ (𝑠𝑇𝑠 (𝑇 𝑉)) ∧ (𝑉𝐴𝑉 𝑊))) → (𝐸 𝑉) = (𝑂 𝑉))
3421, 33breqtrrd 5061 1 ((((𝐾 ∈ HL ∧ 𝑊𝐻) ∧ (𝑃𝑄𝑇 (𝑃 𝑄)) ∧ (𝑠𝐴 ∧ ¬ 𝑠 𝑊)) ∧ ((𝑃𝐴 ∧ ¬ 𝑃 𝑊) ∧ (𝑄𝐴 ∧ ¬ 𝑄 𝑊) ∧ (𝑇𝐴 ∧ ¬ 𝑇 𝑊)) ∧ ((¬ 𝑠 𝑊 ∧ ¬ 𝑠 (𝑃 𝑄)) ∧ (𝑠𝑇𝑠 (𝑇 𝑉)) ∧ (𝑉𝐴𝑉 𝑊))) → 𝐺 (𝐸 𝑉))
 Colors of variables: wff setvar class Syntax hints:  ¬ wn 3   → wi 4   ∧ wa 399   ∧ w3a 1084   = wceq 1538   ∈ wcel 2112   ≠ wne 2990  ∀wral 3109   class class class wbr 5033  ‘cfv 6328  ℩crio 7096  (class class class)co 7139  Basecbs 16479  lecple 16568  joincjn 17550  meetcmee 17551  Atomscatm 36558  HLchlt 36645  LHypclh 37279 This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1797  ax-4 1811  ax-5 1911  ax-6 1970  ax-7 2015  ax-8 2114  ax-9 2122  ax-10 2143  ax-11 2159  ax-12 2176  ax-ext 2773  ax-rep 5157  ax-sep 5170  ax-nul 5177  ax-pow 5234  ax-pr 5298  ax-un 7445  ax-riotaBAD 36248 This theorem depends on definitions:  df-bi 210  df-an 400  df-or 845  df-3or 1085  df-3an 1086  df-tru 1541  df-ex 1782  df-nf 1786  df-sb 2070  df-mo 2601  df-eu 2632  df-clab 2780  df-cleq 2794  df-clel 2873  df-nfc 2941  df-ne 2991  df-ral 3114  df-rex 3115  df-reu 3116  df-rmo 3117  df-rab 3118  df-v 3446  df-sbc 3724  df-csb 3832  df-dif 3887  df-un 3889  df-in 3891  df-ss 3901  df-nul 4247  df-if 4429  df-pw 4502  df-sn 4529  df-pr 4531  df-op 4535  df-uni 4804  df-iun 4886  df-iin 4887  df-br 5034  df-opab 5096  df-mpt 5114  df-id 5428  df-xp 5529  df-rel 5530  df-cnv 5531  df-co 5532  df-dm 5533  df-rn 5534  df-res 5535  df-ima 5536  df-iota 6287  df-fun 6330  df-fn 6331  df-f 6332  df-f1 6333  df-fo 6334  df-f1o 6335  df-fv 6336  df-riota 7097  df-ov 7142  df-oprab 7143  df-mpo 7144  df-1st 7675  df-2nd 7676  df-undef 7926  df-proset 17534  df-poset 17552  df-plt 17564  df-lub 17580  df-glb 17581  df-join 17582  df-meet 17583  df-p0 17645  df-p1 17646  df-lat 17652  df-clat 17714  df-oposet 36471  df-ol 36473  df-oml 36474  df-covers 36561  df-ats 36562  df-atl 36593  df-cvlat 36617  df-hlat 36646  df-llines 36793  df-lplanes 36794  df-lvols 36795  df-lines 36796  df-psubsp 36798  df-pmap 36799  df-padd 37091  df-lhyp 37283 This theorem is referenced by: (None)
 Copyright terms: Public domain W3C validator