Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
First-order logic
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==Deductive systems== A ''deductive system'' is used to demonstrate, on a purely syntactic basis, that one formula is a logical consequence of another formula. There are many such systems for first-order logic, including [[Hilbert-style deductive system]]s, [[natural deduction]], the [[sequent calculus]], the [[Method of analytic tableaux|tableaux method]], and [[Resolution (logic)|resolution]]. These share the common property that a deduction is a finite syntactic object; the format of this object, and the way it is constructed, vary widely. These finite deductions themselves are often called ''derivations'' in proof theory. They are also often called ''proofs'' but are completely formalized unlike natural-language [[mathematical proofs]]. A deductive system is ''sound'' if any formula that can be derived in the system is logically valid. Conversely, a deductive system is ''complete'' if every logically valid formula is derivable. All of the systems discussed in this article are both sound and complete. They also share the property that it is possible to effectively verify that a purportedly valid deduction is actually a deduction; such deduction systems are called ''effective''. A key property of deductive systems is that they are purely syntactic, so that derivations can be verified without considering any interpretation. Thus, a sound argument is correct in every possible interpretation of the language, regardless of whether that interpretation is about mathematics, economics, or some other area. In general, logical consequence in first-order logic is only [[semidecidability|semidecidable]]: if a sentence A logically implies a sentence B then this can be discovered (for example, by searching for a proof until one is found, using some effective, sound, complete proof system). However, if A does not logically imply B, this does not mean that A logically implies the negation of B. There is no effective procedure that, given formulas A and B, always correctly decides whether A logically implies B. ===Rules of inference=== {{Further|List of rules of inference}} A ''[[rule of inference]]'' states that, given a particular formula (or set of formulas) with a certain property as a hypothesis, another specific formula (or set of formulas) can be derived as a conclusion. The rule is sound (or truth-preserving) if it preserves validity in the sense that whenever any interpretation satisfies the hypothesis, that interpretation also satisfies the conclusion. For example, one common rule of inference is the ''rule of substitution''. If ''t'' is a term and Ο is a formula possibly containing the variable ''x'', then Ο[''t''/''x''] is the result of replacing all free instances of ''x'' by ''t'' in Ο. The substitution rule states that for any Ο and any term ''t'', one can conclude Ο[''t''/''x''] from Ο provided that no free variable of ''t'' becomes bound during the substitution process. (If some free variable of ''t'' becomes bound, then to substitute ''t'' for ''x'' it is first necessary to change the bound variables of Ο to differ from the free variables of ''t''.) To see why the restriction on bound variables is necessary, consider the logically valid formula Ο given by <math>\exists x (x = y)</math>, in the signature of (0,1,+,Γ,=) of arithmetic. If ''t'' is the term "x + 1", the formula Ο[''t''/''y''] is <math>\exists x ( x = x+1)</math>, which will be false in many interpretations. The problem is that the free variable ''x'' of ''t'' became bound during the substitution. The intended replacement can be obtained by renaming the bound variable ''x'' of Ο to something else, say ''z'', so that the formula after substitution is <math>\exists z ( z = x+1)</math>, which is again logically valid. The substitution rule demonstrates several common aspects of rules of inference. It is entirely syntactical; one can tell whether it was correctly applied without appeal to any interpretation. It has (syntactically defined) limitations on when it can be applied, which must be respected to preserve the correctness of derivations. Moreover, as is often the case, these limitations are necessary because of interactions between free and bound variables that occur during syntactic manipulations of the formulas involved in the inference rule. ===Hilbert-style systems and natural deduction=== A deduction in a Hilbert-style deductive system is a list of formulas, each of which is a ''logical axiom'', a hypothesis that has been assumed for the derivation at hand or follows from previous formulas via a rule of inference. The logical axioms consist of several [[axiom schema]]s of logically valid formulas; these encompass a significant amount of propositional logic. The rules of inference enable the manipulation of quantifiers. Typical Hilbert-style systems have a small number of rules of inference, along with several infinite schemas of logical axioms. It is common to have only [[modus ponens]] and [[universal generalization]] as rules of inference. Natural deduction systems resemble Hilbert-style systems in that a deduction is a finite list of formulas. However, natural deduction systems have no logical axioms; they compensate by adding additional rules of inference that can be used to manipulate the logical connectives in formulas in the proof. ===Sequent calculus=== {{Further | Sequent calculus}} The sequent calculus was developed to study the properties of natural deduction systems.<ref>[[Natarajan Shankar|Shankar, N.]], Owre, S., [[John Rushby|Rushby, J. M.]], & Stringer-Calvert, D. W. J., [https://pvs.csl.sri.com/doc/pvs-prover-guide.pdf ''PVS Prover Guide'' 7.1] ([[Menlo Park, California|Menlo Park]]: [[SRI International]], August 2020).</ref> Instead of working with one formula at a time, it uses ''sequents'', which are expressions of the form: :<math>A_1, \ldots, A_n \vdash B_1, \ldots, B_k,</math> where A<sub>1</sub>, ..., A<sub>''n''</sub>, B<sub>1</sub>, ..., B<sub>''k''</sub> are formulas and the turnstile symbol <math>\vdash</math> is used as punctuation to separate the two halves. Intuitively, a sequent expresses the idea that <math>(A_1 \land \cdots\land A_n)</math> implies <math>(B_1\lor\cdots\lor B_k)</math>. ===Tableaux method=== [[File:Prop-tableau-4.svg|thumb|right|150px|A tableaux proof for the [[propositional logic|propositional]] formula {{nowrap|1=((a β¨ Β¬b) β§ b) β a}}]] {{Further | Method of analytic tableaux}} Unlike the methods just described the derivations in the tableaux method are not lists of formulas. Instead, a derivation is a tree of formulas. To show that a formula A is provable, the tableaux method attempts to demonstrate that the negation of A is unsatisfiable. The tree of the derivation has <math>\lnot A</math> at its root; the tree branches in a way that reflects the structure of the formula. For example, to show that <math>C \lor D</math> is unsatisfiable requires showing that C and D are each unsatisfiable; this corresponds to a branching point in the tree with parent <math>C \lor D</math> and children C and D. ===Resolution=== {{Main|Resolution (logic)}} The [[resolution (logic)|resolution rule]] is a single rule of inference that, together with [[Unification (computing)#Definition of unification for first-order logic|unification]], is sound and complete for first-order logic. As with the tableaux method, a formula is proved by showing that the negation of the formula is unsatisfiable. Resolution is commonly used in automated theorem proving. The resolution method works only with formulas that are disjunctions of atomic formulas; arbitrary formulas must first be converted to this form through [[Skolemization]]. The resolution rule states that from the hypotheses <math>A_1 \lor\cdots\lor A_k \lor C</math> and <math>B_1\lor\cdots\lor B_l\lor\lnot C</math>, the conclusion <math>A_1\lor\cdots\lor A_k\lor B_1\lor\cdots\lor B_l</math> can be obtained. ===Provable identities=== Many identities can be proved, which establish equivalences between particular formulas. These identities allow for rearranging formulas by moving quantifiers across other connectives and are useful for putting formulas in [[prenex normal form]]. Some provable identities include: :<math>\lnot \forall x \, P(x) \Leftrightarrow \exists x \, \lnot P(x)</math> :<math>\lnot \exists x \, P(x) \Leftrightarrow \forall x \, \lnot P(x)</math> :<math>\forall x \, \forall y \, P(x,y) \Leftrightarrow \forall y \, \forall x \, P(x,y)</math> :<math>\exists x \, \exists y \, P(x,y) \Leftrightarrow \exists y \, \exists x \, P(x,y)</math> :<math>\forall x \, P(x) \land \forall x \, Q(x) \Leftrightarrow \forall x \, (P(x) \land Q(x)) </math> :<math>\exists x \, P(x) \lor \exists x \, Q(x) \Leftrightarrow \exists x \, (P(x) \lor Q(x)) </math> :<math>P \land \exists x \, Q(x) \Leftrightarrow \exists x \, (P \land Q(x)) </math> (where <math>x</math> must not occur free in <math>P</math>) :<math>P \lor \forall x \, Q(x) \Leftrightarrow \forall x \, (P \lor Q(x)) </math> (where <math>x</math> must not occur free in <math>P</math>)
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)