(Q Q)/nonvar(Q) ==> (((P ==> dmost(Q)))). % NEG chaining /*~ ~*/ % NEG chaining dmost(~Q)/mpred_positive_literal(Q) ==> (( \+ Q ) ==> ~ Q ). % POS chaining 1 /*~ ~*/ % POS chaining 1 dmost(Q)/(mpred_positive_literal(Q),if_missing_mask(Q,R,Test)) ==> ( ( ( \+R /Test, (\+ ~Q )) ==> Q )). % POS chaining 2 /*~ ~*/ % POS chaining 2 dmost(Q)/(mpred_positive_literal(Q),if_missing_mask(Q,R,Test)) ==> ( ((R/( \+(R=Q), Test)) ==> (\+ Q))). % POS chaining 1+2 % dmost(Q)/(mpred_positive_literal(Q),if_missing_mask(Q,R,Test)) ==> ( ( ( \+R /Test ) ==> Q ) ,((R/( \+(R=Q), Test)) ==> (\+ Q))). /*~ ~*/ % POS chaining 1+2 % dmost(Q)/(mpred_positive_literal(Q),if_missing_mask(Q,R,Test)) ==> ( ( ( \+R /Test ) ==> Q ) ,((R/( \+(R=Q), Test)) ==> (\+ Q))). :- dynamic(b/1). /*~ ~*/ :- mpred_trace_exec. /*~ ~*/ dmost(b(1)). /*~ ~*/ :- listing(b/1). /*~ %~ /var/lib/jenkins/workspace/logicmoo_workspace/packs_sys/pfc/t/sanity_base/dmost_01.pfc:50 %~ skipped( listing( b/1)) ~*/ :- mpred_why(dmost(b(1))). /*~ %~ /var/lib/jenkins/workspace/logicmoo_workspace/packs_sys/pfc/t/sanity_base/dmost_01.pfc:52 %~ ?-( mpred_test("Test_0001_Line_0000__b_1_in_user",user:dmost(b(1)))). passed=info(why_was_true(user:dmost(b(1)))) no_proof_for(dmost(b(1))). no_proof_for(dmost(b(1))). no_proof_for(dmost(b(1))). name='logicmoo.pfc.test.sanity_base.DMOST_01-Test_0001_Line_0000__b_1_in_user'. JUNIT_CLASSNAME='logicmoo.pfc.test.sanity_base.DMOST_01'. JUNIT_CMD='timeout --foreground --preserve-status -s SIGKILL -k 10s 10s swipl -x /var/lib/jenkins/workspace/logicmoo_workspace/bin/lmoo-clif -t "[\'dmost_01.pfc\']"'. % saving_junit: /var/lib/jenkins/workspace/logicmoo_workspace/test_results/jenkins/Report-logicmoo-pfc-test-sanity_base-vSTARv0vSTARvvDOTvvSTARv-2-1--grep-2-i-WARN-ERROR-_file-00-fail-pass--Units-Logicmoo_pfc_test_sanity_base_DMOST_01_Test_0001_Line_0000_b_1_in_user-junit.xml ~*/ :- mpred_why(b(1)). /*~ %~ ?-( mpred_test("Test_0002_Line_0000__b_1_in_user",user:b(1))). passed=info(why_was_true(user:b(1))) no_proof_for(b(1)). no_proof_for(b(1)). no_proof_for(b(1)). name='logicmoo.pfc.test.sanit goal=user:b(2). time=0.00042557716369628906. passed=passed=info(why_was_true(user:b(2))) no_proof_for(b(2)). no_proof_for(b(2)). no_proof_for(b(2)). result=passed. ]]>