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