def test_conso(): assert not results(conso(x, y, ())) assert results(conso(1, (2, 3), (1, 2, 3))) assert results(conso(x, (2, 3), (1, 2, 3))) == ({x: 1}, ) assert results(conso(1, (2, 3), x)) == ({x: (1, 2, 3)}, ) assert results(conso(x, y, (1, 2, 3))) == ({x: 1, y: (2, 3)}, ) assert results(conso(x, (2, 3), y)) == ({y: (x, 2, 3)}, ) assert run(1, y, conso(1, x, y)) == (LCons(1, x), ) assert list(run(1, y, conso(1, x, y))[0]) == [1] assert list(run(1, y, conso(1, x, y), conso(2, z, x))[0]) == [1, 2]
def test_conso(): x = var() y = var() assert not results(conso(x, y, ())) assert results(conso(1, (2, 3), (1, 2, 3))) assert results(conso(x, (2, 3), (1, 2, 3))) == ({x: 1},) assert results(conso(1, (2, 3), x)) == ({x: (1, 2, 3)},) assert results(conso(x, y, (1, 2, 3))) == ({x: 1, y: (2, 3)},) assert results(conso(x, (2, 3), y)) == ({y: (x, 2, 3)},)
def test_conso(): x = var() y = var() assert not results(conso(x, y, ())) assert results(conso(1, (2, 3), (1, 2, 3))) assert results(conso(x, (2, 3), (1, 2, 3))) == ({x: 1}, ) assert results(conso(1, (2, 3), x)) == ({x: (1, 2, 3)}, ) assert results(conso(x, y, (1, 2, 3))) == ({x: 1, y: (2, 3)}, ) assert results(conso(x, (2, 3), y)) == ({y: (x, 2, 3)}, )
def test_rs2_24(): r, x, y, z = mvars(4) eq((("e", "a", "d", "c"),), run(0, r, unify(("e", "a", "d", x), r), conso(y, ("a", z, "c"), r)))