*****************************************************************************
*       www.FindStat.org - The Combinatorial Statistic Finder               *
*                                                                           *
*       Copyright (C) 2019 The FindStatCrew <info@findstat.org>             *
*                                                                           *
*    This information is distributed in the hope that it will be useful,    *
*    but WITHOUT ANY WARRANTY; without even the implied warranty of         *
*    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.                   *
*****************************************************************************

-----------------------------------------------------------------------------
Statistic identifier: St000294

-----------------------------------------------------------------------------
Collection: Binary words

-----------------------------------------------------------------------------
Description: The number of distinct factors of a binary word.

This is also known as the subword complexity of a binary word, see [1].

-----------------------------------------------------------------------------
References: [1]   [[wikipedia:Complexity_function]]

-----------------------------------------------------------------------------
Code:
def statistic(x):
    return x.number_of_factors()


-----------------------------------------------------------------------------
Statistic values:

0          => 2
1          => 2
00         => 3
01         => 4
10         => 4
11         => 3
000        => 4
001        => 6
010        => 6
011        => 6
100        => 6
101        => 6
110        => 6
111        => 4
0000       => 5
0001       => 8
0010       => 9
0011       => 9
0100       => 9
0101       => 8
0110       => 9
0111       => 8
1000       => 8
1001       => 9
1010       => 8
1011       => 9
1100       => 9
1101       => 9
1110       => 8
1111       => 5
00000      => 6
00001      => 10
00010      => 12
00011      => 12
00100      => 12
00101      => 12
00110      => 13
00111      => 12
01000      => 12
01001      => 12
01010      => 10
01011      => 12
01100      => 13
01101      => 12
01110      => 12
01111      => 10
10000      => 10
10001      => 12
10010      => 12
10011      => 13
10100      => 12
10101      => 10
10110      => 12
10111      => 12
11000      => 12
11001      => 13
11010      => 12
11011      => 12
11100      => 12
11101      => 12
11110      => 10
11111      => 6
000000     => 7
000001     => 12
000010     => 15
000011     => 15
000100     => 16
000101     => 16
000110     => 17
000111     => 16
001000     => 16
001001     => 15
001010     => 15
001011     => 17
001100     => 17
001101     => 17
001110     => 17
001111     => 15
010000     => 15
010001     => 16
010010     => 15
010011     => 17
010100     => 15
010101     => 12
010110     => 16
010111     => 16
011000     => 17
011001     => 17
011010     => 16
011011     => 15
011100     => 17
011101     => 16
011110     => 15
011111     => 12
100000     => 12
100001     => 15
100010     => 16
100011     => 17
100100     => 15
100101     => 16
100110     => 17
100111     => 17
101000     => 16
101001     => 16
101010     => 12
101011     => 15
101100     => 17
101101     => 15
101110     => 16
101111     => 15
110000     => 15
110001     => 17
110010     => 17
110011     => 17
110100     => 17
110101     => 15
110110     => 15
110111     => 16
111000     => 16
111001     => 17
111010     => 16
111011     => 16
111100     => 15
111101     => 15
111110     => 12
111111     => 7
0000000    => 8
0000001    => 14
0000010    => 18
0000011    => 18
0000100    => 20
0000101    => 20
0000110    => 21
0000111    => 20
0001000    => 20
0001001    => 20
0001010    => 20
0001011    => 22
0001100    => 22
0001101    => 22
0001110    => 22
0001111    => 20
0010000    => 20
0010001    => 20
0010010    => 18
0010011    => 21
0010100    => 20
0010101    => 18
0010110    => 22
0010111    => 22
0011000    => 22
0011001    => 21
0011010    => 22
0011011    => 21
0011100    => 22
0011101    => 22
0011110    => 21
0011111    => 18
0100000    => 18
0100001    => 20
0100010    => 20
0100011    => 22
0100100    => 18
0100101    => 20
0100110    => 22
0100111    => 22
0101000    => 20
0101001    => 20
0101010    => 14
0101011    => 18
0101100    => 22
0101101    => 20
0101110    => 21
0101111    => 20
0110000    => 21
0110001    => 22
0110010    => 22
0110011    => 21
0110100    => 22
0110101    => 20
0110110    => 18
0110111    => 20
0111000    => 22
0111001    => 22
0111010    => 21
0111011    => 20
0111100    => 21
0111101    => 20
0111110    => 18
0111111    => 14
1000000    => 14
1000001    => 18
1000010    => 20
1000011    => 21
1000100    => 20
1000101    => 21
1000110    => 22
1000111    => 22
1001000    => 20
1001001    => 18
1001010    => 20
1001011    => 22
1001100    => 21
1001101    => 22
1001110    => 22
1001111    => 21
1010000    => 20
1010001    => 21
1010010    => 20
1010011    => 22
1010100    => 18
1010101    => 14
1010110    => 20
1010111    => 20
1011000    => 22
1011001    => 22
1011010    => 20
1011011    => 18
1011100    => 22
1011101    => 20
1011110    => 20
1011111    => 18
1100000    => 18
1100001    => 21
1100010    => 22
1100011    => 22
1100100    => 21
1100101    => 22
1100110    => 21
1100111    => 22
1101000    => 22
1101001    => 22
1101010    => 18
1101011    => 20
1101100    => 21
1101101    => 18
1101110    => 20
1101111    => 20
1110000    => 20
1110001    => 22
1110010    => 22
1110011    => 22
1110100    => 22
1110101    => 20
1110110    => 20
1110111    => 20
1111000    => 20
1111001    => 21
1111010    => 20
1111011    => 20
1111100    => 18
1111101    => 18
1111110    => 14
1111111    => 8
00000000   => 9
00000001   => 16
00000010   => 21
00000011   => 21
00000100   => 24
00000101   => 24
00000110   => 25
00000111   => 24
00001000   => 25
00001001   => 25
00001010   => 25
00001011   => 27
00001100   => 27
00001101   => 27
00001110   => 27
00001111   => 25
00010000   => 25
00010001   => 24
00010010   => 24
00010011   => 27
00010100   => 26
00010101   => 24
00010110   => 28
00010111   => 28
00011000   => 27
00011001   => 27
00011010   => 28
00011011   => 27
00011100   => 28
00011101   => 28
00011110   => 27
00011111   => 24
00100000   => 24
00100001   => 25
00100010   => 24
00100011   => 27
00100100   => 21
00100101   => 24
00100110   => 27
00100111   => 27
00101000   => 26
00101001   => 25
00101010   => 21
00101011   => 25
00101100   => 28
00101101   => 27
00101110   => 28
00101111   => 27
00110000   => 27
00110001   => 27
00110010   => 27
00110011   => 25
00110100   => 28
00110101   => 27
00110110   => 25
00110111   => 27
00111000   => 28
00111001   => 27
00111010   => 28
00111011   => 27
00111100   => 27
00111101   => 27
00111110   => 25
00111111   => 21
01000000   => 21
01000001   => 24
01000010   => 25
01000011   => 27
01000100   => 24
01000101   => 26
01000110   => 28
01000111   => 28
01001000   => 24
01001001   => 21
01001010   => 25
01001011   => 27
01001100   => 27
01001101   => 28
01001110   => 28
01001111   => 27
01010000   => 25
01010001   => 26
01010010   => 25
01010011   => 27
01010100   => 21
01010101   => 16
01010110   => 24
01010111   => 24
01011000   => 28
01011001   => 28
01011010   => 25
01011011   => 24
01011100   => 28
01011101   => 26
01011110   => 26
01011111   => 24
01100000   => 25
01100001   => 27
01100010   => 28
01100011   => 27
01100100   => 27
01100101   => 28
01100110   => 25
01100111   => 27
01101000   => 28
01101001   => 28
01101010   => 24
01101011   => 25
01101100   => 25
01101101   => 21
01101110   => 25
01101111   => 25
01110000   => 27
01110001   => 28
01110010   => 28
01110011   => 27
01110100   => 28
01110101   => 26
01110110   => 25
01110111   => 24
01111000   => 27
01111001   => 27
01111010   => 26
01111011   => 25
01111100   => 25
01111101   => 24
01111110   => 21
01111111   => 16
10000000   => 16
10000001   => 21
10000010   => 24
10000011   => 25
10000100   => 25
10000101   => 26
10000110   => 27
10000111   => 27
10001000   => 24
10001001   => 25
10001010   => 26
10001011   => 28
10001100   => 27
10001101   => 28
10001110   => 28
10001111   => 27
10010000   => 25
10010001   => 25
10010010   => 21
10010011   => 25
10010100   => 25
10010101   => 24
10010110   => 28
10010111   => 28
10011000   => 27
10011001   => 25
10011010   => 28
10011011   => 27
10011100   => 27
10011101   => 28
10011110   => 27
10011111   => 25
10100000   => 24
10100001   => 26
10100010   => 26
10100011   => 28
10100100   => 24
10100101   => 25
10100110   => 28
10100111   => 28
10101000   => 24
10101001   => 24
10101010   => 16
10101011   => 21
10101100   => 27
10101101   => 25
10101110   => 26
10101111   => 25
10110000   => 27
10110001   => 28
10110010   => 28
10110011   => 27
10110100   => 27
10110101   => 25
10110110   => 21
10110111   => 24
10111000   => 28
10111001   => 28
10111010   => 26
10111011   => 24
10111100   => 27
10111101   => 25
10111110   => 24
10111111   => 21
11000000   => 21
11000001   => 25
11000010   => 27
11000011   => 27
11000100   => 27
11000101   => 28
11000110   => 27
11000111   => 28
11001000   => 27
11001001   => 25
11001010   => 27
11001011   => 28
11001100   => 25
11001101   => 27
11001110   => 27
11001111   => 27
11010000   => 27
11010001   => 28
11010010   => 27
11010011   => 28
11010100   => 25
11010101   => 21
11010110   => 25
11010111   => 26
11011000   => 27
11011001   => 27
11011010   => 24
11011011   => 21
11011100   => 27
11011101   => 24
11011110   => 25
11011111   => 24
11100000   => 24
11100001   => 27
11100010   => 28
11100011   => 28
11100100   => 27
11100101   => 28
11100110   => 27
11100111   => 27
11101000   => 28
11101001   => 28
11101010   => 24
11101011   => 26
11101100   => 27
11101101   => 24
11101110   => 24
11101111   => 25
11110000   => 25
11110001   => 27
11110010   => 27
11110011   => 27
11110100   => 27
11110101   => 25
11110110   => 25
11110111   => 25
11111000   => 24
11111001   => 25
11111010   => 24
11111011   => 24
11111100   => 21
11111101   => 21
11111110   => 16
11111111   => 9
000000000  => 10
000000001  => 18
000000010  => 24
000000011  => 24
000000100  => 28
000000101  => 28
000000110  => 29
000000111  => 28
000001000  => 30
000001001  => 30
000001010  => 30
000001011  => 32
000001100  => 32
000001101  => 32
000001110  => 32
000001111  => 30
000010000  => 30
000010001  => 30
000010010  => 30
000010011  => 33
000010100  => 32
000010101  => 30
000010110  => 34
000010111  => 34
000011000  => 33
000011001  => 33
000011010  => 34
000011011  => 33
000011100  => 34
000011101  => 34
000011110  => 33
000011111  => 30
000100000  => 30
000100001  => 30
000100010  => 28
000100011  => 32
000100100  => 28
000100101  => 31
000100110  => 34
000100111  => 34
000101000  => 32
000101001  => 32
000101010  => 28
000101011  => 32
000101100  => 35
000101101  => 34
000101110  => 35
000101111  => 34
000110000  => 33
000110001  => 32
000110010  => 34
000110011  => 32
000110100  => 35
000110101  => 34
000110110  => 32
000110111  => 34
000111000  => 34
000111001  => 34
000111010  => 35
000111011  => 34
000111100  => 34
000111101  => 34
000111110  => 32
000111111  => 28
001000000  => 28
001000001  => 30
001000010  => 30
001000011  => 33
001000100  => 28
001000101  => 31
001000110  => 34
001000111  => 34
001001000  => 28
001001001  => 24
001001010  => 30
001001011  => 32
001001100  => 33
001001101  => 34
001001110  => 34
001001111  => 33
001010000  => 32
001010001  => 32
001010010  => 30
001010011  => 33
001010100  => 28
001010101  => 24
001010110  => 32
001010111  => 32
001011000  => 35
001011001  => 34
001011010  => 33
001011011  => 32
001011100  => 35
001011101  => 34
001011110  => 34
001011111  => 32
001100000  => 32
001100001  => 33
001100010  => 34
001100011  => 32
001100100  => 33
001100101  => 34
001100110  => 29
001100111  => 32
001101000  => 35
001101001  => 34
001101010  => 32
001101011  => 33
001101100  => 32
001101101  => 29
001101110  => 33
001101111  => 33
001110000  => 34
001110001  => 34
001110010  => 34
001110011  => 32
001110100  => 35
001110101  => 34
001110110  => 33
001110111  => 32
001111000  => 34
001111001  => 33
001111010  => 34
001111011  => 33
001111100  => 32
001111101  => 32
001111110  => 29
001111111  => 24
010000000  => 24
010000001  => 28
010000010  => 30
010000011  => 32
010000100  => 30
010000101  => 32
010000110  => 34
010000111  => 34
010001000  => 28
010001001  => 30
010001010  => 32
010001011  => 34
010001100  => 34
010001101  => 35
010001110  => 35
010001111  => 34
010010000  => 30
010010001  => 30
010010010  => 24
010010011  => 29
010010100  => 30
010010101  => 30
010010110  => 34
010010111  => 34
010011000  => 34
010011001  => 32
010011010  => 34
010011011  => 34
010011100  => 34
010011101  => 35
010011110  => 34
010011111  => 32
010100000  => 30
010100001  => 32
010100010  => 32
010100011  => 34
010100100  => 30
010100101  => 30
010100110  => 34
010100111  => 34
010101000  => 28
010101001  => 28
010101010  => 18
010101011  => 24
010101100  => 32
010101101  => 30
010101110  => 31
010101111  => 30
010110000  => 34
010110001  => 35
010110010  => 34
010110011  => 34
010110100  => 33
010110101  => 30
010110110  => 28
010110111  => 31
010111000  => 35
010111001  => 35
010111010  => 32
010111011  => 31
010111100  => 34
010111101  => 32
010111110  => 31
010111111  => 28
011000000  => 29
011000001  => 32
011000010  => 34
011000011  => 33
011000100  => 34
011000101  => 35
011000110  => 32
011000111  => 34
011001000  => 34
011001001  => 32
011001010  => 34
011001011  => 34
011001100  => 29
011001101  => 32
011001110  => 33
011001111  => 33
011010000  => 34
011010001  => 35
011010010  => 34
011010011  => 34
011010100  => 32
011010101  => 28
011010110  => 30
011010111  => 32
011011000  => 32
011011001  => 32
011011010  => 28
011011011  => 24
011011100  => 33
011011101  => 30
011011110  => 31
011011111  => 30
011100000  => 32
011100001  => 34
011100010  => 35
011100011  => 34
011100100  => 34
011100101  => 35
011100110  => 33
011100111  => 32
011101000  => 35
011101001  => 35
011101010  => 31
011101011  => 32
011101100  => 33
011101101  => 30
011101110  => 28
011101111  => 30
011110000  => 33
011110001  => 34
011110010  => 34
011110011  => 33
011110100  => 34
011110101  => 32
011110110  => 31
011110111  => 30
011111000  => 32
011111001  => 32
011111010  => 31
011111011  => 30
011111100  => 29
011111101  => 28
011111110  => 24
011111111  => 18
100000000  => 18
100000001  => 24
100000010  => 28
100000011  => 29
100000100  => 30
100000101  => 31
100000110  => 32
100000111  => 32
100001000  => 30
100001001  => 31
100001010  => 32
100001011  => 34
100001100  => 33
100001101  => 34
100001110  => 34
100001111  => 33
100010000  => 30
100010001  => 28
100010010  => 30
100010011  => 33
100010100  => 32
100010101  => 31
100010110  => 35
100010111  => 35
100011000  => 32
100011001  => 33
100011010  => 35
100011011  => 34
100011100  => 34
100011101  => 35
100011110  => 34
100011111  => 32
100100000  => 30
100100001  => 31
100100010  => 30
100100011  => 33
100100100  => 24
100100101  => 28
100100110  => 32
100100111  => 32
100101000  => 32
100101001  => 30
100101010  => 28
100101011  => 32
100101100  => 34
100101101  => 34
100101110  => 35
100101111  => 34
100110000  => 33
100110001  => 33
100110010  => 32
100110011  => 29
100110100  => 34
100110101  => 34
100110110  => 32
100110111  => 34
100111000  => 34
100111001  => 32
100111010  => 35
100111011  => 34
100111100  => 33
100111101  => 34
100111110  => 32
100111111  => 29
101000000  => 28
101000001  => 31
101000010  => 32
101000011  => 34
101000100  => 31
101000101  => 32
101000110  => 35
101000111  => 35
101001000  => 31
101001001  => 28
101001010  => 30
101001011  => 33
101001100  => 34
101001101  => 34
101001110  => 35
101001111  => 34
101010000  => 30
101010001  => 31
101010010  => 30
101010011  => 32
101010100  => 24
101010101  => 18
101010110  => 28
101010111  => 28
101011000  => 34
101011001  => 34
101011010  => 30
101011011  => 30
101011100  => 34
101011101  => 32
101011110  => 32
101011111  => 30
101100000  => 32
101100001  => 34
101100010  => 35
101100011  => 34
101100100  => 34
101100101  => 34
101100110  => 32
101100111  => 34
101101000  => 34
101101001  => 34
101101010  => 30
101101011  => 30
101101100  => 29
101101101  => 24
101101110  => 30
101101111  => 30
101110000  => 34
101110001  => 35
101110010  => 35
101110011  => 34
101110100  => 34
101110101  => 32
101110110  => 30
101110111  => 28
101111000  => 34
101111001  => 34
101111010  => 32
101111011  => 30
101111100  => 32
101111101  => 30
101111110  => 28
101111111  => 24
110000000  => 24
110000001  => 29
110000010  => 32
110000011  => 32
110000100  => 33
110000101  => 34
110000110  => 33
110000111  => 34
110001000  => 32
110001001  => 33
110001010  => 34
110001011  => 35
110001100  => 32
110001101  => 34
110001110  => 34
110001111  => 34
110010000  => 33
110010001  => 33
110010010  => 29
110010011  => 32
110010100  => 33
110010101  => 32
110010110  => 34
110010111  => 35
110011000  => 32
110011001  => 29
110011010  => 34
110011011  => 33
110011100  => 32
110011101  => 34
110011110  => 33
110011111  => 32
110100000  => 32
110100001  => 34
110100010  => 34
110100011  => 35
110100100  => 32
110100101  => 33
110100110  => 34
110100111  => 35
110101000  => 32
110101001  => 32
110101010  => 24
110101011  => 28
110101100  => 33
110101101  => 30
110101110  => 32
110101111  => 32
110110000  => 33
110110001  => 34
110110010  => 34
110110011  => 33
110110100  => 32
110110101  => 30
110110110  => 24
110110111  => 28
110111000  => 34
110111001  => 34
110111010  => 31
110111011  => 28
110111100  => 33
110111101  => 30
110111110  => 30
110111111  => 28
111000000  => 28
111000001  => 32
111000010  => 34
111000011  => 34
111000100  => 34
111000101  => 35
111000110  => 34
111000111  => 34
111001000  => 34
111001001  => 32
111001010  => 34
111001011  => 35
111001100  => 32
111001101  => 34
111001110  => 32
111001111  => 33
111010000  => 34
111010001  => 35
111010010  => 34
111010011  => 35
111010100  => 32
111010101  => 28
111010110  => 32
111010111  => 32
111011000  => 34
111011001  => 34
111011010  => 31
111011011  => 28
111011100  => 32
111011101  => 28
111011110  => 30
111011111  => 30
111100000  => 30
111100001  => 33
111100010  => 34
111100011  => 34
111100100  => 33
111100101  => 34
111100110  => 33
111100111  => 33
111101000  => 34
111101001  => 34
111101010  => 30
111101011  => 32
111101100  => 33
111101101  => 30
111101110  => 30
111101111  => 30
111110000  => 30
111110001  => 32
111110010  => 32
111110011  => 32
111110100  => 32
111110101  => 30
111110110  => 30
111110111  => 30
111111000  => 28
111111001  => 29
111111010  => 28
111111011  => 28
111111100  => 24
111111101  => 24
111111110  => 18
111111111  => 10
0000000001 => 20
0010000001 => 35
0010101101 => 39
0010101011 => 33
0010100111 => 41
0010011101 => 42
0010011011 => 41
0010010111 => 40
0010001111 => 41
0001110101 => 42
0001110011 => 40
0001101101 => 37
0001101011 => 41
0001100111 => 40
0001011101 => 42
0001011011 => 40
0001010111 => 40
0001001111 => 41
0000111101 => 41
0000111011 => 41
0000110111 => 41
0000101111 => 41
0000011111 => 36
0000000000 => 11
0000000110 => 33
0000011000 => 39
0000011110 => 39
0000010010 => 36
0001100000 => 39
0001100110 => 37
0001111000 => 41
0001111110 => 37
0001110010 => 42
0001001000 => 35
0001001110 => 42
0001000010 => 35
0001011010 => 41
0010101010 => 27
0010101000 => 36
0010101100 => 40
0010100100 => 36
0010010100 => 36
0001010100 => 36
0010101110 => 40
0010100000 => 38
0010000100 => 35
0000010100 => 38
0000000010 => 27
0000001110 => 37
0000111110 => 39
0000000100 => 32
0000001010 => 35
0000010110 => 40
0000101110 => 42
0001011110 => 42
0001101110 => 41
0001110110 => 41
0001111010 => 42
0001111100 => 40
0000000101 => 32
0000001101 => 37
0000011101 => 40
0001111101 => 40
0000001001 => 35
0000010101 => 36
0000101101 => 41
0010110001 => 42
0001100001 => 39
0001000001 => 36
0000111111 => 35
0001110100 => 43
0001101100 => 40
0010011100 => 41
0001011100 => 43
0000111100 => 41
0001101010 => 40
0010011010 => 41
0000111010 => 42
0010100110 => 41
0010010110 => 40
0001010110 => 40
0000110110 => 39
0010001110 => 42
0001101001 => 42
0000110001 => 39
0000010001 => 36
0000001100 => 37
0000011001 => 39
0000110011 => 39
0000110100 => 42
0000000011 => 27
0000011011 => 39
0001101111 => 41
0000110101 => 41
0010000010 => 36
0001000011 => 39
0010011110 => 41
0001010000 => 39
0001000100 => 32
0001010101 => 32
0001001011 => 40
0001100011 => 37
0001110111 => 40
0010000000 => 32
0000000111 => 32
0000001111 => 35
0001111111 => 32
0000001011 => 37
0000010111 => 40
0001011111 => 40
0001111001 => 41
0000011010 => 40
0000101010 => 35
0000100101 => 38
0010010001 => 35
0010000101 => 38
0010010101 => 36
0010010011 => 33
0000101011 => 39
0001000111 => 40
0000100111 => 41
0010010010 => 27
0001001010 => 38
0001001001 => 32
0001000101 => 36
0000100011 => 39
0000100100 => 35
0000100010 => 35
0010110000 => 42
0000011100 => 40
0000001000 => 35
0000101100 => 42
0010101111 => 39
0000101000 => 39
0010001000 => 32
0001001100 => 41
0001000110 => 40
0001100100 => 41
0001100010 => 40
0000100110 => 41
0000110010 => 41
0010010000 => 35
0001010010 => 38
0001000000 => 35
0001011001 => 42
0001100101 => 42
0001110001 => 40
0010011001 => 39
0010100101 => 35
0010101001 => 35
0010011111 => 39
0000111001 => 41
0010001101 => 42
0001001101 => 42
0001010001 => 38
0001010011 => 41
0001111011 => 41
0010011000 => 41
0001011000 => 42
0000100000 => 36
0010001011 => 40
0010000111 => 41
0000010011 => 39
0010001100 => 41
0010000110 => 41
0000110000 => 39
0000100001 => 35
0010100011 => 41
0010100001 => 39
0000111000 => 41
0001101000 => 42
0000010000 => 36
0000101001 => 39
0010100010 => 38
0010001001 => 35
0010000011 => 39
0010001010 => 38
0001110000 => 41

-----------------------------------------------------------------------------
Created: Nov 19, 2015 at 12:16 by Martin Rubey

-----------------------------------------------------------------------------
Last Updated: Jun 03, 2016 at 11:21 by Martin Rubey