*****************************************************************************
*       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: St001885

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

-----------------------------------------------------------------------------
Description: The number of binary words with the same proper border set.

The proper border set of a binary word $w$ is the set of proper prefixes which are also suffixes of $w$.

For example, $0010000010$, $0010100010$ and $0010110010$ are the words with proper border set $\{0, 0010\}$, whereas $0010010010$ has proper border set $\{0, 0010, 0010010\}$.

-----------------------------------------------------------------------------
References: 

-----------------------------------------------------------------------------
Code:
@cached_function
def proper_border_set(w):
    B = []
    for i in range(1, len(w)):
        if w[:i] == w[-i:]:
            B.append(w[:i])
    return B

def statistic(w):
    B = proper_border_set(w)
    return sum(1 for u in Words([0,1], len(w)) if B == proper_border_set(u))


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

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

-----------------------------------------------------------------------------
Created: Dec 21, 2022 at 11:43 by Martin Rubey

-----------------------------------------------------------------------------
Last Updated: Dec 21, 2022 at 11:43 by Martin Rubey