Exemplo n.º 1
0
def db_test():
    nd = natlog(file_name="natprogs/dbtc.nat", db_name="natprogs/db.nat")
    print('RULES')
    print(nd)
    print('DB FACTS')
    print(nd.db)
    nd.query("tc Who is_a animal ?")
Exemplo n.º 2
0
def bm():
    n = natlog(text=my_text)
    n.query("goal 10 L?")
    time_of(n.count, "goal 16 L?", times=256)
    time_of(n.count, "goal 32 L?", times=64)
    time_of(n.count, "goal 64 L?", times=16)
    time_of(n.count, "goal 128 L?", times=4)
    # time_of(n.count, "goal 250 L?", times=1)
    print('')
    n = natlog(file_name="natprogs/queens.nat")
    time_of(n.count, "goal8 Queens?", times=9)
    time_of(n.count, "goal9 Queens?")
    time_of(n.count, "goal10 Queens?")
    # return # runs, but quite a bit longer
    time_of(n.count, "goal11 Queens?")
    time_of(n.count, "goal12 Queens?")
Exemplo n.º 3
0
def yield_test():
    prog = """
    worm : ^o, worm.
  """
    n = natlog(text=prog)
    for i, answer in enumerate(n.solve("worm ?")):
        print(answer[0], end='')
        if i > 42: break
    print('')
Exemplo n.º 4
0
def db_chem():
    nd = natlog(file_name="natprogs/elements.nat",
                db_name="natprogs/elements.tsv")
    print('RULES')
    print(nd)
    print('DB FACTS')
    print(nd.db)
    nd.query("an_el Num Element ?")
    nd.query("gases Num Element ?")
Exemplo n.º 5
0
def test_generators():
    prog = """
  good 'l'.
  good 'o'.
  goal X : ``iter hello X, good X.
  goal X : ``range 1000 1005 X.
  """
    n = natlog(text=prog)
    for answer in n.solve("goal R?"):
        print(answer[1])
Exemplo n.º 6
0
def test_answer_stream():
    prog = """
  perm () ().
  perm (X Xs) Zs : perm Xs Ys, ins X Ys Zs.

  ins X Xs (X Xs).
  ins X (Y Xs) (Y Ys) : ins X Xs Ys.
  """
    n = natlog(text=prog)
    for answer in n.solve("perm (a (b (c ()))) P?"):
        print(answer[2])
Exemplo n.º 7
0
def t7():
    n = natlog(file_name="natprogs/family.nat")
    print('Enter some queries!')
    n.repl()
Exemplo n.º 8
0
def t6():
    n = natlog(file_name="natprogs/family.nat")
    print(n)
    n.query("grand_parent_of 'Joe' GP ?")
Exemplo n.º 9
0
def t5():
    n = natlog(file_name="natprogs/queens.nat")
    print(n)
    n.query("goal Queens?")
Exemplo n.º 10
0
def t3():
    n = natlog(file_name="natprogs/arith.nat")
    print(n)
    n.query("goal R ?")
Exemplo n.º 11
0
def t4():
    n = natlog(file_name="natprogs/perm.nat")
    n.query("perm (1 (2 (3 ()))) Ps?")
Exemplo n.º 12
0
def t2():
    n = natlog(file_name="natprogs/tc.nat")
    print(n)
    n.query("tc Who is animal ?")
Exemplo n.º 13
0
def t1():
    n = natlog(text=my_text)
    n.query("nrev  (a (b (c (d ())))) R ?")
    n.query("goal 10 L?")
Exemplo n.º 14
0
def py_test():
    nd = natlog(file_name="natprogs/py_call.nat")
    print('RULES')
    #print(nd)
    nd.query("goal X?")
Exemplo n.º 15
0
def loop():
    n = natlog(file_name="natprogs/loop.nat")
    print(n)
    n.query("goal X?")
Exemplo n.º 16
0
 def fun():
     n = natlog(text=my_text)
     n.count('goal 200 L?')