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.
翻译:我们研究如何生成具有组合解释的有趣整数序列问题。为此,我们提出了一种两步法。第一步,生成定义某种组合对象(如无向图、排列、匹配等)的一阶逻辑语句。第二步,使用提升一阶模型计数算法生成整数序列,该序列对第一步生成的一阶逻辑公式所编码的对象进行计数。例如,若一阶语句定义排列,则生成的整数序列即阶乘序列$n!$。我们通过实验证明,该方法能够生成有趣的新序列:自动生成的序列中有相当一部分可被在线整数序列百科全书(OEIS)收录,同时生成大量其他未收录但潜在有趣的序列。本研究的关键技术贡献在于一阶逻辑语句生成方法——该方法通过筛除大量会导致冗余整数序列的语句,显著压缩了语句搜索空间。