コード例 #1
0
ファイル: test_expr.py プロジェクト: GtTmy/pyeda
def test_expr2dimacssat():
    assert_raises(ValueError, expr2dimacssat, Xor(0, a, simplify=False))
    ret = expr2dimacssat(Xor(a, ~b))
    assert ret in {'p satx 2\nxor(-2 1)', 'p satx 2\nxor(1 -2)'}
    ret = expr2dimacssat(Xor(a, Equal(b, ~c)))
    assert ret in {'p satex 3\nxor(=(2 -3) 1)', 'p satex 3\nxor(1 =(2 -3))',
                   'p satex 3\nxor(=(-3 2) 1)', 'p satex 3\nxor(1 =(-3 2))'}
    ret = expr2dimacssat(Equal(a, ~b))
    assert ret in {'p sate 2\n=(1 -2)', 'p sate 2\n=(-2 1)'}
    ret = expr2dimacssat(And(a, ~b))
    assert ret in {'p sat 2\n*(1 -2)', 'p sat 2\n*(-2 1)'}
    ret = expr2dimacssat(Or(a, ~b))
    assert ret in {'p sat 2\n+(1 -2)', 'p sat 2\n+(-2 1)'}
    ret = expr2dimacssat(Not(a | ~b))
    assert ret in {'p sat 2\n-(+(1 -2))', 'p sat 2\n-(+(-2 1))'}
コード例 #2
0
ファイル: test_expr.py プロジェクト: shenchena/pyeda
def test_expr2dimacssat():
    assert_raises(ValueError, expr2dimacssat, Xor(0, a, simplify=False))
    ret = expr2dimacssat(Xor(a, ~b))
    assert ret in {'p satx 2\nxor(-2 1)', 'p satx 2\nxor(1 -2)'}
    ret = expr2dimacssat(Xor(a, Equal(b, ~c)))
    assert ret in {
        'p satex 3\nxor(=(2 -3) 1)', 'p satex 3\nxor(1 =(2 -3))',
        'p satex 3\nxor(=(-3 2) 1)', 'p satex 3\nxor(1 =(-3 2))'
    }
    ret = expr2dimacssat(Equal(a, ~b))
    assert ret in {'p sate 2\n=(1 -2)', 'p sate 2\n=(-2 1)'}
    ret = expr2dimacssat(And(a, ~b))
    assert ret in {'p sat 2\n*(1 -2)', 'p sat 2\n*(-2 1)'}
    ret = expr2dimacssat(Or(a, ~b))
    assert ret in {'p sat 2\n+(1 -2)', 'p sat 2\n+(-2 1)'}
    ret = expr2dimacssat(Not(a | ~b))
    assert ret in {'p sat 2\n-(+(1 -2))', 'p sat 2\n-(+(-2 1))'}