def test_conj_containment2(): R = query_sym.Relation('R', [query_sym.Variable('x'), query_sym.Variable('y')]) S = query_sym.Relation('S', [query_sym.Variable('y'), query_sym.Variable('z')]) T = query_sym.Relation('T', [query_sym.Variable('z'), query_sym.Variable('w')]) com1 = query_exp.Component([R,S]) com2 = query_exp.Component([S,T]) c1 = query_exp.ConjunctiveQuery(query_exp.decomposeComponent(com1) + query_exp.decomposeComponent(com2)) c2 = query_exp.ConjunctiveQuery(query_exp.decomposeComponent(com2)) assert c2.containedIn(c1) == False
def test_dnf_containment2(): R = query_sym.Relation('R', [query_sym.Variable('x'), query_sym.Variable('y')]) S = query_sym.Relation('S', [query_sym.Variable('y'), query_sym.Variable('z')]) T = query_sym.Relation('T', [query_sym.Variable('z'), query_sym.Variable('w')]) com1 = query_exp.Component([R]) com2 = query_exp.Component([S]) com3 = query_exp.Component([T]) c1 = query_exp.ConjunctiveQuery(query_exp.decomposeComponent(com1)) c2 = query_exp.ConjunctiveQuery(query_exp.decomposeComponent(com2)) c3 = query_exp.ConjunctiveQuery(query_exp.decomposeComponent(com3)) query_exp.DNF1 = query_exp.DNF([c1,c2,c3]) query_exp.DNF2 = query_exp.DNF([c1,c2]) assert query_exp.DNF2.containedIn(query_exp.DNF1) == True
def test_conj_containment2(): R = query_sym.Relation('R', [query_sym.Variable('x'), query_sym.Variable('y')]) S = query_sym.Relation('S', [query_sym.Variable('y'), query_sym.Variable('z')]) T = query_sym.Relation('T', [query_sym.Variable('z'), query_sym.Variable('w')]) com1 = query_exp.Component([R, S]) com2 = query_exp.Component([S, T]) c1 = query_exp.ConjunctiveQuery( query_exp.decomposeComponent(com1) + query_exp.decomposeComponent(com2)) c2 = query_exp.ConjunctiveQuery(query_exp.decomposeComponent(com2)) assert c2.containedIn(c1) == False
def test_dnf_containment2(): R = query_sym.Relation('R', [query_sym.Variable('x'), query_sym.Variable('y')]) S = query_sym.Relation('S', [query_sym.Variable('y'), query_sym.Variable('z')]) T = query_sym.Relation('T', [query_sym.Variable('z'), query_sym.Variable('w')]) com1 = query_exp.Component([R]) com2 = query_exp.Component([S]) com3 = query_exp.Component([T]) c1 = query_exp.ConjunctiveQuery(query_exp.decomposeComponent(com1)) c2 = query_exp.ConjunctiveQuery(query_exp.decomposeComponent(com2)) c3 = query_exp.ConjunctiveQuery(query_exp.decomposeComponent(com3)) query_exp.DNF1 = query_exp.DNF([c1, c2, c3]) query_exp.DNF2 = query_exp.DNF([c1, c2]) assert query_exp.DNF2.containedIn(query_exp.DNF1) == True