cp's OEIS Frontend

This is a front-end for the Online Encyclopedia of Integer Sequences, made by Christian Perfect. The idea is to provide OEIS entries in non-ancient HTML, and then to think about how they're presented visually. The source code is on GitHub.

A346197 a(n) is the minimum number of pebbles such that any assignment of those pebbles on K_5 is a next-player winning game in the two-player impartial (n+1,n) pebbling game.

Original entry on oeis.org

7, 15, 21, 27, 33, 39, 47, 53, 59, 67, 73, 79, 87, 93, 99, 107, 113, 119, 127, 133, 139
Offset: 1

Views

Author

Keywords

Comments

For n>0, an (n+1,n) pebbling move involves removing n+1 pebbles from a vertex in a simple graph and placing n pebbles on an adjacent vertex.
A two-player impartial (n+1,n) pebbling game involves two players alternating (n+1,n) pebbling moves. The first player unable to make a move loses.

Examples

			For n=1, a(1)=7 is the least number of pebbles for which every (2,1) game on K_5 is a next-player winning game regardless of assignment.
		

References

  • E. R. Berlekamp, J. H. Conway, and R. K. Guy, Winning Ways for Your Mathematical Plays, Vol. 1, CRC Press, 2001.

Crossrefs

Programs

  • Mathematica
    Do[remove = k + 1; add = k;
    (*Given n and m, list all possible assignments.*)
    alltuples[n_, m_] := IntegerPartitions[m + n, {n}] - 1;
    (*Given an assignment, list all resultant assignments after one pebbling move; only work for n>=3.*)
    pebblemoves[config_] :=  Block[{n, temp},
        n = Length[config];
        temp = Table[config, {i, n (n - 1)}] +
            Permutations[Join[{-remove, add}, Table[0, {i, n - 2}]]];
        temp = Select[temp, Min[#] >= 0 &];
        temp = ReverseSort[DeleteDuplicates[ReverseSort /@ temp]]];
    (*Given n and m, list all assignments that are P-games.*)
    Plist = {};
    plist[n_, m_] :=  Block[{index, tuples},
        While[Length[Plist] < n, index = Length[Plist];
            AppendTo[Plist, {{Join[{1}, Table[0,{i,index}]]}}]];
        Do[AppendTo[Plist[[n]], {}]; tuples = alltuples[n, i];
            Do[If[Not[IntersectingQ[pebblemoves[tuples[[j]]],
                    If[i > (remove - add), Plist[[n, i - (remove - add)]], {}]]],
                AppendTo[Plist[[n, i]], tuples[[j]]]], {j, Length[tuples]}],
        {i, Length[Plist[[n]]] + 1, m}]; Plist[[n, m]]];
    Do[m = 1; While[plist[n, m] != {}, m++]; Print[" k=", k, " m=", m], {n, 5, 5}],
    {k, 1, 21}]