"foo".length + "bar".length == ("foo" + "bar").length
, , length . , , , .
length , , "".length = 0 x.length ⊕ y.length = (x ⊗ y).length. , , length vs length, , , , + .
: , .
, , (A, ⊕, a) (B, ⊗, b), A B - , ⊕: A × A → A ⊗: B × B → B - , a ∈ A b ∈ B - . f: A → B :
- f (a) = b, .. f A, B
- f (x ⊕ y) = f (x) ⊗ f (y), .. f A , , , A , B.
, ( , homomorphism: , , " " ).
, , !
- :
length (A, ·, ε) * to (ℕ, +, 0) - - (Bool, ∨, false) (Bool, ∧, true) .
- exp - (ℝ, +, 0) (ℝ\{0}, *, 1)
- , , , .