The Stanford Research Institute Problem Solver , known by its acronym STRIPS , is an automated planner developed by Richard Fikes and Nils Nilsson in 1971 at SRI International . The same name was later used to refer to the formal language of the inputs to this planner. This language is the base for most of the languages for expressing automated planning problem instances in use today; such languages are commonly known as action languages . This article only describes the language, not the planner.
64-414: A STRIPS instance is composed of: Mathematically, a STRIPS instance is a quadruple ⟨ P , O , I , G ⟩ {\displaystyle \langle P,O,I,G\rangle } , in which each component has the following meaning: A plan for such a planning instance is a sequence of operators that can be executed from the initial state and that leads to a goal state. Formally,
128-735: A {\displaystyle a} is assigned T and b {\displaystyle b} is assigned F , or a {\displaystyle a} is assigned F and b {\displaystyle b} is assigned T . Since L {\displaystyle {\mathcal {L}}} has ℵ 0 {\displaystyle \aleph _{0}} , that is, denumerably many propositional symbols, there are 2 ℵ 0 = c {\displaystyle 2^{\aleph _{0}}={\mathfrak {c}}} , and therefore uncountably many distinct possible interpretations of L {\displaystyle {\mathcal {L}}} as
192-575: A {\displaystyle a} , for example, there are 2 1 = 2 {\displaystyle 2^{1}=2} possible interpretations: either a {\displaystyle a} is assigned T , or a {\displaystyle a} is assigned F . And for the pair a {\displaystyle a} , b {\displaystyle b} there are 2 2 = 4 {\displaystyle 2^{2}=4} possible interpretations: either both are assigned T , or both are assigned F , or
256-569: A 1 , a 2 , … , a n ] ) {\displaystyle F=\operatorname {succ} (I,[a_{1},a_{2},\ldots ,a_{n}])} satisfies the following two conditions: The above language is actually the propositional version of STRIPS; in practice, conditions are often about objects: for example, that the position of a robot can be modeled by a predicate A t {\displaystyle At} , and A t ( r o o m 1 ) {\displaystyle At(room1)} means that
320-429: A broader category that includes logical connectives. Sentential connectives are any linguistic particles that bind sentences to create a new compound sentence, or that inflect a single sentence to create a new sentence. A logical connective , or propositional connective , is a kind of sentential connective with the characteristic feature that, when the original sentences it operates on are (or express) propositions ,
384-429: A counterexample , where a counterexample is defined as a case I {\displaystyle {\mathcal {I}}} in which the argument's premises { φ 1 , φ 2 , φ 3 , . . . , φ n } {\displaystyle \{\varphi _{1},\varphi _{2},\varphi _{3},...,\varphi _{n}\}} are all true but
448-450: A formula of propositional logic is defined recursively by these definitions: Writing the result of applying c n m {\displaystyle c_{n}^{m}} to ⟨ {\displaystyle \langle } A, B, C, … ⟩ {\displaystyle \rangle } in functional notation, as c n m {\displaystyle c_{n}^{m}} (A, B, C, …), we have
512-473: A line, called the inference line , separated by a comma , which indicates combination of premises. The conclusion is written below the inference line. The inference line represents syntactic consequence , sometimes called deductive consequence , which is also symbolized with ⊢. So the above can also be written in one line as P → Q , P ⊢ Q {\displaystyle P\to Q,P\vdash Q} . Syntactic consequence
576-438: A new era in logic's history; however, advances in propositional logic were still made after Frege, including natural deduction , truth trees and truth tables . Natural deduction was invented by Gerhard Gentzen and Stanisław Jaśkowski . Truth trees were invented by Evert Willem Beth . The invention of truth tables, however, is of uncertain attribution. Within works by Frege and Bertrand Russell , are ideas influential to
640-628: A particularly brief one, for the common set of five connectives, is this single clause: This clause, due to its self-referential nature (since ϕ {\displaystyle \phi } is in some branches of the definition of ϕ {\displaystyle \phi } ), also acts as a recursive definition , and therefore specifies the entire language. To expand it to add modal operators , one need only add … | ◻ ϕ | ◊ ϕ {\displaystyle |~\Box \phi ~|~\Diamond \phi } to
704-477: A propositional STRIPS instance is PSPACE-complete . Various restrictions can be enforced in order to decide if a plan exists in polynomial time or at least make it an NP-complete problem. In the monkey and banana problem , the robot monkey has to execute a sequence of actions to reach the banana at the ceiling. A single action provides a small change in the game. To simplify the planning process, it make sense to invent an abstract action, which isn't available in
SECTION 10
#1732791657696768-742: A set of propositional connectives c 1 1 {\displaystyle c_{1}^{1}} , c 2 1 {\displaystyle c_{2}^{1}} , c 3 1 {\displaystyle c_{3}^{1}} , ..., c 1 2 {\displaystyle c_{1}^{2}} , c 2 2 {\displaystyle c_{2}^{2}} , c 3 2 {\displaystyle c_{3}^{2}} , ..., c 1 3 {\displaystyle c_{1}^{3}} , c 2 3 {\displaystyle c_{2}^{3}} , c 3 3 {\displaystyle c_{3}^{3}} , ...,
832-536: A state is a set of conditions: a state is represented by the set of conditions that are true in it. Transitions between states are modeled by a transition function, which is a function mapping states into new states that result from the execution of actions. Since states are represented by sets of conditions, the transition function relative to the STRIPS instance ⟨ P , O , I , G ⟩ {\displaystyle \langle P,O,I,G\rangle }
896-449: A value ( excluded middle ), are distinctive features of classical logic. To learn about nonclassical logics with more than two truth-values, and their unique semantics, one may consult the articles on " Many-valued logic ", " Three-valued logic ", " Finite-valued logic ", and " Infinite-valued logic ". For a given language L {\displaystyle {\mathcal {L}}} , an interpretation , valuation , or case ,
960-904: A whole. Where I {\displaystyle {\mathcal {I}}} is an interpretation and φ {\displaystyle \varphi } and ψ {\displaystyle \psi } represent formulas, the definition of an argument , given in § Arguments , may then be stated as a pair ⟨ { φ 1 , φ 2 , φ 3 , . . . , φ n } , ψ ⟩ {\displaystyle \langle \{\varphi _{1},\varphi _{2},\varphi _{3},...,\varphi _{n}\},\psi \rangle } , where { φ 1 , φ 2 , φ 3 , . . . , φ n } {\displaystyle \{\varphi _{1},\varphi _{2},\varphi _{3},...,\varphi _{n}\}}
1024-508: Is classical truth-functional propositional logic , in which formulas are interpreted as having precisely one of two possible truth values , the truth value of true or the truth value of false . The principle of bivalence and the law of excluded middle are upheld. By comparison with first-order logic , truth-functional propositional logic is considered to be zeroth-order logic . Although propositional logic (also called propositional calculus) had been hinted by earlier philosophers, it
1088-444: Is Misplaced Pages?", and imperative statements, such as "Please add citations to support the claims in this article.". Such non-declarative sentences have no truth value , and are only dealt with in nonclassical logics , called erotetic and imperative logics . In propositional logic, a statement can contain one or more other statements as parts. Compound sentences are formed from simpler sentences and express relationships among
1152-412: Is a classically valid form. So, in classical logic, the argument is valid , although it may or may not be sound , depending on the meteorological facts in a given context. This example argument will be reused when explaining § Formalization . An argument is valid if, and only if, it is necessary that, if all its premises are true, its conclusion is true. Alternatively, an argument
1216-463: Is a free online encyclopedia that anyone can edit" evaluates to True , while "Misplaced Pages is a paper encyclopedia " evaluates to False . In other respects, the following formal semantics can apply to the language of any propositional logic, but the assumptions that there are only two semantic values ( bivalence ), that only one of the two is assigned to each formula in the language ( noncontradiction ), and that every formula gets assigned
1280-407: Is a logical consequence of its premises, which, when this is understood as semantic consequence , means that there is no case in which the premises are true but the conclusion is not true – see § Semantics below. Propositional logic is typically studied through a formal system in which formulas of a formal language are interpreted to represent propositions . This formal language
1344-425: Is a function where 2 P {\displaystyle 2^{P}} is the set of all subsets of P {\displaystyle P} , and is therefore the set of all possible states. The transition function succ {\displaystyle \operatorname {succ} } for a state C ⊆ P {\displaystyle C\subseteq P} , can be defined as follows, using
SECTION 20
#17327916576961408-439: Is an assignment of semantic values to each formula of L {\displaystyle {\mathcal {L}}} . For a formal language of classical logic, a case is defined as an assignment , to each formula of L {\displaystyle {\mathcal {L}}} , of one or the other, but not both, of the truth values , namely truth ( T , or 1) and falsity ( F , or 0). An interpretation that follows
1472-418: Is common to represent propositional constants by A , B , and C , propositional variables by P , Q , and R , and schematic letters are often Greek letters, most often φ , ψ , and χ . However, some authors recognize only two "propositional constants" in their formal system: the special symbol ⊤ {\displaystyle \top } , called "truth", which always evaluates to True , and
1536-414: Is contrasted with semantic consequence , which is symbolized with ⊧. In this case, the conclusion follows syntactically because the natural deduction inference rule of modus ponens has been assumed. For more on inference rules, see the sections on proof systems below. The language (commonly called L {\displaystyle {\mathcal {L}}} ) of a propositional calculus
1600-404: Is defined as a pair of things, namely a set of sentences, called the premises , and a sentence, called the conclusion . The conclusion is claimed to follow from the premises, and the premises are claimed to support the conclusion. The following is an example of an argument within the scope of propositional logic: The logical form of this argument is known as modus ponens , which
1664-473: Is defined in terms of: A well-formed formula is any atomic formula, or any formula that can be built up from atomic formulas by means of operator symbols according to the rules of the grammar. The language L {\displaystyle {\mathcal {L}}} , then, is defined either as being identical to its set of well-formed formulas, or as containing that set (together with, for instance, its set of connectives and variables). Usually
1728-656: Is far from clear that any one person should be given the title of 'inventor' of truth-tables". Propositional logic, as currently studied in universities, is a specification of a standard of logical consequence in which only the meanings of propositional connectives are considered in evaluating the conditions for the truth of a sentence, or whether a sentence logically follows from some other sentence or group of sentences. Propositional logic deals with statements , which are defined as declarative sentences having truth value. Examples of statements might include: Declarative sentences are contrasted with questions , such as "What
1792-625: Is interpreted as "It's raining" and Q as "it's cloudy" these symbolic expressions correspond exactly with the original expression in natural language. Not only that, but they will also correspond with any other inference with the same logical form . When a formal system is used to represent formal logic, only statement letters (usually capital roman letters such as P {\displaystyle P} , Q {\displaystyle Q} and R {\displaystyle R} ) are represented directly. The natural language propositions that arise when they're interpreted are outside
1856-439: Is not concerned with the structure of propositions beyond the point where they cannot be decomposed any more by logical connectives, it is typically studied by replacing such atomic (indivisible) statements with letters of the alphabet, which are interpreted as variables representing statements ( propositional variables ). With propositional variables, the § Example argument would then be symbolized as follows: When P
1920-525: Is not specifically required by the other definitions in the syntax. In particular, it excludes infinitely long formulas from being well-formed . An alternative to the syntax definitions given above is to write a context-free (CF) grammar for the language L {\displaystyle {\mathcal {L}}} in Backus-Naur form (BNF). This is more common in computer science than in philosophy . It can be done in many ways, of which
1984-471: Is often a limiting assumption, as there are natural examples of planning problems in which the initial state is not fully known. Extensions of STRIPS have been developed to deal with partially known initial states. A monkey is at location A in a lab. There is a box in location C. The monkey wants the bananas that are hanging from the ceiling in location B, but it needs to move the box and climb onto it in order to reach them. Deciding whether any plan exists for
Stanford Research Institute Problem Solver - Misplaced Pages Continue
2048-423: Is the basis for proof systems , which allow a conclusion to be derived from premises if, and only if, it is a logical consequence of them. This section will show how this works by formalizing the § Example argument . The formal language for a propositional calculus will be fully specified in § Language , and an overview of proof systems will be given in § Proof systems . Since propositional logic
2112-436: Is the interpretation function for M {\displaystyle {\mathfrak {M}}} . Some of these connectives may be defined in terms of others: for instance, implication, p → q, may be defined in terms of disjunction and negation, as ¬p ∨ q; and disjunction may be defined in terms of negation and conjunction, as ¬(¬p ∧ ¬q). In fact, a truth-functionally complete system, in
2176-456: Is the interpretation of φ {\displaystyle \varphi } , the five connectives are defined as: Instead of I ( φ ) {\displaystyle {\mathcal {I}}(\varphi )} , the interpretation of φ {\displaystyle \varphi } may be written out as | φ | {\displaystyle |\varphi |} , or, for definitions such as
2240-496: Is the set of premises and ψ {\displaystyle \psi } is the conclusion. The definition of an argument's validity , i.e. its property that { φ 1 , φ 2 , φ 3 , . . . , φ n } ⊨ ψ {\displaystyle \{\varphi _{1},\varphi _{2},\varphi _{3},...,\varphi _{n}\}\models \psi } , can then be stated as its absence of
2304-405: Is valid if, and only if, it is impossible for all the premises to be true while the conclusion is false. Validity is contrasted with soundness . An argument is sound if, and only if, it is valid and all its premises are true. Otherwise, it is unsound . Logic, in general, aims to precisely specify valid arguments. This is done by defining a valid argument as one in which its conclusion
2368-480: The truth values that they take when the propositional variables that they're applied to take either of the two possible truth values, the semantic definition of the connectives is usually represented as a truth table for each of the connectives, as seen below: This table covers each of the main five logical connectives : conjunction (here notated p ∧ q), disjunction (p ∨ q), implication (p → q), biconditional (p ↔ q) and negation , (¬p, or ¬q, as
2432-712: The 20th century, in the wake of the (re)-discovery of propositional logic. Symbolic logic , which would come to be important to refine propositional logic, was first developed by the 17th/18th-century mathematician Gottfried Leibniz , whose calculus ratiocinator was, however, unknown to the larger logical community. Consequently, many of the advances achieved by Leibniz were recreated by logicians like George Boole and Augustus De Morgan , completely independent of Leibniz. Gottlob Frege's predicate logic builds upon propositional logic, and has been described as combining "the distinctive features of syllogistic logic and propositional logic." Consequently, predicate logic ushered in
2496-527: The above, I ( φ ) = T {\displaystyle {\mathcal {I}}(\varphi )={\mathsf {T}}} may be written simply as the English sentence " φ {\displaystyle \varphi } is given the value T {\displaystyle {\mathsf {T}}} ". Yet other authors may prefer to speak of a Tarskian model M {\displaystyle {\mathfrak {M}}} for
2560-401: The atoms as ultimate building blocks. Composite formulas (all formulas besides atoms) are called molecules , or molecular sentences . (This is an imperfect analogy with chemistry , since a chemical molecule may sometimes have only one atom, as in monatomic gases .) The definition that "nothing else is a formula", given above as Definition 3 , excludes any formula from the language which
2624-405: The biconditional. (As to equivalence, Howson calls it "truth-functional equivalence", while Cunningham calls it "logical equivalence".) Equivalence is symbolized with ⇔ and is a metalanguage symbol, while a biconditional is symbolized with ↔ and is a logical connective in the object language L {\displaystyle {\mathcal {L}}} . Regardless, an equivalence or biconditional
Stanford Research Institute Problem Solver - Misplaced Pages Continue
2688-451: The case may be). It is sufficient for determining the semantics of each of these operators. For more truth tables for more different kinds of connectives, see the article " Truth table ". Some authors (viz., all the authors cited in this subsection) write out the connective semantics using a list of statements instead of a table. In this format, where I ( φ ) {\displaystyle {\mathcal {I}}(\varphi )}
2752-422: The conclusion ψ {\displaystyle \psi } is not true. As will be seen in § Semantic truth, validity, consequence , this is the same as to say that the conclusion is a semantic consequence of the premises. An interpretation assigns semantic values to atomic formulas directly. Molecular formulas are assigned a function of the value of their constituent atoms, according to
2816-469: The connective used; the connectives are defined in such a way that the truth-value of a sentence formed from atoms with connectives depends on the truth-values of the atoms that they're applied to, and only on those. This assumption is referred to by Colin Howson as the assumption of the truth-functionality of the connectives . Since logical connectives are defined semantically only in terms of
2880-796: The constituent sentences. This is done by combining them with logical connectives : the main types of compound sentences are negations , conjunctions , disjunctions , implications , and biconditionals , which are formed by using the corresponding connectives to connect propositions. In English , these connectives are expressed by the words "and" ( conjunction ), "or" ( disjunction ), "not" ( negation ), "if" ( material conditional ), and "if and only if" ( biconditional ). Examples of such compound sentences might include: If sentences lack any logical connectives, they are called simple sentences , or atomic sentences ; if they contain one or more logical connectives, they are called compound sentences , or molecular sentences . Sentential connectives are
2944-457: The construction of arguments based on them. Compound propositions are formed by connecting propositions by logical connectives representing the truth functions of conjunction , disjunction , implication , biconditional , and negation . Some sources include other connectives, as in the table below. Unlike first-order logic , propositional logic does not deal with non-logical objects, predicates about them, or quantifiers . However, all
3008-700: The domain to be solved much faster. In the context of reinforcement learning , a macro-operator is called an option. Similar to the definition within AI planning, the idea is, to provide a temporal abstraction (span over a longer period) and to modify the game state directly on a higher layer. Propositional logic The propositional calculus is a branch of logic . It is also called (first-order) propositional logic , statement logic , sentential calculus , sentential logic , or sometimes zeroth-order logic . It deals with propositions (which can be true or false ) and relations between propositions, including
3072-409: The end of the clause. Mathematicians sometimes distinguish between propositional constants, propositional variables , and schemata. Propositional constants represent some particular proposition, while propositional variables range over the set of all atomic propositions. Schemata, or schematic letters , however, range over all formulas. (Schematic letters are also called metavariables .) It
3136-484: The following as examples of well-formed formulas: What was given as Definition 2 above, which is responsible for the composition of formulas, is referred to by Colin Howson as the principle of composition . It is this recursion in the definition of a language's syntax which justifies the use of the word "atomic" to refer to propositional variables, since all formulas in the language L {\displaystyle {\mathcal {L}}} are built up from
3200-405: The initial state satisfies the goal conditions. Formally, [ a 1 , a 2 , … , a n ] {\displaystyle [a_{1},a_{2},\ldots ,a_{n}]} is a plan for G = ⟨ N , M ⟩ {\displaystyle G=\langle N,M\rangle } if F = succ ( I , [
3264-573: The invention of truth tables. The actual tabular structure (being formatted as a table), itself, is generally credited to either Ludwig Wittgenstein or Emil Post (or both, independently). Besides Frege and Russell, others credited with having ideas preceding truth tables include Philo, Boole, Charles Sanders Peirce , and Ernst Schröder . Others credited with the tabular structure include Jan Łukasiewicz , Alfred North Whitehead , William Stanley Jevons , John Venn , and Clarence Irving Lewis . Ultimately, some have concluded, like John Shosky, that "It
SECTION 50
#17327916576963328-393: The language, so that instead they'll use the notation M ⊨ φ {\displaystyle {\mathfrak {M}}\models \varphi } , which is equivalent to saying I ( φ ) = T {\displaystyle {\mathcal {I}}(\varphi )={\mathsf {T}}} , where I {\displaystyle {\mathcal {I}}}
3392-465: The machinery of propositional logic is included in first-order logic and higher-order logics. In this sense, propositional logic is the foundation of first-order logic and higher-order logic. Propositional logic is typically studied with a formal language , in which propositions are represented by letters, which are called propositional variables . These are then used, together with symbols for connectives, to make compound propositions. Because of this,
3456-398: The new sentence that results from its application also is (or expresses) a proposition . Philosophers disagree about what exactly a proposition is, as well as about which sentential connectives in natural languages should be counted as logical connectives. Sentential connectives are also called sentence-functors , and logical connectives are also called truth-functors . An argument
3520-410: The normal rule description. The super-action consists of low level actions and can reach high-level goals. The advantage is that the computational complexity is lower, and longer tasks can be planned by the solver. Identifying new macro operators for a domain can be realized with genetic programming . The idea is, not to plan the domain itself, but in the pre-step, a heuristics is created that allows
3584-422: The propositional variables are called atomic formulas of a formal zeroth-order language. While the atomic propositions are typically represented by letters of the alphabet , there is a variety of notations to represent the logical connectives. The following table shows the main notational variants for each of the connectives in propositional logic. The most thoroughly researched branch of propositional logic
3648-489: The robot is in Room1. In this case, actions can have free variables , which are implicitly existentially quantified. In other words, an action represents all possible propositional actions that can be obtained by replacing each free variable with a value. The initial state is considered fully known in the language described above: conditions that are not in I {\displaystyle I} are all assumed false. This
3712-896: The rules of classical logic is sometimes called a Boolean valuation . An interpretation of a formal language for classical logic is often expressed in terms of truth tables . Since each formula is only assigned a single truth-value, an interpretation may be viewed as a function , whose domain is L {\displaystyle {\mathcal {L}}} , and whose range is its set of semantic values V = { T , F } {\displaystyle {\mathcal {V}}=\{{\mathsf {T}},{\mathsf {F}}\}} , or V = { 1 , 0 } {\displaystyle {\mathcal {V}}=\{1,0\}} . For n {\displaystyle n} distinct propositional symbols there are 2 n {\displaystyle 2^{n}} distinct possible interpretations. For any particular symbol
3776-425: The scope of the system, and the relation between the formal system and its interpretation is likewise outside the formal system itself. If we assume that the validity of modus ponens has been accepted as an axiom , then the same § Example argument can also be depicted like this: This method of displaying it is Gentzen 's notation for natural deduction and sequent calculus . The premises are shown above
3840-668: The sense that all and only the classical propositional tautologies are theorems, may be derived using only disjunction and negation (as Russell , Whitehead , and Hilbert did), or using only implication and negation (as Frege did), or using only conjunction and negation, or even using only a single connective for "not and" (the Sheffer stroke ), as Jean Nicod did. A joint denial connective ( logical NOR ) will also suffice, by itself, to define all other connectives, but no other connectives have this property. Some authors, namely Howson and Cunningham, distinguish equivalence from
3904-409: The simplifying assumption that actions can always be executed but have no effect if their preconditions are not met: The function succ {\displaystyle \operatorname {succ} } can be extended to sequences of actions by the following recursive equations: A plan for a STRIPS instance is a sequence of actions such that the state that results from executing the actions in order from
SECTION 60
#17327916576963968-546: The special symbol ⊥ {\displaystyle \bot } , called "falsity", which always evaluates to False . Other authors also include these symbols, with the same meaning, but consider them to be "zero-place truth-functors", or equivalently, " nullary connectives". To serve as a model of the logic of a given natural language , a formal language must be semantically interpreted. In classical logic , all propositions evaluate to exactly one of two truth-values : True or False . For example, " Misplaced Pages
4032-542: The syntax of L {\displaystyle {\mathcal {L}}} is defined recursively by just a few definitions, as seen next; some authors explicitly include parentheses as punctuation marks when defining their language's syntax, while others use them without comment. Given a set of atomic propositional variables p 1 {\displaystyle p_{1}} , p 2 {\displaystyle p_{2}} , p 3 {\displaystyle p_{3}} , ..., and
4096-419: Was developed into a formal logic ( Stoic logic ) by Chrysippus in the 3rd century BC and expanded by his successor Stoics . The logic was focused on propositions . This was different from the traditional syllogistic logic , which focused on terms . However, most of the original writings were lost and, at some time between the 3rd and 6th century CE, Stoic logic faded into oblivion, to be resurrected only in
#695304