Theorem List for Intuitionistic Logic Explorer - 11301-11400 *Has distinct variable
group(s)
| Type | Label | Description |
| Statement |
| |
| Theorem | lswex 11301 |
Existence of the last symbol. The last symbol of a word is a set. See
lsw0g 11298 or lswcl 11300 if you want more specific results
for empty or
nonempty words, respectively. (Contributed by Jim Kingdon,
27-Dec-2025.)
|
 Word lastS    |
| |
| Theorem | lswlgt0cl 11302 |
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    |
| |
| 4.7.3 Concatenations of words
|
| |
| Syntax | cconcat 11303 |
Syntax for the concatenation operator.
|
++ |
| |
| Definition | df-concat 11304* |
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.)
|
++     ..^ ♯  ♯       ..^ ♯             ♯        |
| |
| Theorem | ccatfvalfi 11305* |
Value of the concatenation operator. (Contributed by Stefan O'Rear,
15-Aug-2015.)
|
    ++    ..^ ♯  ♯       ..^ ♯             ♯        |
| |
| Theorem | ccatcl 11306 |
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 | ccatclab 11307 |
The concatenation of words over two sets is a word over the union of
those sets. (Contributed by Jim Kingdon, 19-Dec-2025.)
|
  Word Word   ++ 
Word     |
| |
| Theorem | ccatlen 11308 |
The length of a concatenated word. (Contributed by Stefan O'Rear,
15-Aug-2015.) (Revised by JJ, 1-Jan-2024.)
|
  Word Word  ♯  ++    ♯  ♯     |
| |
| Theorem | ccat0 11309 |
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 11310 |
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
 ..^ ♯      ++           |
| |
| Theorem | ccatval2 11311 |
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 11312 |
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
 ..^ ♯      ++     ♯          |
| |
| Theorem | elfzelfzccat 11313 |
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      ♯  
   ♯  ++       |
| |
| Theorem | ccatvalfn 11314 |
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   ++   ..^ ♯  ♯      |
| |
| Theorem | ccatsymb 11315 |
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
   ++       ♯            ♯       |
| |
| Theorem | ccatfv0 11316 |
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
♯  
  ++    
      |
| |
| Theorem | ccatval1lsw 11317 |
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    ++     ♯    lastS    |
| |
| Theorem | ccatval21sw 11318 |
The first symbol of the right (nonempty) half of a concatenated word.
(Contributed by AV, 23-Apr-2022.)
|
  Word Word    ++    ♯  
      |
