def model_check_graph_johnson(goal): res_lst = [] # load model with open(VTE + "/work/model_graph_johnson.pkl", 'rb') as f: model = pickle.load(f) # load fol with open(VTE + "/work/fol_graph_johnson_200.pkl", 'rb') as f: fol = pickle.load(f) keys = fol.keys() #keys = list(set(model.keys()) - set(noise_lst)) for key in keys: m = model[key] dom = model[key].domain g = evaluate.Assignment(dom) goal_preds = lexpr(goal).predicates() for pred in goal_preds: if m.valuation.get(str(pred)) is None: m.valuation[str(pred)] = set() res = (m.evaluate(goal, g)) if res == "Undefined": res = False if res: res_lst.append(key) return (res_lst)
def demo_model0(): global m0, g0 # Initialize a valuation of non-logical constants.""" v = [ ("john", "b1"), ("mary", "g1"), ("suzie", "g2"), ("fido", "d1"), ("tess", "d2"), ("noosa", "n"), ("girl", {"g1", "g2"}), ("boy", {"b1", "b2"}), ("dog", {"d1", "d2"}), ("bark", {"d1", "d2"}), ("walk", {"b1", "g2", "d1"}), ("chase", {("b1", "g1"), ("b2", "g1"), ("g1", "d1"), ("g2", "d2")}), ( "see", {("b1", "g1"), ("b2", "d2"), ("g1", "b1"), ("d2", "b1"), ("g2", "n")}, ), ("in", {("b1", "n"), ("b2", "n"), ("d2", "n")}), ("with", {("b1", "g1"), ("g1", "b1"), ("d1", "b1"), ("b1", "d1")}), ] # Read in the data from ``v`` val = evaluate.Valuation(v) # Bind ``dom`` to the ``domain`` property of ``val`` dom = val.domain # Initialize a model with parameters ``dom`` and ``val``. m0 = evaluate.Model(dom, val) # Initialize a variable assignment with parameter ``dom`` g0 = evaluate.Assignment(dom)
def model_check(goal, flag_cap): res_lst = [] if flag_cap: # load model_cap with open(VTE + "/work/structure_cap.pkl", 'rb') as f: model = pickle.load(f) else: # load model with open(VTE + "/work/structure.pkl", 'rb') as f: model = pickle.load(f) keys = model.keys() #keys = list(set(model.keys()) - set(noise_lst)) for key in keys: m = model[key] dom = model[key].domain g = evaluate.Assignment(dom) goal_preds = lexpr(goal).predicates() for pred in goal_preds: if m.valuation.get(str(pred)) is None: m.valuation[str(pred)] = set() res = (m.evaluate(goal, g)) if res == "Undefined": res = False if res: res_lst.append(key) return (res_lst)
def demo_model0(): global m0, g0 # Initialize a valuation of non-logical constants.""" v = [ ('john', 'b1'), ('mary', 'g1'), ('suzie', 'g2'), ('fido', 'd1'), ('tess', 'd2'), ('noosa', 'n'), ('girl', set(['g1', 'g2'])), ('boy', set(['b1', 'b2'])), ('dog', set(['d1', 'd2'])), ('bark', set(['d1', 'd2'])), ('walk', set(['b1', 'g2', 'd1'])), ('chase', set([('b1', 'g1'), ('b2', 'g1'), ('g1', 'd1'), ('g2', 'd2')])), ( 'see', set([('b1', 'g1'), ('b2', 'd2'), ('g1', 'b1'), ('d2', 'b1'), ('g2', 'n')]), ), ('in', set([('b1', 'n'), ('b2', 'n'), ('d2', 'n')])), ('with', set([('b1', 'g1'), ('g1', 'b1'), ('d1', 'b1'), ('b1', 'd1')])), ] # Read in the data from ``v`` val = evaluate.Valuation(v) # Bind ``dom`` to the ``domain`` property of ``val`` dom = val.domain # Initialize a model with parameters ``dom`` and ``val``. m0 = evaluate.Model(dom, val) # Initialize a variable assignment with parameter ``dom`` g0 = evaluate.Assignment(dom)
def model_check_key(key, goal, flag_cap): if flag_cap: # load model_cap with open(VTE + "/work/structure_cap.pkl", 'rb') as f: model = pickle.load(f) else: # load model with open(VTE + "/work/structure.pkl", 'rb') as f: model = pickle.load(f) m = model[key] dom = model[key].domain g = evaluate.Assignment(dom) goal_preds = lexpr(goal).predicates() for pred in goal_preds: if m.valuation.get(str(pred)) is None: m.valuation[str(pred)] = set() res = (m.evaluate(goal, g)) if res == "Undefined": res = False return (res)