diff --git a/implementation/program-1/problem1.pddl b/implementation/program-1/problem1.pddl index 654dced9252affed5aac305fc0e0287a11162195..3824f8ab407095ecd35575c3c795edf92114a03a 100644 --- a/implementation/program-1/problem1.pddl +++ b/implementation/program-1/problem1.pddl @@ -14,7 +14,7 @@ (:goal (and (executed_assingment assignmentA) (executed_assingment assignmentB) - (executed_binary_operation assignmentA assignmentA sumAB assignmentC) + (executed_binary_operation assignmentA assignmentB sumAB assignmentC) (executed_assingment assignmentC) )) ) \ No newline at end of file diff --git a/implementation/program-1/problem2.pddl b/implementation/program-1/problem2.pddl index 53c4c50180233661c4164aeedcb335a186006d41..d7234bfa0f6c0427949b7357d1ee1f9553c7ab4e 100644 --- a/implementation/program-1/problem2.pddl +++ b/implementation/program-1/problem2.pddl @@ -1,20 +1,18 @@ (define (problem problem2) (:domain program1) (:objects - assignmentA assignmentB assignmentC - assignment - sumAB - operation - varA varB varC - variable_name - valueA valueB valueC - variable_value + assignmentA assignmentC - assignment + sumAA - operation + varA varC - variable_name + valueA valueC - variable_value ) (:init (variable_info varA valueA assignmentA) - (variable_info varB valueB assignmentB) ) (:goal (and (executed_assingment assignmentA) - (executed_assingment assignmentB) - (executed_binary_operation assignmentA assignmentA sumAB assignmentC) + (executed_binary_operation assignmentA assignmentA sumAA assignmentC) (executed_assingment assignmentC) )) ) \ No newline at end of file diff --git a/implementation/program-2/domain.pddl b/implementation/program-2/domain.pddl index b254c1bc2959200c64178b2f24fd8551949af677..bbe6da2b6bb28720a630591ea69f8bea793862e4 100644 --- a/implementation/program-2/domain.pddl +++ b/implementation/program-2/domain.pddl @@ -12,6 +12,7 @@ (:predicates (variable_info ?variable - variable_name ?value - variable_value ?assignment_operation - assignment) (executed_assingment ?id - assignment) + ; (executed_operation ?id - operation) (executed_binary_operation ?a - assignment ?b - assignment ?id - operation ?c - assignment) ) @@ -44,13 +45,15 @@ ?operation_id - operation ) :precondition (and + ; (not (executed_operation ?operation_id)) (variable_info ?varA ?valueA ?opA) (variable_info ?varB ?valueB ?opB) - (not (executed_binary_operation ?opA ?opB ?operation_id ?opC)) + ; (not (executed_binary_operation ?opA ?opB ?operation_id ?opC)) (executed_assingment ?opA) (executed_assingment ?opB) ) - :effect (and + :effect (and + ; (executed_operation ?operation_id) (variable_info ?varC ?valueC ?opC) (executed_binary_operation ?opA ?opB ?operation_id ?opC) ) diff --git a/implementation/program-2/problem1.pddl b/implementation/program-2/problem1.pddl index ab596036d7ff9e688374d6b01f00fd3f1929307d..1bc2e64d03482d449e3e5aea02a421079bee80f1 100644 --- a/implementation/program-2/problem1.pddl +++ b/implementation/program-2/problem1.pddl @@ -1,20 +1,27 @@ (define (problem problem1) (:domain program2) (:objects - assignmentA assignmentB assignmentC - assignment - sumAB - operation - varA varB varC - variable_name - valueA valueB valueC - variable_value + assignmentA assignmentA0 assignmentI0 assignmentConst - assignment + sumLoop0 - operation + varConst varA varI - variable_name + valueConst valueA valueI - variable_value ) (:init + (variable_info varConst valueConst assignmentConst) (variable_info varA valueA assignmentA) - (variable_info varB valueB assignmentB) + (variable_info varI valueI assignmentI0) ) (:goal (and + (executed_assingment assignmentConst) (executed_assingment assignmentA) - (executed_assingment assignmentB) - (executed_binary_operation assignmentA assignmentA sumAB assignmentC) - (executed_assingment assignmentC) + (executed_assingment assignmentI0) + (executed_binary_operation assignmentA assignmentConst sumLoop0 assignmentA0) + ; (executed_assingment assignmentI1) + ; (executed_binary_operation assignmentA0 assignmentI1 sumLoop1 assignmentA1) + ; (executed_assingment assignmentI2) + ; (executed_binary_operation assignmentA1 assignmentI1 sumLoop2 assignmentA2) + ; (executed_assingment assignmentI3) + ; (executed_assingment assignmentX) )) ) \ No newline at end of file diff --git a/implementation/program-2/program2.cpp b/implementation/program-2/program2.cpp index 642c23f2f9308345c1f3c95eb21887382b5d2723..b3b388f567a63035ceb83379f48868c021d3ce5d 100644 --- a/implementation/program-2/program2.cpp +++ b/implementation/program-2/program2.cpp @@ -2,12 +2,13 @@ int main() { - int count = 0; - for (int i = 0; i < 10; ++i) + int const_value = 1; + int a = 0; + for (int i = 0; i < 3; ++i) { - count += 1; + a += const_value; } - int x = count; + int x = a; std::cout << x << std::endl; return 0; } \ No newline at end of file