| |
| Theorem | ccatlid 11319 |
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 11320 |
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 11321 |
Associative law for concatenation of words. (Contributed by Stefan
O'Rear, 15-Aug-2015.)
|
  Word Word Word
   ++  ++   ++  ++     |
| |
| Theorem | ccatrn 11322 |
The range of a concatenated word. (Contributed by Stefan O'Rear,
15-Aug-2015.)
|
  Word Word 
 ++      |
| |
| Theorem | ccatidid 11323 |
Concatenation of the empty word by the empty word. (Contributed by AV,
26-Mar-2022.)
|

++   |
| |
| Theorem | lswccatn0lsw 11324 |
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 11325 |
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 11326 |
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 Word    ++  Word  Word
Word     |
| |
| Theorem | ccatrcl1 11327 |
Reverse closure of a concatenation: If the concatenation of two arbitrary
words is a word over an alphabet then the symbols of the first word belong
to the alphabet. (Contributed by AV, 3-Mar-2021.)
|
  Word Word   ++ 
Word   Word
  |
| |
| 4.7.4 Singleton words
|
| |
| Syntax | cs1 11328 |
Syntax for the singleton word constructor.
|
     |
| |
| Definition | df-s1 11329 |
Define the canonical injection from symbols to words. Although not
required, should
usually be a set. Otherwise, the singleton word
    would be the singleton word consisting of the empty set, see
s1prc 11336, and not, as maybe expected, the empty word.
(Contributed by
Stefan O'Rear, 15-Aug-2015.) (Revised by Mario Carneiro, 26-Feb-2016.)
|
            |
| |
| Theorem | s1val 11330 |
Value of a singleton word. (Contributed by Stefan O'Rear, 15-Aug-2015.)
(Revised by Mario Carneiro, 26-Feb-2016.)
|
            |
| |
| Theorem | s1rn 11331 |
The range of a singleton word. (Contributed by Mario Carneiro,
18-Jul-2016.)
|
         |
| |
| Theorem | s1eq 11332 |
Equality theorem for a singleton word. (Contributed by Mario Carneiro,
26-Feb-2016.)
|
           |
| |
| Theorem | s1eqd 11333 |
Equality theorem for a singleton word. (Contributed by Mario Carneiro,
26-Feb-2016.)
|
             |
| |
| Theorem | s1cl 11334 |
A singleton word is a word. (Contributed by Stefan O'Rear, 15-Aug-2015.)
(Revised by Mario Carneiro, 26-Feb-2016.) (Proof shortened by AV,
23-Nov-2018.)
|
     Word   |
| |
| Theorem | s1cld 11335 |
A singleton word is a word. (Contributed by Mario Carneiro,
26-Feb-2016.)
|
       Word
  |
| |
| Theorem | s1prc 11336 |
Value of a singleton word if the symbol is a proper class. (Contributed
by AV, 26-Mar-2022.)
|
           |
| |
| Theorem | s1leng 11337 |
Length of a singleton word. (Contributed by Stefan O'Rear, 15-Aug-2015.)
(Revised by Mario Carneiro, 26-Feb-2016.)
|
 ♯        |
| |
| Theorem | s1dmg 11338 |
The domain of a singleton word is a singleton. (Contributed by AV,
9-Jan-2020.)
|
         |
| |
| Theorem | s1fv 11339 |
Sole symbol of a singleton word. (Contributed by Stefan O'Rear,
15-Aug-2015.) (Revised by Mario Carneiro, 26-Feb-2016.)
|
           |
| |
| Theorem | lsws1 11340 |
The last symbol of a singleton word is its symbol. (Contributed by AV,
22-Oct-2018.)
|
 lastS        |
| |
| Theorem | eqs1 11341 |
A word of length 1 is a singleton word. (Contributed by Stefan O'Rear,
23-Aug-2015.) (Proof shortened by AV, 1-May-2020.)
|
  Word ♯  
          |
| |
| Theorem | wrdl1exs1 11342* |
A word of length 1 is a singleton word. (Contributed by AV,
24-Jan-2021.)
|
  Word ♯   
      |
| |
| Theorem | wrdl1s1 11343 |
A word of length 1 is a singleton word consisting of the first symbol of
the word. (Contributed by AV, 22-Jul-2018.) (Proof shortened by AV,
14-Oct-2018.)
|
       Word ♯ 
        |
| |
| Theorem | s111 11344 |
The singleton word function is injective. (Contributed by Mario Carneiro,
1-Oct-2015.) (Revised by Mario Carneiro, 26-Feb-2016.)
|
               |
| |
| 4.7.5 Concatenations with singleton
words
|
| |
| Theorem | ccatws1cl 11345 |
The concatenation of a word with a singleton word is a word. (Contributed
by Alexander van der Vekens, 22-Sep-2018.)
|
  Word   ++      Word   |
| |
| Theorem | ccat2s1cl 11346 |
The concatenation of two singleton words is a word. (Contributed by
Alexander van der Vekens, 22-Sep-2018.)
|
        ++      Word
  |
| |
| Theorem | ccatws1leng 11347 |
The length of the concatenation of a word with a singleton word.
(Contributed by Alexander van der Vekens, 22-Sep-2018.) (Revised by AV,
4-Mar-2022.)
|
  Word  ♯  ++        ♯     |
| |
| Theorem | ccatws1lenp1bg 11348 |
The length of a word is iff the length of the concatenation of the
word with a singleton word is . (Contributed by AV,
4-Mar-2022.)
|
  Word   ♯  ++         ♯     |
| |
| Theorem | wrdlenccats1lenm1g 11349 |
The length of a word is the length of the word concatenated with a
singleton word minus 1. (Contributed by AV, 28-Jun-2018.) (Revised by
AV, 5-Mar-2022.)
|
  Word   ♯  ++        ♯    |
| |
| Theorem | ccatw2s1cl 11350 |
The concatenation of a word with two singleton words is a word.
(Contributed by Alexander van der Vekens, 22-Sep-2018.)
|
  Word    ++      ++      Word   |
| |
| Theorem | ccatw2s1leng 11351 |
The length of the concatenation of a word with two singleton words.
(Contributed by Alexander van der Vekens, 22-Sep-2018.) (Revised by AV,
5-Mar-2022.)
|
  Word  ♯   ++      ++        ♯     |
| |
| Theorem | ccats1val1g 11352 |
Value of a symbol in the left half of a word concatenated with a single
symbol. (Contributed by Alexander van der Vekens, 5-Aug-2018.) (Revised
by JJ, 20-Jan-2024.)
|
  Word
 ..^ ♯      ++               |
| |
| Theorem | ccats1val2 11353 |
Value of the symbol concatenated with a word. (Contributed by Alexander
van der Vekens, 5-Aug-2018.) (Proof shortened by Alexander van der
Vekens, 14-Oct-2018.)
|
  Word
♯     ++           |
| |
| Theorem | ccat1st1st 11354 |
The first symbol of a word concatenated with its first symbol is the first
symbol of the word. This theorem holds even if is the empty word.
(Contributed by AV, 26-Mar-2022.)
|
 Word   ++                   |
| |
| Theorem | ccatws1ls 11355 |
The last symbol of the concatenation of a word with a singleton word is
the symbol of the singleton word. (Contributed by AV, 29-Sep-2018.)
(Proof shortened by AV, 14-Oct-2018.)
|
  Word    ++        ♯  
  |
| |
| Theorem | lswccats1 11356 |
The last symbol of a word concatenated with a singleton word is the symbol
of the singleton word. (Contributed by AV, 6-Aug-2018.)
|
  Word  lastS  ++         |
| |
| Theorem | lswccats1fst 11357 |
The last symbol of a nonempty word concatenated with its first symbol is
the first symbol. (Contributed by AV, 28-Jun-2018.) (Proof shortened by
AV, 1-May-2020.)
|
  Word ♯   lastS  ++             ++               |
| |
| Theorem | ccatw2s1p1g 11358 |
Extract the symbol of the first singleton word of a word concatenated with
this singleton word and another singleton word. (Contributed by Alexander
van der Vekens, 22-Sep-2018.) (Proof shortened by AV, 1-May-2020.)
(Revised by AV, 1-May-2020.) (Revised by AV, 29-Jan-2024.)
|
   Word
♯ 
   
   ++      ++        
  |
| |
| Theorem | ccatw2s1p2 11359 |
Extract the second of two single symbols concatenated with a word.
(Contributed by Alexander van der Vekens, 22-Sep-2018.) (Proof shortened
by AV, 1-May-2020.)
|
   Word
♯ 
   
   ++      ++        
    |
| |
| Theorem | ccat2s1fvwd 11360 |
Extract a symbol of a word from the concatenation of the word with two
single symbols. (Contributed by AV, 22-Sep-2018.) (Revised by AV,
13-Jan-2020.) (Proof shortened by AV, 1-May-2020.) (Revised by AV,
28-Jan-2024.)
|
 Word     ♯           ++      ++               |
| |
| Theorem | ccat2s1fstg 11361 |
The first symbol of the concatenation of a word with two single symbols.
(Contributed by Alexander van der Vekens, 22-Sep-2018.) (Revised by AV,
28-Jan-2024.)
|
   Word
♯  
      ++      ++               |
| |
| 4.7.6 Subwords/substrings
|
| |
| Syntax | csubstr 11362 |
Syntax for the subword operator.
|
substr |
| |
| Definition | df-substr 11363* |
Define an operation which extracts portions (called subwords or
substrings) of words. Definition in Section 9.1 of [AhoHopUll]
p. 318. (Contributed by Stefan O'Rear, 15-Aug-2015.)
|
substr  
         ..^        ..^              
           |
| |
| Theorem | fzowrddc 11364 |
Decidability of whether a range of integers is a subset of a word's
domain. (Contributed by Jim Kingdon, 23-Dec-2025.)
|
  Word  DECID  ..^   |
| |
| Theorem | swrdval 11365* |
Value of a subword. (Contributed by Stefan O'Rear, 15-Aug-2015.)
|
    substr
       ..^
 
 ..^              |
| |
| Theorem | swrd00g 11366 |
A zero length substring. (Contributed by Stefan O'Rear,
27-Aug-2015.)
|
    substr       |
| |
| Theorem | swrdclg 11367 |
Closure of the subword extractor. (Contributed by Stefan O'Rear,
16-Aug-2015.) (Revised by Mario Carneiro, 26-Feb-2016.)
|
  Word   substr
    Word   |
| |
| Theorem | swrdval2 11368* |
Value of the subword extractor in its intended domain. (Contributed by
Stefan O'Rear, 15-Aug-2015.) (Proof shortened by AV, 2-May-2020.)
|
  Word    
   ♯     substr       ..^      
     |
| |
| Theorem | swrdlen 11369 |
Length of an extracted subword. (Contributed by Stefan O'Rear,
16-Aug-2015.)
|
  Word    
   ♯    ♯  substr
         |
| |
| Theorem | swrdfv 11370 |
A symbol in an extracted subword, indexed using the subword's indices.
(Contributed by Stefan O'Rear, 16-Aug-2015.)
|
   Word
       ♯   
 ..^
     substr       
        |
| |
| Theorem | swrdfv0 11371 |
The first symbol in an extracted subword. (Contributed by AV,
27-Apr-2022.)
|
  Word  ..^
   ♯      substr
             |
| |
| Theorem | swrdf 11372 |
A subword of a word is a function from a half-open range of nonnegative
integers of the same length as the subword to the set of symbols for the
original word. (Contributed by AV, 13-Nov-2018.)
|
  Word    
   ♯     substr        ..^       |
| |
| Theorem | swrdvalfn 11373 |
Value of the subword extractor as function with domain. (Contributed by
Alexander van der Vekens, 28-Mar-2018.) (Proof shortened by AV,
2-May-2020.)
|
  Word    
   ♯     substr      ..^     |
| |
| Theorem | swrdrn 11374 |
The range of a subword of a word is a subset of the set of symbols for the
word. (Contributed by AV, 13-Nov-2018.)
|
  Word    
   ♯     substr       |
| |
| Theorem | swrdlend 11375 |
The value of the subword extractor is the empty set (undefined) if the
range is not valid. (Contributed by Alexander van der Vekens,
16-Mar-2018.) (Proof shortened by AV, 2-May-2020.)
|
  Word    substr
       |
| |
| Theorem | swrdnd 11376 |
The value of the subword extractor is the empty set (undefined) if the
range is not valid. (Contributed by Alexander van der Vekens,
16-Mar-2018.) (Proof shortened by AV, 2-May-2020.)
|
  Word    ♯    substr        |
| |
| Theorem | swrd0g 11377 |
A subword of an empty set is always the empty set. (Contributed by AV,
31-Mar-2018.) (Revised by AV, 20-Oct-2018.) (Proof shortened by AV,
2-May-2020.)
|
    substr       |
| |
| Theorem | swrdrlen 11378 |
Length of a right-anchored subword. (Contributed by Alexander van der
Vekens, 5-Apr-2018.)
|
  Word    ♯    ♯  substr   ♯      ♯     |
| |
| Theorem | swrdlen2 11379 |
Length of an extracted subword. (Contributed by AV, 5-May-2020.)
|
  Word       ♯  
♯  substr          |
| |
| Theorem | swrdfv2 11380 |
A symbol in an extracted subword, indexed using the word's indices.
(Contributed by AV, 5-May-2020.)
|
   Word

    
♯  
 ..^    substr                |
| |
| Theorem | swrdwrdsymbg 11381 |
A subword is a word over the symbols it consists of. (Contributed by
AV, 2-Dec-2022.)
|
  Word    
   ♯     substr     Word     ..^    |
| |
| Theorem | swrdsb0eq 11382 |
Two subwords with the same bounds are equal if the range is not valid.
(Contributed by AV, 4-May-2020.)
|
   Word
Word  
 
 substr  
   substr       |
| |
| Theorem | swrdsbslen 11383 |
Two subwords with the same bounds have the same length. (Contributed by
AV, 4-May-2020.)
|
   Word
Word  
  ♯ 
♯    ♯  substr      ♯  substr  
     |
| |
| Theorem | swrdspsleq 11384* |
Two words have a common subword (starting at the same position with the
same length) iff they have the same symbols at each position.
(Contributed by Alexander van der Vekens, 7-Aug-2018.) (Proof shortened
by AV, 7-May-2020.)
|
   Word
Word  
  ♯ 
♯      substr      substr       ..^             |
| |
| Theorem | swrds1 11385 |
Extract a single symbol from a word. (Contributed by Stefan O'Rear,
23-Aug-2015.)
|
  Word  ..^ ♯     substr                 |
| |
| Theorem | swrdlsw 11386 |
Extract the last single symbol from a word. (Contributed by Alexander van
der Vekens, 23-Sep-2018.)
|
  Word  
substr   ♯    ♯      lastS      |
| |
| Theorem | ccatswrd 11387 |
Joining two adjacent subwords makes a longer subword. (Contributed by
Stefan O'Rear, 20-Aug-2015.)
|
  Word         
   ♯       substr     ++  substr       substr       |
| |
| Theorem | swrdccat2 11388 |
Recover the right half of a concatenated word. (Contributed by Mario
Carneiro, 27-Sep-2015.)
|
  Word Word    ++  substr
 ♯  
 ♯  ♯       |
| |
| 4.7.7 Prefixes of a word
|
| |
| Syntax | cpfx 11389 |
Syntax for the prefix operator.
|
prefix |
| |
| Definition | df-pfx 11390* |
Define an operation which extracts prefixes of words, i.e. subwords (or
substrings) starting at the beginning of a word (or string). In other
words,  prefix  is the prefix of the word of length
. Definition
in Section 9.1 of [AhoHopUll] p. 318. See
also
Wikipedia "Substring" https://en.wikipedia.org/wiki/Substring#Prefix.
(Contributed by AV, 2-May-2020.)
|
prefix  
 substr       |
| |
| Theorem | pfxval 11391 |
Value of a prefix operation. (Contributed by AV, 2-May-2020.)
|
    prefix 
 substr       |
| |
| Theorem | pfx00g 11392 |
The zero length prefix is the empty set. (Contributed by AV,
2-May-2020.)
|
  prefix
   |
| |
| Theorem | pfx0g 11393 |
A prefix of an empty set is always the empty set. (Contributed by AV,
3-May-2020.)
|
  prefix    |
| |
| Theorem | fnpfx 11394 |
The domain of the prefix extractor. (Contributed by Jim Kingdon,
8-Jan-2026.)
|
prefix    |
| |
| Theorem | pfxclg 11395 |
Closure of the prefix extractor. (Contributed by AV, 2-May-2020.)
|
  Word   prefix 
Word   |
| |
| Theorem | pfxclz 11396 |
Closure of the prefix extractor. This extends pfxclg 11395 from to
(negative
lengths are trivial, resulting in the empty word).
(Contributed by Jim Kingdon, 8-Jan-2026.)
|
  Word   prefix 
Word   |
| |
| Theorem | pfxmpt 11397* |
Value of the prefix extractor as a mapping. (Contributed by AV,
2-May-2020.)
|
  Word    ♯    
prefix    ..^        |
| |
| Theorem | pfxres 11398 |
Value of the prefix extractor as the restriction of a word.
(Contributed by Stefan O'Rear, 24-Aug-2015.) (Revised by AV,
2-May-2020.)
|
  Word    ♯    
prefix    ..^    |
| |
| Theorem | pfxf 11399 |
A prefix of a word is a function from a half-open range of nonnegative
integers of the same length as the prefix to the set of symbols for the
original word. (Contributed by AV, 2-May-2020.)
|
  Word    ♯    
prefix     ..^     |
| |
| Theorem | pfxfn 11400 |
Value of the prefix extractor as function with domain. (Contributed by
AV, 2-May-2020.)
|
  Word    ♯    
prefix   ..^   |