| Metamath
Proof Explorer Theorem List (p. 146 of 504) | < Previous Next > | |
| Bad symbols? Try the
GIF version. |
||
|
Mirrors > Metamath Home Page > MPE Home Page > Theorem List Contents > Recent Proofs This page: Page List |
||
| Color key: | (1-31077) |
(31078-32600) |
(32601-50386) |
| Type | Label | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Statement | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | hash3tpb 14501* | A set of size three is a proper unordered triple. (Contributed by AV, 21-Jul-2025.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ (𝑉 ∈ 𝑊 → ((♯‘𝑉) = 3 ↔ ∃𝑎 ∈ 𝑉 ∃𝑏 ∈ 𝑉 ∃𝑐 ∈ 𝑉 ((𝑎 ≠ 𝑏 ∧ 𝑎 ≠ 𝑐 ∧ 𝑏 ≠ 𝑐) ∧ 𝑉 = {𝑎, 𝑏, 𝑐}))) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | tpf1ofv0 14502* | The value of a one-to-one function onto a triple at 0. (Contributed by AV, 20-Jul-2025.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ 𝐹 = (𝑥 ∈ (0..^3) ↦ if(𝑥 = 0, 𝐴, if(𝑥 = 1, 𝐵, 𝐶))) ⇒ ⊢ (𝐴 ∈ 𝑉 → (𝐹‘0) = 𝐴) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | tpf1ofv1 14503* | The value of a one-to-one function onto a triple at 1. (Contributed by AV, 20-Jul-2025.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ 𝐹 = (𝑥 ∈ (0..^3) ↦ if(𝑥 = 0, 𝐴, if(𝑥 = 1, 𝐵, 𝐶))) ⇒ ⊢ (𝐵 ∈ 𝑉 → (𝐹‘1) = 𝐵) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | tpf1ofv2 14504* | The value of a one-to-one function onto a triple at 2. (Contributed by AV, 20-Jul-2025.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ 𝐹 = (𝑥 ∈ (0..^3) ↦ if(𝑥 = 0, 𝐴, if(𝑥 = 1, 𝐵, 𝐶))) ⇒ ⊢ (𝐶 ∈ 𝑉 → (𝐹‘2) = 𝐶) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | tpf 14505* | A function into a (proper) triple. (Contributed by AV, 20-Jul-2025.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ 𝐹 = (𝑥 ∈ (0..^3) ↦ if(𝑥 = 0, 𝐴, if(𝑥 = 1, 𝐵, 𝐶))) & ⊢ 𝑇 = {𝐴, 𝐵, 𝐶} ⇒ ⊢ ((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑉 ∧ 𝐶 ∈ 𝑉) → 𝐹:(0..^3)⟶𝑇) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | tpfo 14506* | A function onto a (proper) triple. (Contributed by AV, 20-Jul-2025.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ 𝐹 = (𝑥 ∈ (0..^3) ↦ if(𝑥 = 0, 𝐴, if(𝑥 = 1, 𝐵, 𝐶))) & ⊢ 𝑇 = {𝐴, 𝐵, 𝐶} ⇒ ⊢ ((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑉 ∧ 𝐶 ∈ 𝑉) → 𝐹:(0..^3)–onto→𝑇) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | tpf1o 14507* | A bijection onto a (proper) triple. (Contributed by AV, 21-Jul-2025.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ 𝐹 = (𝑥 ∈ (0..^3) ↦ if(𝑥 = 0, 𝐴, if(𝑥 = 1, 𝐵, 𝐶))) & ⊢ 𝑇 = {𝐴, 𝐵, 𝐶} ⇒ ⊢ (((𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑉 ∧ 𝐶 ∈ 𝑉) ∧ (♯‘𝑇) = 3) → 𝐹:(0..^3)–1-1-onto→𝑇) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | fundmge2nop0 14508 | A function with a domain containing (at least) two different elements is not an ordered pair. This stronger version of fundmge2nop 14509 (with the less restrictive requirement that (𝐺 ∖ {∅}) needs to be a function instead of 𝐺) is useful for proofs for extensible structures, see structn0fun 17177. (Contributed by AV, 12-Oct-2020.) (Revised by AV, 7-Jun-2021.) (Proof shortened by AV, 15-Nov-2021.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((Fun (𝐺 ∖ {∅}) ∧ 2 ≤ (♯‘dom 𝐺)) → ¬ 𝐺 ∈ (V × V)) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | fundmge2nop 14509 | A function with a domain containing (at least) two different elements is not an ordered pair. (Contributed by AV, 12-Oct-2020.) (Proof shortened by AV, 9-Jun-2021.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((Fun 𝐺 ∧ 2 ≤ (♯‘dom 𝐺)) → ¬ 𝐺 ∈ (V × V)) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | fun2dmnop0 14510 | A function with a domain containing (at least) two different elements is not an ordered pair. This stronger version of fun2dmnop 14511 (with the less restrictive requirement that (𝐺 ∖ {∅}) needs to be a function instead of 𝐺) is useful for proofs for extensible structures, see structn0fun 17177. (Contributed by AV, 21-Sep-2020.) (Revised by AV, 7-Jun-2021.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ 𝐴 ∈ V & ⊢ 𝐵 ∈ V ⇒ ⊢ ((Fun (𝐺 ∖ {∅}) ∧ 𝐴 ≠ 𝐵 ∧ {𝐴, 𝐵} ⊆ dom 𝐺) → ¬ 𝐺 ∈ (V × V)) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | fun2dmnop 14511 | A function with a domain containing (at least) two different elements is not an ordered pair. (Contributed by AV, 21-Sep-2020.) (Proof shortened by AV, 9-Jun-2021.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ 𝐴 ∈ V & ⊢ 𝐵 ∈ V ⇒ ⊢ ((Fun 𝐺 ∧ 𝐴 ≠ 𝐵 ∧ {𝐴, 𝐵} ⊆ dom 𝐺) → ¬ 𝐺 ∈ (V × V)) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | hashdifsnp1 14512 | If the size of a set is a nonnegative integer increased by 1, the size of the set with one of its elements removed is this nonnegative integer. (Contributed by Alexander van der Vekens, 7-Jan-2018.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((𝑉 ∈ 𝑊 ∧ 𝑁 ∈ 𝑉 ∧ 𝑌 ∈ ℕ0) → ((♯‘𝑉) = (𝑌 + 1) → (♯‘(𝑉 ∖ {𝑁})) = 𝑌)) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | fi1uzind 14513* | Properties of an ordered pair with a finite first component with at least L elements, proven by finite induction on the size of the first component. This theorem can be applied for graphs (represented as ordered pairs of vertices and edges) with a finite number of vertices, usually with 𝐿 = 0 (see opfi1ind 14518) or 𝐿 = 1. (Contributed by AV, 22-Oct-2020.) (Revised by AV, 28-Mar-2021.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ 𝐹 ∈ V & ⊢ 𝐿 ∈ ℕ0 & ⊢ ((𝑣 = 𝑉 ∧ 𝑒 = 𝐸) → (𝜓 ↔ 𝜑)) & ⊢ ((𝑣 = 𝑤 ∧ 𝑒 = 𝑓) → (𝜓 ↔ 𝜃)) & ⊢ (([𝑣 / 𝑎][𝑒 / 𝑏]𝜌 ∧ 𝑛 ∈ 𝑣) → [(𝑣 ∖ {𝑛}) / 𝑎][𝐹 / 𝑏]𝜌) & ⊢ ((𝑤 = (𝑣 ∖ {𝑛}) ∧ 𝑓 = 𝐹) → (𝜃 ↔ 𝜒)) & ⊢ (([𝑣 / 𝑎][𝑒 / 𝑏]𝜌 ∧ (♯‘𝑣) = 𝐿) → 𝜓) & ⊢ ((((𝑦 + 1) ∈ ℕ0 ∧ ([𝑣 / 𝑎][𝑒 / 𝑏]𝜌 ∧ (♯‘𝑣) = (𝑦 + 1) ∧ 𝑛 ∈ 𝑣)) ∧ 𝜒) → 𝜓) ⇒ ⊢ (([𝑉 / 𝑎][𝐸 / 𝑏]𝜌 ∧ 𝑉 ∈ Fin ∧ 𝐿 ≤ (♯‘𝑉)) → 𝜑) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | brfi1uzind 14514* | Properties of a binary relation with a finite first component with at least L elements, proven by finite induction on the size of the first component. This theorem can be applied for graphs (as binary relation between the set of vertices and an edge function) with a finite number of vertices, usually with 𝐿 = 0 (see brfi1ind 14515) or 𝐿 = 1. (Contributed by Alexander van der Vekens, 7-Jan-2018.) (Proof shortened by AV, 23-Oct-2020.) (Revised by AV, 28-Mar-2021.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ Rel 𝐺 & ⊢ 𝐹 ∈ V & ⊢ 𝐿 ∈ ℕ0 & ⊢ ((𝑣 = 𝑉 ∧ 𝑒 = 𝐸) → (𝜓 ↔ 𝜑)) & ⊢ ((𝑣 = 𝑤 ∧ 𝑒 = 𝑓) → (𝜓 ↔ 𝜃)) & ⊢ ((𝑣𝐺𝑒 ∧ 𝑛 ∈ 𝑣) → (𝑣 ∖ {𝑛})𝐺𝐹) & ⊢ ((𝑤 = (𝑣 ∖ {𝑛}) ∧ 𝑓 = 𝐹) → (𝜃 ↔ 𝜒)) & ⊢ ((𝑣𝐺𝑒 ∧ (♯‘𝑣) = 𝐿) → 𝜓) & ⊢ ((((𝑦 + 1) ∈ ℕ0 ∧ (𝑣𝐺𝑒 ∧ (♯‘𝑣) = (𝑦 + 1) ∧ 𝑛 ∈ 𝑣)) ∧ 𝜒) → 𝜓) ⇒ ⊢ ((𝑉𝐺𝐸 ∧ 𝑉 ∈ Fin ∧ 𝐿 ≤ (♯‘𝑉)) → 𝜑) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | brfi1ind 14515* | Properties of a binary relation with a finite first component, proven by finite induction on the size of the first component. (Contributed by Alexander van der Vekens, 7-Jan-2018.) (Revised by AV, 28-Mar-2021.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ Rel 𝐺 & ⊢ 𝐹 ∈ V & ⊢ ((𝑣 = 𝑉 ∧ 𝑒 = 𝐸) → (𝜓 ↔ 𝜑)) & ⊢ ((𝑣 = 𝑤 ∧ 𝑒 = 𝑓) → (𝜓 ↔ 𝜃)) & ⊢ ((𝑣𝐺𝑒 ∧ 𝑛 ∈ 𝑣) → (𝑣 ∖ {𝑛})𝐺𝐹) & ⊢ ((𝑤 = (𝑣 ∖ {𝑛}) ∧ 𝑓 = 𝐹) → (𝜃 ↔ 𝜒)) & ⊢ ((𝑣𝐺𝑒 ∧ (♯‘𝑣) = 0) → 𝜓) & ⊢ ((((𝑦 + 1) ∈ ℕ0 ∧ (𝑣𝐺𝑒 ∧ (♯‘𝑣) = (𝑦 + 1) ∧ 𝑛 ∈ 𝑣)) ∧ 𝜒) → 𝜓) ⇒ ⊢ ((𝑉𝐺𝐸 ∧ 𝑉 ∈ Fin) → 𝜑) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | brfi1indALT 14516* | Alternate proof of brfi1ind 14515, which does not use brfi1uzind 14514. (Contributed by Alexander van der Vekens, 7-Jan-2018.) (New usage is discouraged.) (Proof modification is discouraged.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ Rel 𝐺 & ⊢ 𝐹 ∈ V & ⊢ ((𝑣 = 𝑉 ∧ 𝑒 = 𝐸) → (𝜓 ↔ 𝜑)) & ⊢ ((𝑣 = 𝑤 ∧ 𝑒 = 𝑓) → (𝜓 ↔ 𝜃)) & ⊢ ((𝑣𝐺𝑒 ∧ 𝑛 ∈ 𝑣) → (𝑣 ∖ {𝑛})𝐺𝐹) & ⊢ ((𝑤 = (𝑣 ∖ {𝑛}) ∧ 𝑓 = 𝐹) → (𝜃 ↔ 𝜒)) & ⊢ ((𝑣𝐺𝑒 ∧ (♯‘𝑣) = 0) → 𝜓) & ⊢ ((((𝑦 + 1) ∈ ℕ0 ∧ (𝑣𝐺𝑒 ∧ (♯‘𝑣) = (𝑦 + 1) ∧ 𝑛 ∈ 𝑣)) ∧ 𝜒) → 𝜓) ⇒ ⊢ ((𝑉𝐺𝐸 ∧ 𝑉 ∈ Fin) → 𝜑) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | opfi1uzind 14517* | Properties of an ordered pair with a finite first component with at least L elements, proven by finite induction on the size of the first component. This theorem can be applied for graphs (represented as ordered pairs of vertices and edges) with a finite number of vertices, usually with 𝐿 = 0 (see opfi1ind 14518) or 𝐿 = 1. (Contributed by AV, 22-Oct-2020.) (Revised by AV, 28-Mar-2021.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ 𝐸 ∈ V & ⊢ 𝐹 ∈ V & ⊢ 𝐿 ∈ ℕ0 & ⊢ ((𝑣 = 𝑉 ∧ 𝑒 = 𝐸) → (𝜓 ↔ 𝜑)) & ⊢ ((𝑣 = 𝑤 ∧ 𝑒 = 𝑓) → (𝜓 ↔ 𝜃)) & ⊢ ((〈𝑣, 𝑒〉 ∈ 𝐺 ∧ 𝑛 ∈ 𝑣) → 〈(𝑣 ∖ {𝑛}), 𝐹〉 ∈ 𝐺) & ⊢ ((𝑤 = (𝑣 ∖ {𝑛}) ∧ 𝑓 = 𝐹) → (𝜃 ↔ 𝜒)) & ⊢ ((〈𝑣, 𝑒〉 ∈ 𝐺 ∧ (♯‘𝑣) = 𝐿) → 𝜓) & ⊢ ((((𝑦 + 1) ∈ ℕ0 ∧ (〈𝑣, 𝑒〉 ∈ 𝐺 ∧ (♯‘𝑣) = (𝑦 + 1) ∧ 𝑛 ∈ 𝑣)) ∧ 𝜒) → 𝜓) ⇒ ⊢ ((〈𝑉, 𝐸〉 ∈ 𝐺 ∧ 𝑉 ∈ Fin ∧ 𝐿 ≤ (♯‘𝑉)) → 𝜑) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | opfi1ind 14518* | Properties of an ordered pair with a finite first component, proven by finite induction on the size of the first component. This theorem can be applied for graphs (represented as ordered pairs of vertices and edges) with a finite number of vertices, e.g., fusgrfis 29487. (Contributed by AV, 22-Oct-2020.) (Revised by AV, 28-Mar-2021.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ 𝐸 ∈ V & ⊢ 𝐹 ∈ V & ⊢ ((𝑣 = 𝑉 ∧ 𝑒 = 𝐸) → (𝜓 ↔ 𝜑)) & ⊢ ((𝑣 = 𝑤 ∧ 𝑒 = 𝑓) → (𝜓 ↔ 𝜃)) & ⊢ ((〈𝑣, 𝑒〉 ∈ 𝐺 ∧ 𝑛 ∈ 𝑣) → 〈(𝑣 ∖ {𝑛}), 𝐹〉 ∈ 𝐺) & ⊢ ((𝑤 = (𝑣 ∖ {𝑛}) ∧ 𝑓 = 𝐹) → (𝜃 ↔ 𝜒)) & ⊢ ((〈𝑣, 𝑒〉 ∈ 𝐺 ∧ (♯‘𝑣) = 0) → 𝜓) & ⊢ ((((𝑦 + 1) ∈ ℕ0 ∧ (〈𝑣, 𝑒〉 ∈ 𝐺 ∧ (♯‘𝑣) = (𝑦 + 1) ∧ 𝑛 ∈ 𝑣)) ∧ 𝜒) → 𝜓) ⇒ ⊢ ((〈𝑉, 𝐸〉 ∈ 𝐺 ∧ 𝑉 ∈ Fin) → 𝜑) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
This section is about words (or strings) over a set (alphabet) defined as finite sequences of symbols (or characters) being elements of the alphabet. Although it is often required that the underlying set/alphabet be nonempty, finite and not a proper class, these restrictions are not made in the current definition df-word 14520, see, for example, s1cli 14612: 〈“𝐴”〉 ∈ Word V. Note that the empty word ∅ (i.e., the empty set) is the only word over an empty alphabet, see 0wrd0 14546. The set Word 𝑆 of words over 𝑆 is the free monoid over 𝑆, where the monoid law is concatenation and the monoid unit is the empty word. Besides the definition of words themselves, several operations on words are defined in this section:
| ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Syntax | cword 14519 | Syntax for the Word operator. | ||||||||||||||||||||||||||||||||||||||||||||||||||
| class Word 𝑆 | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Definition | df-word 14520* | Define the class of words over a set. A word (sometimes also called a string) is a finite sequence of symbols from a set (alphabet) 𝑆. Definition in Section 9.1 of [AhoHopUll] p. 318. The domain is forced to be an initial segment of ℕ0 so that two words with the same symbols in the same order be equal. The set Word 𝑆 is sometimes denoted by S*, using the Kleene star, although the Kleene star, or Kleene closure, is sometimes reserved to denote an operation on languages. The set Word 𝑆 equipped with concatenation is the free monoid over 𝑆, and the monoid unit is the empty word (see frmdval 18875). (Contributed by FL, 14-Jan-2014.) (Revised by Stefan O'Rear, 14-Aug-2015.) (Revised by Mario Carneiro, 26-Feb-2016.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ Word 𝑆 = {𝑤 ∣ ∃𝑙 ∈ ℕ0 𝑤:(0..^𝑙)⟶𝑆} | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | iswrd 14521* | Property of being a word over a set with an existential quantifier over the length. (Contributed by Stefan O'Rear, 15-Aug-2015.) (Revised by Mario Carneiro, 26-Feb-2016.) (Proof shortened by AV, 13-May-2020.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ (𝑊 ∈ Word 𝑆 ↔ ∃𝑙 ∈ ℕ0 𝑊:(0..^𝑙)⟶𝑆) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | wrdval 14522* | Value of the set of words over a set. (Contributed by Stefan O'Rear, 10-Aug-2015.) (Revised by Mario Carneiro, 26-Feb-2016.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ (𝑆 ∈ 𝑉 → Word 𝑆 = ∪ 𝑙 ∈ ℕ0 (𝑆 ↑m (0..^𝑙))) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | iswrdi 14523 | A zero-based sequence is a word. (Contributed by Stefan O'Rear, 15-Aug-2015.) (Revised by Mario Carneiro, 26-Feb-2016.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ (𝑊:(0..^𝐿)⟶𝑆 → 𝑊 ∈ Word 𝑆) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | wrdf 14524 | A word is a zero-based sequence with a recoverable upper limit. (Contributed by Stefan O'Rear, 15-Aug-2015.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ (𝑊 ∈ Word 𝑆 → 𝑊:(0..^(♯‘𝑊))⟶𝑆) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | wrdfd 14525 | A word is a zero-based sequence with a recoverable upper limit, deduction version. (Contributed by Thierry Arnoux, 22-Dec-2021.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ (𝜑 → 𝑁 = (♯‘𝑊)) & ⊢ (𝜑 → 𝑊 ∈ Word 𝑆) ⇒ ⊢ (𝜑 → 𝑊:(0..^𝑁)⟶𝑆) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | iswrdb 14526 | A word over an alphabet is a function from an open range of nonnegative integers (of length equal to the length of the word) into the alphabet. (Contributed by Alexander van der Vekens, 30-Jul-2018.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ (𝑊 ∈ Word 𝑆 ↔ 𝑊:(0..^(♯‘𝑊))⟶𝑆) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | wrddm 14527 | The indices of a word (i.e. its domain regarded as function) are elements of an open range of nonnegative integers (of length equal to the length of the word). (Contributed by AV, 2-May-2020.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ (𝑊 ∈ Word 𝑆 → dom 𝑊 = (0..^(♯‘𝑊))) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | sswrd 14528 | The set of words respects ordering on the base set. (Contributed by Stefan O'Rear, 15-Aug-2015.) (Revised by Mario Carneiro, 26-Feb-2016.) (Proof shortened by AV, 13-May-2020.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ (𝑆 ⊆ 𝑇 → Word 𝑆 ⊆ Word 𝑇) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | snopiswrd 14529 | A singleton of an ordered pair (with 0 as first component) is a word. (Contributed by AV, 23-Nov-2018.) (Proof shortened by AV, 18-Apr-2021.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ (𝑆 ∈ 𝑉 → {〈0, 𝑆〉} ∈ Word 𝑉) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | wrdexg 14530 | The set of words over a set is a set. (Contributed by Mario Carneiro, 26-Feb-2016.) (Proof shortened by JJ, 18-Nov-2022.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ (𝑆 ∈ 𝑉 → Word 𝑆 ∈ V) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | wrdexb 14531 | The set of words over a set is a set, bidirectional version. (Contributed by Mario Carneiro, 26-Feb-2016.) (Proof shortened by AV, 23-Nov-2018.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ (𝑆 ∈ V ↔ Word 𝑆 ∈ V) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | wrdexi 14532 | The set of words over a set is a set, inference form. (Contributed by AV, 23-May-2021.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ 𝑆 ∈ V ⇒ ⊢ Word 𝑆 ∈ V | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | wrdsymbcl 14533 | A symbol within a word over an alphabet belongs to the alphabet. (Contributed by Alexander van der Vekens, 28-Jun-2018.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((𝑊 ∈ Word 𝑉 ∧ 𝐼 ∈ (0..^(♯‘𝑊))) → (𝑊‘𝐼) ∈ 𝑉) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | wrdfn 14534 | A word is a function with a zero-based sequence of integers as domain. (Contributed by Alexander van der Vekens, 13-Apr-2018.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ (𝑊 ∈ Word 𝑆 → 𝑊 Fn (0..^(♯‘𝑊))) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | wrdv 14535 | A word over an alphabet is a word over the universal class. (Contributed by AV, 8-Feb-2021.) (Proof shortened by JJ, 18-Nov-2022.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ (𝑊 ∈ Word 𝑉 → 𝑊 ∈ Word V) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | wrdlndm 14536 | The length of a word is not in the domain of the word (regarded as a function). (Contributed by AV, 3-Mar-2021.) (Proof shortened by JJ, 18-Nov-2022.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ (𝑊 ∈ Word 𝑉 → (♯‘𝑊) ∉ dom 𝑊) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | iswrdsymb 14537* | An arbitrary word is a word over an alphabet if all of its symbols belong to the alphabet. (Contributed by AV, 23-Jan-2021.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((𝑊 ∈ Word V ∧ ∀𝑖 ∈ (0..^(♯‘𝑊))(𝑊‘𝑖) ∈ 𝑉) → 𝑊 ∈ Word 𝑉) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | wrdfin 14538 | A word is a finite set. (Contributed by Stefan O'Rear, 2-Nov-2015.) (Proof shortened by AV, 18-Nov-2018.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ (𝑊 ∈ Word 𝑆 → 𝑊 ∈ Fin) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | lencl 14539 | The length of a word is a nonnegative integer. This corresponds to the definition in Section 9.1 of [AhoHopUll] p. 318. (Contributed by Stefan O'Rear, 27-Aug-2015.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ (𝑊 ∈ Word 𝑆 → (♯‘𝑊) ∈ ℕ0) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | lennncl 14540 | The length of a nonempty word is a positive integer. (Contributed by Mario Carneiro, 1-Oct-2015.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((𝑊 ∈ Word 𝑆 ∧ 𝑊 ≠ ∅) → (♯‘𝑊) ∈ ℕ) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | wrdffz 14541 | A word is a function from a finite interval of integers. (Contributed by AV, 10-Feb-2021.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ (𝑊 ∈ Word 𝑆 → 𝑊:(0...((♯‘𝑊) − 1))⟶𝑆) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | wrdeq 14542 | Equality theorem for the set of words. (Contributed by Mario Carneiro, 26-Feb-2016.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ (𝑆 = 𝑇 → Word 𝑆 = Word 𝑇) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | wrdeqi 14543 | Equality theorem for the set of words, inference form. (Contributed by AV, 23-May-2021.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ 𝑆 = 𝑇 ⇒ ⊢ Word 𝑆 = Word 𝑇 | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | iswrddm0 14544 | A function with empty domain is a word. (Contributed by AV, 13-Oct-2018.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ (𝑊:∅⟶𝑆 → 𝑊 ∈ Word 𝑆) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | wrd0 14545 | The empty set is a word (the empty word, frequently denoted ε in this context). This corresponds to the definition in Section 9.1 of [AhoHopUll] p. 318. (Contributed by Stefan O'Rear, 15-Aug-2015.) (Proof shortened by AV, 13-May-2020.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ∅ ∈ Word 𝑆 | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | 0wrd0 14546 | The empty word is the only word over an empty alphabet. (Contributed by AV, 25-Oct-2018.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ (𝑊 ∈ Word ∅ ↔ 𝑊 = ∅) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | ffz0iswrd 14547 | A sequence with zero-based indices is a word. (Contributed by AV, 31-Jan-2018.) (Proof shortened by AV, 13-Oct-2018.) (Proof shortened by JJ, 18-Nov-2022.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ (𝑊:(0...𝐿)⟶𝑆 → 𝑊 ∈ Word 𝑆) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | wrdsymb 14548 | A word is a word over the symbols it consists of. (Contributed by AV, 1-Dec-2022.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ (𝑆 ∈ Word 𝐴 → 𝑆 ∈ Word (𝑆 “ (0..^(♯‘𝑆)))) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | nfwrd 14549 | Hypothesis builder for Word 𝑆. (Contributed by Mario Carneiro, 26-Feb-2016.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ Ⅎ𝑥𝑆 ⇒ ⊢ Ⅎ𝑥Word 𝑆 | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | csbwrdg 14550* | Class substitution for the symbols of a word. (Contributed by Alexander van der Vekens, 15-Jul-2018.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ (𝑆 ∈ 𝑉 → ⦋𝑆 / 𝑥⦌Word 𝑥 = Word 𝑆) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | wrdnval 14551* | Words of a fixed length are mappings from a fixed half-open integer interval. (Contributed by Alexander van der Vekens, 25-Mar-2018.) (Proof shortened by AV, 13-May-2020.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((𝑉 ∈ 𝑋 ∧ 𝑁 ∈ ℕ0) → {𝑤 ∈ Word 𝑉 ∣ (♯‘𝑤) = 𝑁} = (𝑉 ↑m (0..^𝑁))) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | wrdmap 14552 | Words as a mapping. (Contributed by Thierry Arnoux, 4-Mar-2020.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((𝑉 ∈ 𝑋 ∧ 𝑁 ∈ ℕ0) → ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) = 𝑁) ↔ 𝑊 ∈ (𝑉 ↑m (0..^𝑁)))) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | hashwrdn 14553* | If there is only a finite number of symbols, the number of words of a fixed length over these sysmbols is the number of these symbols raised to the power of the length. (Contributed by Alexander van der Vekens, 25-Mar-2018.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((𝑉 ∈ Fin ∧ 𝑁 ∈ ℕ0) → (♯‘{𝑤 ∈ Word 𝑉 ∣ (♯‘𝑤) = 𝑁}) = ((♯‘𝑉)↑𝑁)) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | wrdnfi 14554* | If there is only a finite number of symbols, the number of words of a fixed length over these symbols is also finite. (Contributed by Alexander van der Vekens, 25-Mar-2018.) Remove unnecessary antecedent. (Revised by JJ, 18-Nov-2022.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ (𝑉 ∈ Fin → {𝑤 ∈ Word 𝑉 ∣ (♯‘𝑤) = 𝑁} ∈ Fin) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | wrdsymb0 14555 | A symbol at a position "outside" of a word. (Contributed by Alexander van der Vekens, 26-May-2018.) (Proof shortened by AV, 2-May-2020.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((𝑊 ∈ Word 𝑉 ∧ 𝐼 ∈ ℤ) → ((𝐼 < 0 ∨ (♯‘𝑊) ≤ 𝐼) → (𝑊‘𝐼) = ∅)) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | wrdlenge1n0 14556 | A word with length at least 1 is not empty. (Contributed by AV, 14-Oct-2018.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ (𝑊 ∈ Word 𝑉 → (𝑊 ≠ ∅ ↔ 1 ≤ (♯‘𝑊))) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | len0nnbi 14557 | The length of a word is a positive integer iff the word is not empty. (Contributed by AV, 22-Mar-2022.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ (𝑊 ∈ Word 𝑆 → (𝑊 ≠ ∅ ↔ (♯‘𝑊) ∈ ℕ)) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | wrdlenge2n0 14558 | A word with length at least 2 is not empty. (Contributed by AV, 18-Jun-2018.) (Proof shortened by AV, 14-Oct-2018.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((𝑊 ∈ Word 𝑉 ∧ 2 ≤ (♯‘𝑊)) → 𝑊 ≠ ∅) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | wrdsymb1 14559 | The first symbol of a nonempty word over an alphabet belongs to the alphabet. (Contributed by Alexander van der Vekens, 28-Jun-2018.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((𝑊 ∈ Word 𝑉 ∧ 1 ≤ (♯‘𝑊)) → (𝑊‘0) ∈ 𝑉) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | wrdlen1 14560* | A word of length 1 starts with a symbol. (Contributed by AV, 20-Jul-2018.) (Proof shortened by AV, 19-Oct-2018.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) = 1) → ∃𝑣 ∈ 𝑉 (𝑊‘0) = 𝑣) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | fstwrdne 14561 | The first symbol of a nonempty word is an element of the alphabet for the word. (Contributed by AV, 28-Sep-2018.) (Proof shortened by AV, 14-Oct-2018.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((𝑊 ∈ Word 𝑉 ∧ 𝑊 ≠ ∅) → (𝑊‘0) ∈ 𝑉) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | fstwrdne0 14562 | The first symbol of a nonempty word is an element of the alphabet for the word. (Contributed by AV, 29-Sep-2018.) (Proof shortened by AV, 14-Oct-2018.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((𝑁 ∈ ℕ ∧ (𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) = 𝑁)) → (𝑊‘0) ∈ 𝑉) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | eqwrd 14563* | Two words are equal iff they have the same length and the same symbol at each position. (Contributed by AV, 13-Apr-2018.) (Revised by JJ, 30-Dec-2023.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((𝑈 ∈ Word 𝑆 ∧ 𝑊 ∈ Word 𝑇) → (𝑈 = 𝑊 ↔ ((♯‘𝑈) = (♯‘𝑊) ∧ ∀𝑖 ∈ (0..^(♯‘𝑈))(𝑈‘𝑖) = (𝑊‘𝑖)))) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | elovmpowrd 14564* | Implications for the value of an operation defined by the maps-to notation with a class abstraction of words as a result having an element. Note that 𝜑 may depend on 𝑧 as well as on 𝑣 and 𝑦. (Contributed by Alexander van der Vekens, 15-Jul-2018.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ 𝑂 = (𝑣 ∈ V, 𝑦 ∈ V ↦ {𝑧 ∈ Word 𝑣 ∣ 𝜑}) ⇒ ⊢ (𝑍 ∈ (𝑉𝑂𝑌) → (𝑉 ∈ V ∧ 𝑌 ∈ V ∧ 𝑍 ∈ Word 𝑉)) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | elovmptnn0wrd 14565* | Implications for the value of an operation defined by the maps-to notation with a function of nonnegative integers into a class abstraction of words as a result having an element. Note that 𝜑 may depend on 𝑧 as well as on 𝑣 and 𝑦 and 𝑛. (Contributed by AV, 16-Jul-2018.) (Revised by AV, 16-May-2019.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ 𝑂 = (𝑣 ∈ V, 𝑦 ∈ V ↦ (𝑛 ∈ ℕ0 ↦ {𝑧 ∈ Word 𝑣 ∣ 𝜑})) ⇒ ⊢ (𝑍 ∈ ((𝑉𝑂𝑌)‘𝑁) → ((𝑉 ∈ V ∧ 𝑌 ∈ V) ∧ (𝑁 ∈ ℕ0 ∧ 𝑍 ∈ Word 𝑉))) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | wrdred1 14566 | A word truncated by a symbol is a word. (Contributed by AV, 29-Jan-2021.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ (𝐹 ∈ Word 𝑆 → (𝐹 ↾ (0..^((♯‘𝐹) − 1))) ∈ Word 𝑆) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | wrdred1hash 14567 | The length of a word truncated by a symbol. (Contributed by Alexander van der Vekens, 1-Nov-2017.) (Revised by AV, 29-Jan-2021.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((𝐹 ∈ Word 𝑆 ∧ 1 ≤ (♯‘𝐹)) → (♯‘(𝐹 ↾ (0..^((♯‘𝐹) − 1)))) = ((♯‘𝐹) − 1)) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Syntax | clsw 14568 | Extend class notation with the Last Symbol of a word. | ||||||||||||||||||||||||||||||||||||||||||||||||||
| class lastS | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Definition | df-lsw 14569 | Extract the last symbol of a word. May be not meaningful for other sets which are not words. The name lastS (as abbreviation of "lastSymbol") is a compromise between usually used names for corresponding functions in computer programs (as last() or lastChar()), the terminology used for words in set.mm ("symbol" instead of "character") and brevity ("lastS" is shorter than "lastChar" and "lastSymbol"). Labels of theorems about last symbols of a word will contain the abbreviation "lsw" (Last Symbol of a Word). (Contributed by Alexander van der Vekens, 18-Mar-2018.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ lastS = (𝑤 ∈ V ↦ (𝑤‘((♯‘𝑤) − 1))) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | lsw 14570 | Extract the last symbol of a word. May be not meaningful for other sets which are not words. (Contributed by Alexander van der Vekens, 18-Mar-2018.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ (𝑊 ∈ 𝑋 → (lastS‘𝑊) = (𝑊‘((♯‘𝑊) − 1))) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | lsw0 14571 | The last symbol of an empty word does not exist. (Contributed by Alexander van der Vekens, 19-Mar-2018.) (Proof shortened by AV, 2-May-2020.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) = 0) → (lastS‘𝑊) = ∅) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | lsw0g 14572 | The last symbol of an empty word does not exist. (Contributed by Alexander van der Vekens, 11-Nov-2018.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ (lastS‘∅) = ∅ | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | lsw1 14573 | The last symbol of a word of length 1 is the first symbol of this word. (Contributed by Alexander van der Vekens, 19-Mar-2018.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) = 1) → (lastS‘𝑊) = (𝑊‘0)) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | lswcl 14574 | Closure of the last symbol: the last symbol of a nonempty word belongs to the alphabet for the word. (Contributed by AV, 2-Aug-2018.) (Proof shortened by AV, 29-Apr-2020.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((𝑊 ∈ Word 𝑉 ∧ 𝑊 ≠ ∅) → (lastS‘𝑊) ∈ 𝑉) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | lswlgt0cl 14575 | The last symbol of a nonempty word is an element of the alphabet for the word. (Contributed by Alexander van der Vekens, 1-Oct-2018.) (Proof shortened by AV, 29-Apr-2020.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((𝑁 ∈ ℕ ∧ (𝑊 ∈ Word 𝑉 ∧ (♯‘𝑊) = 𝑁)) → (lastS‘𝑊) ∈ 𝑉) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Syntax | cconcat 14576 | Syntax for the concatenation operator. | ||||||||||||||||||||||||||||||||||||||||||||||||||
| class ++ | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Definition | df-concat 14577* | Define the concatenation operator which combines two words. Definition in Section 9.1 of [AhoHopUll] p. 318. (Contributed by FL, 14-Jan-2014.) (Revised by Stefan O'Rear, 15-Aug-2015.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ++ = (𝑠 ∈ V, 𝑡 ∈ V ↦ (𝑥 ∈ (0..^((♯‘𝑠) + (♯‘𝑡))) ↦ if(𝑥 ∈ (0..^(♯‘𝑠)), (𝑠‘𝑥), (𝑡‘(𝑥 − (♯‘𝑠)))))) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | ccatfn 14578 | The concatenation operator is a two-argument function. (Contributed by Mario Carneiro, 27-Sep-2015.) (Proof shortened by AV, 29-Apr-2020.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ++ Fn (V × V) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | ccatfval 14579* | Value of the concatenation operator. (Contributed by Stefan O'Rear, 15-Aug-2015.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((𝑆 ∈ 𝑉 ∧ 𝑇 ∈ 𝑊) → (𝑆 ++ 𝑇) = (𝑥 ∈ (0..^((♯‘𝑆) + (♯‘𝑇))) ↦ if(𝑥 ∈ (0..^(♯‘𝑆)), (𝑆‘𝑥), (𝑇‘(𝑥 − (♯‘𝑆)))))) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | ccatcl 14580 | The concatenation of two words is a word. (Contributed by FL, 2-Feb-2014.) (Proof shortened by Stefan O'Rear, 15-Aug-2015.) (Proof shortened by AV, 29-Apr-2020.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵) → (𝑆 ++ 𝑇) ∈ Word 𝐵) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | ccatlen 14581 | The length of a concatenated word. (Contributed by Stefan O'Rear, 15-Aug-2015.) (Revised by JJ, 1-Jan-2024.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((𝑆 ∈ Word 𝐴 ∧ 𝑇 ∈ Word 𝐵) → (♯‘(𝑆 ++ 𝑇)) = ((♯‘𝑆) + (♯‘𝑇))) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | ccat0 14582 | The concatenation of two words is empty iff the two words are empty. (Contributed by AV, 4-Mar-2022.) (Revised by JJ, 18-Jan-2024.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((𝑆 ∈ Word 𝐴 ∧ 𝑇 ∈ Word 𝐵) → ((𝑆 ++ 𝑇) = ∅ ↔ (𝑆 = ∅ ∧ 𝑇 = ∅))) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | ccatval1 14583 | Value of a symbol in the left half of a concatenated word. (Contributed by Stefan O'Rear, 15-Aug-2015.) (Revised by Mario Carneiro, 22-Sep-2015.) (Proof shortened by AV, 30-Apr-2020.) (Revised by JJ, 18-Jan-2024.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((𝑆 ∈ Word 𝐴 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝐼 ∈ (0..^(♯‘𝑆))) → ((𝑆 ++ 𝑇)‘𝐼) = (𝑆‘𝐼)) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | ccatval2 14584 | Value of a symbol in the right half of a concatenated word. (Contributed by Stefan O'Rear, 15-Aug-2015.) (Revised by Mario Carneiro, 22-Sep-2015.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝐼 ∈ ((♯‘𝑆)..^((♯‘𝑆) + (♯‘𝑇)))) → ((𝑆 ++ 𝑇)‘𝐼) = (𝑇‘(𝐼 − (♯‘𝑆)))) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | ccatval3 14585 | Value of a symbol in the right half of a concatenated word, using an index relative to the subword. (Contributed by Stefan O'Rear, 16-Aug-2015.) (Proof shortened by AV, 30-Apr-2020.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝐼 ∈ (0..^(♯‘𝑇))) → ((𝑆 ++ 𝑇)‘(𝐼 + (♯‘𝑆))) = (𝑇‘𝐼)) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | elfzelfzccat 14586 | An element of a finite set of sequential integers up to the length of a word is an element of an extended finite set of sequential integers up to the length of a concatenation of this word with another word. (Contributed by Alexander van der Vekens, 28-Mar-2018.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((𝐴 ∈ Word 𝑉 ∧ 𝐵 ∈ Word 𝑉) → (𝑁 ∈ (0...(♯‘𝐴)) → 𝑁 ∈ (0...(♯‘(𝐴 ++ 𝐵))))) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | ccatvalfn 14587 | The concatenation of two words is a function over the half-open integer range having the sum of the lengths of the word as length. (Contributed by Alexander van der Vekens, 30-Mar-2018.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((𝐴 ∈ Word 𝑉 ∧ 𝐵 ∈ Word 𝑉) → (𝐴 ++ 𝐵) Fn (0..^((♯‘𝐴) + (♯‘𝐵)))) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | ccatdmss 14588 | The domain of a concatenated word is a superset of the domain of the first word. (Contributed by Thierry Arnoux, 19-Jun-2025.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ (𝜑 → 𝐴 ∈ Word 𝑆) & ⊢ (𝜑 → 𝐵 ∈ Word 𝑆) ⇒ ⊢ (𝜑 → dom 𝐴 ⊆ dom (𝐴 ++ 𝐵)) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | ccatsymb 14589 | The symbol at a given position in a concatenated word. (Contributed by AV, 26-May-2018.) (Proof shortened by AV, 24-Nov-2018.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((𝐴 ∈ Word 𝑉 ∧ 𝐵 ∈ Word 𝑉 ∧ 𝐼 ∈ ℤ) → ((𝐴 ++ 𝐵)‘𝐼) = if(𝐼 < (♯‘𝐴), (𝐴‘𝐼), (𝐵‘(𝐼 − (♯‘𝐴))))) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | ccatfv0 14590 | The first symbol of a concatenation of two words is the first symbol of the first word if the first word is not empty. (Contributed by Alexander van der Vekens, 22-Sep-2018.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((𝐴 ∈ Word 𝑉 ∧ 𝐵 ∈ Word 𝑉 ∧ 0 < (♯‘𝐴)) → ((𝐴 ++ 𝐵)‘0) = (𝐴‘0)) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | ccatval1lsw 14591 | The last symbol of the left (nonempty) half of a concatenated word. (Contributed by Alexander van der Vekens, 3-Oct-2018.) (Proof shortened by AV, 1-May-2020.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((𝐴 ∈ Word 𝑉 ∧ 𝐵 ∈ Word 𝑉 ∧ 𝐴 ≠ ∅) → ((𝐴 ++ 𝐵)‘((♯‘𝐴) − 1)) = (lastS‘𝐴)) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | ccatval21sw 14592 | The first symbol of the right (nonempty) half of a concatenated word. (Contributed by AV, 23-Apr-2022.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((𝐴 ∈ Word 𝑉 ∧ 𝐵 ∈ Word 𝑉 ∧ 𝐵 ≠ ∅) → ((𝐴 ++ 𝐵)‘(♯‘𝐴)) = (𝐵‘0)) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | ccatlid 14593 | Concatenation of a word by the empty word on the left. (Contributed by Stefan O'Rear, 15-Aug-2015.) (Proof shortened by AV, 1-May-2020.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ (𝑆 ∈ Word 𝐵 → (∅ ++ 𝑆) = 𝑆) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | ccatrid 14594 | Concatenation of a word by the empty word on the right. (Contributed by Stefan O'Rear, 15-Aug-2015.) (Proof shortened by AV, 1-May-2020.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ (𝑆 ∈ Word 𝐵 → (𝑆 ++ ∅) = 𝑆) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | ccatass 14595 | Associative law for concatenation of words. (Contributed by Stefan O'Rear, 15-Aug-2015.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵 ∧ 𝑈 ∈ Word 𝐵) → ((𝑆 ++ 𝑇) ++ 𝑈) = (𝑆 ++ (𝑇 ++ 𝑈))) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | ccatrn 14596 | The range of a concatenated word. (Contributed by Stefan O'Rear, 15-Aug-2015.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((𝑆 ∈ Word 𝐵 ∧ 𝑇 ∈ Word 𝐵) → ran (𝑆 ++ 𝑇) = (ran 𝑆 ∪ ran 𝑇)) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | ccatidid 14597 | Concatenation of the empty word by the empty word. (Contributed by AV, 26-Mar-2022.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ (∅ ++ ∅) = ∅ | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | lswccatn0lsw 14598 | The last symbol of a word concatenated with a nonempty word is the last symbol of the nonempty word. (Contributed by AV, 22-Oct-2018.) (Proof shortened by AV, 1-May-2020.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((𝐴 ∈ Word 𝑉 ∧ 𝐵 ∈ Word 𝑉 ∧ 𝐵 ≠ ∅) → (lastS‘(𝐴 ++ 𝐵)) = (lastS‘𝐵)) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | lswccat0lsw 14599 | The last symbol of a word concatenated with the empty word is the last symbol of the word. (Contributed by AV, 22-Oct-2018.) (Proof shortened by AV, 1-May-2020.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ (𝑊 ∈ Word 𝑉 → (lastS‘(𝑊 ++ ∅)) = (lastS‘𝑊)) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| Theorem | ccatalpha 14600 | A concatenation of two arbitrary words is a word over an alphabet iff the symbols of both words belong to the alphabet. (Contributed by AV, 28-Feb-2021.) | ||||||||||||||||||||||||||||||||||||||||||||||||||
| ⊢ ((𝐴 ∈ Word V ∧ 𝐵 ∈ Word V) → ((𝐴 ++ 𝐵) ∈ Word 𝑆 ↔ (𝐴 ∈ Word 𝑆 ∧ 𝐵 ∈ Word 𝑆))) | ||||||||||||||||||||||||||||||||||||||||||||||||||||
| < Previous Next > |
| Copyright terms: Public domain | < Previous Next > |