Closed zhangyuanlin closed 6 years ago
Definitions are boolean functions that have the closed world assumption added. If they are not defined to be positive, they will be negative by default. The usage of fluent function definitions in my mind is basically as "indicators". You set flags to become true when certain conditions are met, and false otherwise. They do not preserve their truth state through law of inertia, like boolean functions that are basic fluents.
what is the scenario being modeled?
Anu,
Can you send the program to Edward?
Cheers, Yuanlin
On Sep 1, 2018, at 11:18 AM, Edward Wertz notifications@github.com<mailto:notifications@github.com> wrote:
Definitions are boolean functions that have the closed world assumption added. If they are not defined to be positive, they will be negative by default. The usage of fluent function definitions in my mind is basically as "indicators". You set flags to become true when certain conditions are met, and false otherwise. They do not preserve their truth state through law of inertia, like boolean functions that are basic fluents.
what is the scenario being modeled?
—
Aside: The reason I break up the axioms into labelled groups is because there is an overlap on the syntax of state constraints and function definitions. A basic boolean function can occur in the head of state constraints, defined boolean functions occur in the head of function definitions. The grammar is ambiguous here. (parser misfiring between the non-terminal for state constraints and function definitions). I wanted a strong syntactic marker to distinguish the two kinds of axioms and avoid the ambiguity. Another bonus is enhanced readability and reasoning for humans. With everything intermingled it becomes hard to recall what type of axiom we are looking at. It also promotes modularity. If any of the axiom sections are getting too large, it is a good indicator that the module should be split into 2.
(Ed's email 9/1) I've commented there. Given that function definitions have the closed world assumption (page 12 of the ALM paper), is there a need to force them to be negative instead of only defining when they are positive?
I think it is clear now. No classical negation should be allowed in the head of a definition, as in ALM paper.
CALM complains about this definition
We assume CALM is right?
Definition of "definition" from ALM paper: