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

Theorem cshweqdif2 14937
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 490 . . . . . . . . 9 ((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) → 𝑈 ∈ Word 𝑉)
21adantr 486 . . . . . . . 8 (((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) → 𝑈 ∈ Word 𝑉)
3 zsubcl 12707 . . . . . . . . . 10 ((𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) → (𝑀𝑁) ∈ ℤ)
43ancoms 464 . . . . . . . . 9 ((𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ) → (𝑀𝑁) ∈ ℤ)
54adantl 487 . . . . . . . 8 (((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) → (𝑀𝑁) ∈ ℤ)
6 simpr 490 . . . . . . . . 9 ((𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ) → 𝑀 ∈ ℤ)
76adantl 487 . . . . . . . 8 (((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) → 𝑀 ∈ ℤ)
82, 5, 73jca 1146 . . . . . . 7 (((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) → (𝑈 ∈ Word 𝑉 ∧ (𝑀𝑁) ∈ ℤ ∧ 𝑀 ∈ ℤ))
98adantr 486 . . . . . 6 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (𝑈 ∈ Word 𝑉 ∧ (𝑀𝑁) ∈ ℤ ∧ 𝑀 ∈ ℤ))
10 3cshw 14936 . . . . . 6 ((𝑈 ∈ Word 𝑉 ∧ (𝑀𝑁) ∈ ℤ ∧ 𝑀 ∈ ℤ) → (𝑈 cyclShift (𝑀𝑁)) = (((𝑈 cyclShift 𝑀) cyclShift (𝑀𝑁)) cyclShift ((♯‘𝑈) − 𝑀)))
119, 10syl 18 . . . . 5 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (𝑈 cyclShift (𝑀𝑁)) = (((𝑈 cyclShift 𝑀) cyclShift (𝑀𝑁)) cyclShift ((♯‘𝑈) − 𝑀)))
12 simpl 488 . . . . . . . . . 10 (((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) → (𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉))
1312ancomd 467 . . . . . . . . 9 (((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) → (𝑈 ∈ Word 𝑉𝑊 ∈ Word 𝑉))
1413adantr 486 . . . . . . . 8 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (𝑈 ∈ Word 𝑉𝑊 ∈ Word 𝑉))
15 simpr 490 . . . . . . . . . 10 (((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) → (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ))
1615ancomd 467 . . . . . . . . 9 (((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) → (𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ))
1716adantr 486 . . . . . . . 8 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ))
18 simpr 490 . . . . . . . . 9 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀))
1918eqcomd 2766 . . . . . . . 8 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (𝑈 cyclShift 𝑀) = (𝑊 cyclShift 𝑁))
20 cshwleneq 14935 . . . . . . . 8 (((𝑈 ∈ Word 𝑉𝑊 ∈ Word 𝑉) ∧ (𝑀 ∈ ℤ ∧ 𝑁 ∈ ℤ) ∧ (𝑈 cyclShift 𝑀) = (𝑊 cyclShift 𝑁)) → (♯‘𝑈) = (♯‘𝑊))
2114, 17, 19, 20syl3anc 1398 . . . . . . 7 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (♯‘𝑈) = (♯‘𝑊))
2221oveq1d 7423 . . . . . 6 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → ((♯‘𝑈) − 𝑀) = ((♯‘𝑊) − 𝑀))
2322oveq2d 7424 . . . . 5 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (((𝑈 cyclShift 𝑀) cyclShift (𝑀𝑁)) cyclShift ((♯‘𝑈) − 𝑀)) = (((𝑈 cyclShift 𝑀) cyclShift (𝑀𝑁)) cyclShift ((♯‘𝑊) − 𝑀)))
2411, 23eqtrd 2795 . . . 4 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (𝑈 cyclShift (𝑀𝑁)) = (((𝑈 cyclShift 𝑀) cyclShift (𝑀𝑁)) cyclShift ((♯‘𝑊) − 𝑀)))
2519oveq1d 7423 . . . . . 6 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → ((𝑈 cyclShift 𝑀) cyclShift (𝑀𝑁)) = ((𝑊 cyclShift 𝑁) cyclShift (𝑀𝑁)))
26 simpl 488 . . . . . . . . . 10 ((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) → 𝑊 ∈ Word 𝑉)
2726adantr 486 . . . . . . . . 9 (((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) → 𝑊 ∈ Word 𝑉)
28 simpl 488 . . . . . . . . . 10 ((𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ) → 𝑁 ∈ ℤ)
2928adantl 487 . . . . . . . . 9 (((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) → 𝑁 ∈ ℤ)
3027, 29, 53jca 1146 . . . . . . . 8 (((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) → (𝑊 ∈ Word 𝑉𝑁 ∈ ℤ ∧ (𝑀𝑁) ∈ ℤ))
3130adantr 486 . . . . . . 7 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (𝑊 ∈ Word 𝑉𝑁 ∈ ℤ ∧ (𝑀𝑁) ∈ ℤ))
32 2cshw 14931 . . . . . . 7 ((𝑊 ∈ Word 𝑉𝑁 ∈ ℤ ∧ (𝑀𝑁) ∈ ℤ) → ((𝑊 cyclShift 𝑁) cyclShift (𝑀𝑁)) = (𝑊 cyclShift (𝑁 + (𝑀𝑁))))
3331, 32syl 18 . . . . . 6 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → ((𝑊 cyclShift 𝑁) cyclShift (𝑀𝑁)) = (𝑊 cyclShift (𝑁 + (𝑀𝑁))))
34 zcn 12667 . . . . . . . . . . 11 (𝑁 ∈ ℤ → 𝑁 ∈ ℂ)
35 zcn 12667 . . . . . . . . . . 11 (𝑀 ∈ ℤ → 𝑀 ∈ ℂ)
3634, 35anim12i 625 . . . . . . . . . 10 ((𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ) → (𝑁 ∈ ℂ ∧ 𝑀 ∈ ℂ))
3736adantl 487 . . . . . . . . 9 (((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) → (𝑁 ∈ ℂ ∧ 𝑀 ∈ ℂ))
3837adantr 486 . . . . . . . 8 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (𝑁 ∈ ℂ ∧ 𝑀 ∈ ℂ))
39 pncan3 11536 . . . . . . . 8 ((𝑁 ∈ ℂ ∧ 𝑀 ∈ ℂ) → (𝑁 + (𝑀𝑁)) = 𝑀)
4038, 39syl 18 . . . . . . 7 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (𝑁 + (𝑀𝑁)) = 𝑀)
4140oveq2d 7424 . . . . . 6 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (𝑊 cyclShift (𝑁 + (𝑀𝑁))) = (𝑊 cyclShift 𝑀))
4225, 33, 413eqtrd 2799 . . . . 5 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → ((𝑈 cyclShift 𝑀) cyclShift (𝑀𝑁)) = (𝑊 cyclShift 𝑀))
4342oveq1d 7423 . . . 4 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (((𝑈 cyclShift 𝑀) cyclShift (𝑀𝑁)) cyclShift ((♯‘𝑊) − 𝑀)) = ((𝑊 cyclShift 𝑀) cyclShift ((♯‘𝑊) − 𝑀)))
44 lencl 14645 . . . . . . . . . 10 (𝑊 ∈ Word 𝑉 → (♯‘𝑊) ∈ ℕ0)
4544nn0zd 12687 . . . . . . . . 9 (𝑊 ∈ Word 𝑉 → (♯‘𝑊) ∈ ℤ)
4645adantr 486 . . . . . . . 8 ((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) → (♯‘𝑊) ∈ ℤ)
47 zsubcl 12707 . . . . . . . 8 (((♯‘𝑊) ∈ ℤ ∧ 𝑀 ∈ ℤ) → ((♯‘𝑊) − 𝑀) ∈ ℤ)
4846, 6, 47syl2an 608 . . . . . . 7 (((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) → ((♯‘𝑊) − 𝑀) ∈ ℤ)
4927, 7, 483jca 1146 . . . . . 6 (((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) → (𝑊 ∈ Word 𝑉𝑀 ∈ ℤ ∧ ((♯‘𝑊) − 𝑀) ∈ ℤ))
5049adantr 486 . . . . 5 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (𝑊 ∈ Word 𝑉𝑀 ∈ ℤ ∧ ((♯‘𝑊) − 𝑀) ∈ ℤ))
51 2cshw 14931 . . . . 5 ((𝑊 ∈ Word 𝑉𝑀 ∈ ℤ ∧ ((♯‘𝑊) − 𝑀) ∈ ℤ) → ((𝑊 cyclShift 𝑀) cyclShift ((♯‘𝑊) − 𝑀)) = (𝑊 cyclShift (𝑀 + ((♯‘𝑊) − 𝑀))))
5250, 51syl 18 . . . 4 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → ((𝑊 cyclShift 𝑀) cyclShift ((♯‘𝑊) − 𝑀)) = (𝑊 cyclShift (𝑀 + ((♯‘𝑊) − 𝑀))))
5324, 43, 523eqtrd 2799 . . 3 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (𝑈 cyclShift (𝑀𝑁)) = (𝑊 cyclShift (𝑀 + ((♯‘𝑊) − 𝑀))))
5444nn0cnd 12638 . . . . . . . . 9 (𝑊 ∈ Word 𝑉 → (♯‘𝑊) ∈ ℂ)
5554adantr 486 . . . . . . . 8 ((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) → (♯‘𝑊) ∈ ℂ)
5635adantl 487 . . . . . . . 8 ((𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ) → 𝑀 ∈ ℂ)
5755, 56anim12i 625 . . . . . . 7 (((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) → ((♯‘𝑊) ∈ ℂ ∧ 𝑀 ∈ ℂ))
5857ancomd 467 . . . . . 6 (((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) → (𝑀 ∈ ℂ ∧ (♯‘𝑊) ∈ ℂ))
5958adantr 486 . . . . 5 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (𝑀 ∈ ℂ ∧ (♯‘𝑊) ∈ ℂ))
60 pncan3 11536 . . . . 5 ((𝑀 ∈ ℂ ∧ (♯‘𝑊) ∈ ℂ) → (𝑀 + ((♯‘𝑊) − 𝑀)) = (♯‘𝑊))
6159, 60syl 18 . . . 4 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (𝑀 + ((♯‘𝑊) − 𝑀)) = (♯‘𝑊))
6261oveq2d 7424 . . 3 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (𝑊 cyclShift (𝑀 + ((♯‘𝑊) − 𝑀))) = (𝑊 cyclShift (♯‘𝑊)))
63 cshwn 14915 . . . . 5 (𝑊 ∈ Word 𝑉 → (𝑊 cyclShift (♯‘𝑊)) = 𝑊)
6427, 63syl 18 . . . 4 (((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) → (𝑊 cyclShift (♯‘𝑊)) = 𝑊)
6564adantr 486 . . 3 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (𝑊 cyclShift (♯‘𝑊)) = 𝑊)
6653, 62, 653eqtrd 2799 . 2 ((((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) ∧ (𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀)) → (𝑈 cyclShift (𝑀𝑁)) = 𝑊)
6766ex 418 1 (((𝑊 ∈ Word 𝑉𝑈 ∈ Word 𝑉) ∧ (𝑁 ∈ ℤ ∧ 𝑀 ∈ ℤ)) → ((𝑊 cyclShift 𝑁) = (𝑈 cyclShift 𝑀) → (𝑈 cyclShift (𝑀𝑁)) = 𝑊))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wa 401  w3a 1103   = wceq 1570  wcel 2145  cfv 6527  (class class class)co 7408  cc 11169   + caddc 11174  cmin 11512  cz 12662  chash 14441  Word cword 14625   cyclShift ccsh 14906
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2213  ax-ext 2732  ax-rep 5231  ax-sep 5248  ax-nul 5259  ax-pow 5326  ax-pr 5390  ax-un 7734  ax-cnex 11227  ax-resscn 11228  ax-1cn 11229  ax-icn 11230  ax-addcl 11231  ax-addrcl 11232  ax-mulcl 11233  ax-mulrcl 11234  ax-mulcom 11235  ax-addass 11236  ax-mulass 11237  ax-distr 11238  ax-i2m1 11239  ax-1ne0 11240  ax-1rid 11241  ax-rnegex 11242  ax-rrecex 11243  ax-cnre 11244  ax-pre-lttri 11245  ax-pre-lttrn 11246  ax-pre-ltadd 11247  ax-pre-mulgt0 11248  ax-pre-sup 11249
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2564  df-eu 2594  df-clab 2739  df-cleq 2752  df-clel 2835  df-nfc 2909  df-ne 2956  df-nel 3062  df-ral 3077  df-rex 3087  df-rmo 3365  df-reu 3366  df-rab 3413  df-v 3452  df-sbc 3739  df-csb 3847  df-dif 3901  df-un 3903  df-in 3905  df-ss 3915  df-pss 3918  df-nul 4279  df-if 4482  df-pw 4558  df-sn 4584  df-pr 4586  df-op 4590  df-uni 4867  df-int 4907  df-iun 4952  df-br 5103  df-opab 5167  df-mpt 5186  df-tr 5212  df-id 5542  df-eprel 5547  df-po 5555  df-so 5556  df-fr 5600  df-we 5602  df-xp 5653  df-rel 5654  df-cnv 5655  df-co 5656  df-dm 5657  df-rn 5658  df-res 5659  df-ima 5660  df-pred 6293  df-ord 6354  df-on 6355  df-lim 6356  df-suc 6357  df-iota 6483  df-fun 6529  df-fn 6530  df-f 6531  df-f1 6532  df-fo 6533  df-f1o 6534  df-fv 6535  df-riota 7365  df-ov 7411  df-oprab 7412  df-mpo 7413  df-om 7861  df-1st 7984  df-2nd 7985  df-frecs 8277  df-wrecs 8308  df-recs 8357  df-rdg 8396  df-1o 8454  df-er 8695  df-en 8952  df-dom 8953  df-sdom 8954  df-fin 8955  df-sup 9412  df-inf 9413  df-card 9991  df-pnf 11316  df-mnf 11317  df-xr 11318  df-ltxr 11319  df-le 11320  df-sub 11514  df-neg 11515  df-div 11943  df-nn 12305  df-2 12374  df-n0 12576  df-z 12663  df-uz 12935  df-rp 13090  df-fz 13609  df-fzo 13757  df-fl 13900  df-mod 13978  df-hash 14442  df-word 14626  df-concat 14683  df-substr 14756  df-pfx 14788  df-csh 14907
This theorem is used by:  cshweqdifid  14938
  Copyright terms: Public domain W3C validator