From 93e5da622f8a1cc1de9914e9d57a5419dacb3fc1 Mon Sep 17 00:00:00 2001 From: Claudio Scheer Date: Tue, 16 Jun 2020 13:49:51 -0300 Subject: [PATCH] Program 2 - first attempt --- implementation/program-1/problem1.pddl | 2 +- implementation/program-1/problem2.pddl | 12 +++++------- implementation/program-2/domain.pddl | 7 +++++-- implementation/program-2/problem1.pddl | 23 +++++++++++++++-------- implementation/program-2/program2.cpp | 9 +++++---- 5 files changed, 31 insertions(+), 22 deletions(-) diff --git a/implementation/program-1/problem1.pddl b/implementation/program-1/problem1.pddl index 654dced..3824f8a 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 53c4c50..d7234bf 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 b254c1b..bbe6da2 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 ab59603..1bc2e64 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 642c23f..b3b388f 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 -- GitLab