We study the problem of generating interesting integer sequences with a combinatorial interpretation. For this we introduce a two-step approach. In the first step, we generate first-order logic sentences which define some combinatorial objects, e.g., undirected graphs, permutations, matchings etc. In the second step, we use algorithms for lifted first-order model counting to generate integer sequences that count the objects encoded by the first-order logic formulas generated in the first step. For instance, if the first-order sentence defines permutations then the generated integer sequence is the sequence of factorial numbers $n!$. We demonstrate that our approach is able to generate interesting new sequences by showing that a non-negligible fraction of the automatically generated sequences can actually be found in the Online Encyclopaedia of Integer Sequences (OEIS) while generating many other similar sequences which are not present in OEIS and which are potentially interesting. A key technical contribution of our work is the method for generation of first-order logic sentences which is able to drastically prune the space of sentences by discarding large fraction of sentences which would lead to redundant integer sequences.
翻译:我们用组合解释来研究产生有趣的整数序列的问题。 为此, 我们引入了两步方法 。 在第一步, 我们产生一阶逻辑句, 定义一些组合对象, 例如无方向的图形、 排列、 匹配等 。 在第二步, 我们使用取消一阶模型的算法来生成由第一步产生的一阶逻辑公式编码的物体的整数序列。 例如, 如果第一个阶句定义了变异, 然后生成的整数序列是要素数的顺序 $. $. 。 我们证明我们的方法能够产生有趣的新序列, 其方法是显示, 自动生成的序列中, 不可忽略的部分实际上可以在 Integer 序列( OEIS) 在线百科中找到, 同时生成许多其它类似的序列, 这些序列在 OEIS 中并不存在, 并且可能很有趣。 我们工作的关键技术贡献是生成第一级逻辑句的生成方法, 它能够通过丢弃大量序列的序列, 从而导致大量序列的重复。