Content deleted Content added
Nick Number (talk | contribs) added sic tag WP:TYPO |
m Open access bot: url-access updated in citation with #oabot. |
||
(21 intermediate revisions by 16 users not shown) | |||
Line 1:
{{Short description|Form of second-order logic}}
In [[mathematical logic]], '''monadic second-order logic''' ('''MSO''') is the fragment of [[
Second-order logic allows quantification over [[Predicate (mathematical logic)|predicates]]. However, MSO is the [[Fragment (logic)|fragment]] in which second-order quantification is limited to monadic predicates (predicates having a single argument). This is often described as quantification over "sets" because monadic predicates are equivalent in expressive power to sets (the set of elements for which the predicate is true).
== Variants ==
Monadic second-order logic comes in two variants. In the variant considered over structures such as graphs and in Courcelle's theorem, the formula may involve non-monadic predicates (in this case the binary edge predicate <math>E(x, y)</math>), but quantification is restricted to be over monadic predicates only. In the variant considered in automata theory and the Büchi–Elgot–Trakhtenbrot theorem, all predicates, including those in the formula itself, must be monadic, with the exceptions of equality (<math>=</math>) and ordering (<math><</math>) relations.
== Computational complexity of evaluation ==
Line 12 ⟶ 17:
| title = Monadic generalized spectra
| volume = 21
| year = 1975| doi = 10.1002/malq.19750210112 }}.</ref><ref>{{citation
| last1 = Fagin | first1 = R. | author1-link = Ronald Fagin
| last2 = Stockmeyer | first2 = L. | author2-link = Larry Stockmeyer
Line 20 ⟶ 25:
| publisher = Institute of Electrical and Electronics Engineers
| title = Proceedings of the Eighth Annual Structure in Complexity Theory Conference
| year = 1993| s2cid = 32740047 }}.</ref> The existence of an analogous pair of complementary problems, only one of which has an existential second-order formula (without the restriction to monadic formulas) is equivalent to the inequality of NP and [[coNP]], an open question in computational complexity.
By contrast, when we wish to check whether a Boolean MSO formula is satisfied by an input finite [[tree (data structure)|tree]], this problem can be solved in linear time in the tree, by translating the Boolean MSO formula to a [[tree automaton]]<ref>{{Cite journal|
For MSO formulas that have [[free variable]]s, when the input data is a tree or has bounded treewidth, there are efficient [[enumeration algorithm]]s to produce the set of all solutions,<ref>{{Cite journal|last=Bagan|first=Guillaume|date=2006|editor-last=Ésik|editor-first=Zoltán|title=MSO Queries on Tree Decomposable Structures Are Computable with Linear Delay
== Decidability and complexity of satisfiability ==
The satisfiability problem for monadic second-order logic is undecidable in general because this logic subsumes [[first-order logic]].
The monadic second-order theory of the infinite complete [[binary tree]], called [[S2S (mathematics)|S2S]], is [[decidability (logic)|decidable]].<ref>{{Cite journal|last=Rabin|first=Michael O.|date=1969|title=Decidability of Second-Order Theories and Automata on Infinite Trees|url=https://www.jstor.org/stable/1995086|journal=[[Transactions of the American Mathematical Society]]|volume=141|pages=1–35|doi=10.2307/1995086|jstor=1995086|issn=0002-9947|url-access=subscription}}</ref> As a consequence of this result, the following theories are decidable:
* The monadic second-order theory of trees.
* The monadic second
*
For each of these theories (S2S, S1S,
=== Use of satisfiability of MSO on trees in verification ===
Monadic second-order logic of trees has applications in [[formal verification]]. Decision procedures for MSO satisfiability<ref>{{Cite journal|last1=Henriksen|first1=Jesper G.|last2=Jensen|first2=Jakob|last3=Jørgensen|first3=Michael|last4=Klarlund|first4=Nils|last5=Paige|first5=Robert|last6=Rauhe|first6=Theis|last7=Sandholm|first7=Anders|date=1995|editor-last=Brinksma|editor-first=E.|editor2-last=Cleaveland|editor2-first=W. R.|editor3-last=Larsen|editor3-first=K. G.|editor4-last=Margaria|editor4-first=T.|editor4-link=Tiziana Margaria|editor5-last=Steffen|editor5-first=B.|title=Mona: Monadic second-order logic in practice|journal=Tools and Algorithms for the Construction and Analysis of Systems|series=Lecture Notes in Computer Science|volume=1019|language=en|___location=Berlin, Heidelberg|publisher=Springer|pages=89–110|doi=10.1007/3-540-60630-0_5|isbn=978-3-540-48509-4|doi-access=free}}</ref><ref>{{Cite journal|last1=Fiedor|first1=Tomáš|last2=Holík|first2=Lukáš|last3=Lengál|first3=Ondřej|last4=Vojnar|first4=Tomáš|date=2019-04-01|title=Nested antichains for WS1S|url=https://doi.org/10.1007/s00236-018-0331-z|journal=Acta Informatica|language=en|volume=56|issue=3|pages=205–228|doi=10.1007/s00236-018-0331-z|s2cid=57189727|issn=1432-0525|url-access=subscription}}</ref><ref>{{Cite journal|last1=Traytel|first1=Dmitriy|last2=Nipkow|first2=Tobias|date=2013-09-25|title=Verified decision procedures for MSO on words based on derivatives of regular expressions|url=https://doi.org/10.1145/2544174.2500612|journal=ACM SIGPLAN Notices|volume=48|issue=9|pages=3–f12|doi=10.1145/2544174.2500612|issn=0362-1340|hdl=20.500.11850/106053|hdl-access=free|url-access=subscription}}</ref> have been used to prove properties of programs manipulating linked [[data structures]],<ref>{{Cite book|last1=Møller|first1=Anders|last2=Schwartzbach|first2=Michael I.|title=Proceedings of the ACM SIGPLAN 2001 conference on Programming language design and implementation |chapter=The pointer assertion logic engine |date=2001-05-01|chapter-url=https://doi.org/10.1145/378795.378851|series=PLDI '01|___location=Snowbird, Utah, USA|publisher=Association for Computing Machinery|pages=221–231|doi=10.1145/378795.378851|isbn=978-1-58113-414-8|s2cid=11476928}}</ref> as a form of [[Shape analysis (program analysis)|shape analysis]], and for [[symbolic reasoning]] in [[hardware verification]].<ref>{{Cite journal|last1=Basin|first1=David|last2=Klarlund|first2=Nils|date=1998-11-01|title=Automata based symbolic reasoning in hardware verification|url=https://doi.org/10.1023/A:1008644009416|journal=Formal Methods in System Design|volume=13|issue=3|pages=255–288|doi=10.1023/A:1008644009416|issn=0925-9856|url-access=subscription}}</ref>
==See also==
* [[Descriptive complexity theory]]
* [[Monadic predicate calculus]]
* [[Second-order logic]]
==References==
{{reflist}}
{{Mathematical logic}}
[[Category:Mathematical logic]]
|