MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  cshweqdif2 Structured version   Visualization version   GIF version

Theorem cshweqdif2 14863
Description: If cyclically shifting two words (of the same length) results in the same word, cyclically shifting one of the words by the difference of the numbers of shifts results in the other word. (Contributed by AV, 21-Apr-2018.) (Revised by AV, 6-Jun-2018.) (Revised by AV, 1-Nov-2018.)
Assertion
Ref Expression
cshweqdif2 (((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) → ((𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀) → (𝑈 cyclShift (𝑀𝑁)) = 𝑊))

Proof of Theorem cshweqdif2
StepHypRef Expression
1 simpr 489 . . . . . . . . 9 ((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) → 𝑈 ∈ Word 𝑉)
21adantr 485 . . . . . . . 8 (((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) → 𝑈 ∈ Word 𝑉)
3 zsubcl 12642 . . . . . . . . . 10 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀𝑁) ∈ ℤ)
43ancoms 463 . . . . . . . . 9 ((𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ) → (𝑀𝑁) ∈ ℤ)
54adantl 486 . . . . . . . 8 (((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) → (𝑀𝑁) ∈ ℤ)
6 simpr 489 . . . . . . . . 9 ((𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ) → 𝑀 ∈ ℤ)
76adantl 486 . . . . . . . 8 (((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) → 𝑀 ∈ ℤ)
82, 5, 73jca 1145 . . . . . . 7 (((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) → (𝑈 ∈ Word 𝑉 ∧ (𝑀𝑁) ∈ ℤ ∧ 𝑀 ∈ ℤ))
98adantr 485 . . . . . 6 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (𝑈 ∈ Word 𝑉 ∧ (𝑀𝑁) ∈ ℤ ∧ 𝑀 ∈ ℤ))
10 3cshw 14862 . . . . . 6 ((𝑈 ∈ Word 𝑉 ∧ (𝑀𝑁) ∈ ℤ ∧ 𝑀 ∈ ℤ) → (𝑈 cyclShift (𝑀𝑁)) = (((𝑈 cyclShift 𝑀) cyclShift (𝑀𝑁)) cyclShift ((♯‘𝑈) − 𝑀)))
119, 10syl 18 . . . . 5 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (𝑈 cyclShift (𝑀𝑁)) = (((𝑈 cyclShift 𝑀) cyclShift (𝑀𝑁)) cyclShift ((♯‘𝑈) − 𝑀)))
12 simpl 487 . . . . . . . . . 10 (((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) → (𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉))
1312ancomd 466 . . . . . . . . 9 (((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) → (𝑈 ∈ Word 𝑉𝑊 ∈ Word 𝑉))
1413adantr 485 . . . . . . . 8 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (𝑈 ∈ Word 𝑉𝑊 ∈ Word 𝑉))
15 simpr 489 . . . . . . . . . 10 (((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) → (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ))
1615ancomd 466 . . . . . . . . 9 (((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) → (𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ))
1716adantr 485 . . . . . . . 8 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ))
18 simpr 489 . . . . . . . . 9 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀))
1918eqcomd 2768 . . . . . . . 8 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (𝑈 cyclShift 𝑀) = (𝑊 cyclShift 𝑁))
20 cshwleneq 14861 . . . . . . . 8 (((𝑈 ∈ Word 𝑉𝑊 ∈ Word 𝑉) ∧ (𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑈 cyclShift 𝑀) = (𝑊 cyclShift 𝑁)) → (♯‘𝑈) = (♯‘𝑊))
2114, 17, 19, 20syl3anc 1397 . . . . . . 7 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (♯‘𝑈) = (♯‘𝑊))
2221oveq1d 7427 . . . . . 6 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → ((♯‘𝑈) − 𝑀) = ((♯‘𝑊) − 𝑀))
2322oveq2d 7428 . . . . 5 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (((𝑈 cyclShift 𝑀) cyclShift (𝑀𝑁)) cyclShift ((♯‘𝑈) − 𝑀)) = (((𝑈 cyclShift 𝑀) cyclShift (𝑀𝑁)) cyclShift ((♯‘𝑊) − 𝑀)))
2411, 23eqtrd 2797 . . . 4 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (𝑈 cyclShift (𝑀𝑁)) = (((𝑈 cyclShift 𝑀) cyclShift (𝑀𝑁)) cyclShift ((♯‘𝑊) − 𝑀)))
2519oveq1d 7427 . . . . . 6 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → ((𝑈 cyclShift 𝑀) cyclShift (𝑀𝑁)) = ((𝑊 cyclShift 𝑁) cyclShift (𝑀𝑁)))
26 simpl 487 . . . . . . . . . 10 ((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) → 𝑊 ∈ Word 𝑉)
2726adantr 485 . . . . . . . . 9 (((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) → 𝑊 ∈ Word 𝑉)
28 simpl 487 . . . . . . . . . 10 ((𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ) → 𝑁 ∈ ℤ)
2928adantl 486 . . . . . . . . 9 (((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) → 𝑁 ∈ ℤ)
3027, 29, 53jca 1145 . . . . . . . 8 (((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) → (𝑊 ∈ Word 𝑉𝑁 ∈ ℤ ∧ (𝑀𝑁) ∈ ℤ))
3130adantr 485 . . . . . . 7 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (𝑊 ∈ Word 𝑉𝑁 ∈ ℤ ∧ (𝑀𝑁) ∈ ℤ))
32 2cshw 14857 . . . . . . 7 ((𝑊 ∈ Word 𝑉𝑁 ∈ ℤ ∧ (𝑀𝑁) ∈ ℤ) → ((𝑊 cyclShift 𝑁) cyclShift (𝑀𝑁)) = (𝑊 cyclShift (𝑁 + (𝑀𝑁))))
3331, 32syl 18 . . . . . 6 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → ((𝑊 cyclShift 𝑁) cyclShift (𝑀𝑁)) = (𝑊 cyclShift (𝑁 + (𝑀𝑁))))
34 zcn 12602 . . . . . . . . . . 11 (𝑁 ∈ ℤ → 𝑁 ∈ ℂ)
35 zcn 12602 . . . . . . . . . . 11 (𝑀 ∈ ℤ → 𝑀 ∈ ℂ)
3634, 35anim12i 624 . . . . . . . . . 10 ((𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ) → (𝑁 ∈ ℂ ∧ 𝑀 ∈ ℂ))
3736adantl 486 . . . . . . . . 9 (((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) → (𝑁 ∈ ℂ ∧ 𝑀 ∈ ℂ))
3837adantr 485 . . . . . . . 8 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (𝑁 ∈ ℂ ∧ 𝑀 ∈ ℂ))
39 pncan3 11471 . . . . . . . 8 ((𝑁 ∈ ℂ ∧ 𝑀 ∈ ℂ) → (𝑁 + (𝑀𝑁)) = 𝑀)
4038, 39syl 18 . . . . . . 7 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (𝑁 + (𝑀𝑁)) = 𝑀)
4140oveq2d 7428 . . . . . 6 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (𝑊 cyclShift (𝑁 + (𝑀𝑁))) = (𝑊 cyclShift 𝑀))
4225, 33, 413eqtrd 2801 . . . . 5 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → ((𝑈 cyclShift 𝑀) cyclShift (𝑀𝑁)) = (𝑊 cyclShift 𝑀))
4342oveq1d 7427 . . . 4 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (((𝑈 cyclShift 𝑀) cyclShift (𝑀𝑁)) cyclShift ((♯‘𝑊) − 𝑀)) = ((𝑊 cyclShift 𝑀) cyclShift ((♯‘𝑊) − 𝑀)))
44 lencl 14577 . . . . . . . . . 10 (𝑊 ∈ Word 𝑉 → (♯‘𝑊) ∈ ℕ0)
4544nn0zd 12622 . . . . . . . . 9 (𝑊 ∈ Word 𝑉 → (♯‘𝑊) ∈ ℤ)
4645adantr 485 . . . . . . . 8 ((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) → (♯‘𝑊) ∈ ℤ)
47 zsubcl 12642 . . . . . . . 8 (((♯‘𝑊) ∈ ℤ ∧ 𝑀 ∈ ℤ) → ((♯‘𝑊) − 𝑀) ∈ ℤ)
4846, 6, 47syl2an 607 . . . . . . 7 (((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) → ((♯‘𝑊) − 𝑀) ∈ ℤ)
4927, 7, 483jca 1145 . . . . . 6 (((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) → (𝑊 ∈ Word 𝑉𝑀 ∈ ℤ ∧ ((♯‘𝑊) − 𝑀) ∈ ℤ))
5049adantr 485 . . . . 5 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (𝑊 ∈ Word 𝑉𝑀 ∈ ℤ ∧ ((♯‘𝑊) − 𝑀) ∈ ℤ))
51 2cshw 14857 . . . . 5 ((𝑊 ∈ Word 𝑉𝑀 ∈ ℤ ∧ ((♯‘𝑊) − 𝑀) ∈ ℤ) → ((𝑊 cyclShift 𝑀) cyclShift ((♯‘𝑊) − 𝑀)) = (𝑊 cyclShift (𝑀 + ((♯‘𝑊) − 𝑀))))
5250, 51syl 18 . . . 4 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → ((𝑊 cyclShift 𝑀) cyclShift ((♯‘𝑊) − 𝑀)) = (𝑊 cyclShift (𝑀 + ((♯‘𝑊) − 𝑀))))
5324, 43, 523eqtrd 2801 . . 3 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (𝑈 cyclShift (𝑀𝑁)) = (𝑊 cyclShift (𝑀 + ((♯‘𝑊) − 𝑀))))
5444nn0cnd 12573 . . . . . . . . 9 (𝑊 ∈ Word 𝑉 → (♯‘𝑊) ∈ ℂ)
5554adantr 485 . . . . . . . 8 ((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) → (♯‘𝑊) ∈ ℂ)
5635adantl 486 . . . . . . . 8 ((𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ) → 𝑀 ∈ ℂ)
5755, 56anim12i 624 . . . . . . 7 (((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) → ((♯‘𝑊) ∈ ℂ ∧ 𝑀 ∈ ℂ))
5857ancomd 466 . . . . . 6 (((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) → (𝑀 ∈ ℂ ∧ (♯‘𝑊) ∈ ℂ))
5958adantr 485 . . . . 5 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (𝑀 ∈ ℂ ∧ (♯‘𝑊) ∈ ℂ))
60 pncan3 11471 . . . . 5 ((𝑀 ∈ ℂ ∧ (♯‘𝑊) ∈ ℂ) → (𝑀 + ((♯‘𝑊) − 𝑀)) = (♯‘𝑊))
6159, 60syl 18 . . . 4 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (𝑀 + ((♯‘𝑊) − 𝑀)) = (♯‘𝑊))
6261oveq2d 7428 . . 3 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (𝑊 cyclShift (𝑀 + ((♯‘𝑊) − 𝑀))) = (𝑊 cyclShift (♯‘𝑊)))
63 cshwn 14841 . . . . 5 (𝑊 ∈ Word 𝑉 → (𝑊 cyclShift (♯‘𝑊)) = 𝑊)
6427, 63syl 18 . . . 4 (((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) → (𝑊 cyclShift (♯‘𝑊)) = 𝑊)
6564adantr 485 . . 3 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (𝑊 cyclShift (♯‘𝑊)) = 𝑊)
6653, 62, 653eqtrd 2801 . 2 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (𝑈 cyclShift (𝑀𝑁)) = 𝑊)
6766ex 417 1 (((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) → ((𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀) → (𝑈 cyclShift (𝑀𝑁)) = 𝑊))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wa 400  w3a 1102   = wceq 1569  wcel 2142  cfv 6536  (class class class)co 7412  cc 11104   + caddc 11109  cmin 11447  cz 12597  chash 14373  Word cword 14557   cyclShift ccsh 14832
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1824  ax-4 1838  ax-5 1939  ax-6 1996  ax-7 2037  ax-8 2144  ax-9 2152  ax-10 2175  ax-11 2191  ax-12 2212  ax-ext 2734  ax-rep 5237  ax-sep 5256  ax-nul 5268  ax-pow 5335  ax-pr 5403  ax-un 7734  ax-cnex 11162  ax-resscn 11163  ax-1cn 11164  ax-icn 11165  ax-addcl 11166  ax-addrcl 11167  ax-mulcl 11168  ax-mulrcl 11169  ax-mulcom 11170  ax-addass 11171  ax-mulass 11172  ax-distr 11173  ax-i2m1 11174  ax-1ne0 11175  ax-1rid 11176  ax-rnegex 11177  ax-rrecex 11178  ax-cnre 11179  ax-pre-lttri 11180  ax-pre-lttrn 11181  ax-pre-ltadd 11182  ax-pre-mulgt0 11183  ax-pre-sup 11184
This proof depends on definitions:  df-bi 210  df-an 401  df-or 861  df-3or 1103  df-3an 1104  df-tru 1572  df-fal 1582  df-ex 1809  df-nf 1813  df-sb 2096  df-mo 2566  df-eu 2596  df-clab 2741  df-cleq 2754  df-clel 2837  df-nfc 2911  df-ne 2958  df-nel 3064  df-ral 3079  df-rex 3089  df-rmo 3368  df-reu 3369  df-rab 3416  df-v 3456  df-sbc 3744  df-csb 3853  df-dif 3907  df-un 3909  df-in 3911  df-ss 3921  df-pss 3924  df-nul 4286  df-if 4487  df-pw 4563  df-sn 4589  df-pr 4591  df-op 4595  df-uni 4872  df-int 4912  df-iun 4957  df-br 5109  df-opab 5173  df-mpt 5192  df-tr 5218  df-id 5555  df-eprel 5560  df-po 5568  df-so 5569  df-fr 5613  df-we 5615  df-xp 5666  df-rel 5667  df-cnv 5668  df-co 5669  df-dm 5670  df-rn 5671  df-res 5672  df-ima 5673  df-pred 6302  df-ord 6363  df-on 6364  df-lim 6365  df-suc 6366  df-iota 6492  df-fun 6538  df-fn 6539  df-f 6540  df-f1 6541  df-fo 6542  df-f1o 6543  df-fv 6544  df-riota 7369  df-ov 7415  df-oprab 7416  df-mpo 7417  df-om 7861  df-1st 7984  df-2nd 7985  df-frecs 8276  df-wrecs 8307  df-recs 8356  df-rdg 8395  df-1o 8451  df-er 8692  df-en 8942  df-dom 8943  df-sdom 8944  df-fin 8945  df-sup 9400  df-inf 9401  df-card 9932  df-pnf 11251  df-mnf 11252  df-xr 11253  df-ltxr 11254  df-le 11255  df-sub 11449  df-neg 11450  df-div 11878  df-nn 12240  df-2 12309  df-n0 12511  df-z 12598  df-uz 12869  df-rp 13023  df-fz 13542  df-fzo 13690  df-fl 13832  df-mod 13910  df-hash 14374  df-word 14558  df-concat 14615  df-substr 14686  df-pfx 14716  df-csh 14833
This theorem is used by:  cshweqdifid  14864
  Copyright terms: Public domain W3C validator