Re Relational Con Constraint So Solving ng in in SMT SMT Paul - - PowerPoint PPT Presentation

โ–ถ
re relational con constraint so solving ng in in smt smt
SMART_READER_LITE
LIVE PREVIEW

Re Relational Con Constraint So Solving ng in in SMT SMT Paul - - PowerPoint PPT Presentation

Re Relational Con Constraint So Solving ng in in SMT SMT Paul Meng , Andrew Reynolds, Cesare Tinelli, Clark Barrett Midwest Verification Day September 2018 Re Relational Re Reasoning Many problems can be modeled relationally


slide-1
SLIDE 1

Re Relational Con Constraint So Solving ng in in SMT SMT

Paul Meng, Andrew Reynolds, Cesare Tinelli, Clark Barrett

Midwest Verification Day September 2018

slide-2
SLIDE 2

Re Relational Re Reasoning

Many problems can be modeled relationally

  • Ontologies
  • Network systems
  • High-level system design
  • โ€ฆ

Relational logic is well suited for reasoning about structurally rich problems

slide-3
SLIDE 3

A A Moti tivati ting g Examp mple

slide-4
SLIDE 4

Mo Mode deling ng a To Toy File System

๐‘†๐‘๐‘๐‘ข โІ ๐ธ๐‘—๐‘  c๐‘๐‘œ๐‘ข๐‘“๐‘œ๐‘ข๐‘ก โІ ๐ธ๐‘—๐‘  ร— ๐บ๐‘—๐‘š๐‘“ โ‹ƒ ๐ธ๐‘—๐‘ 

  • ๐บ๐‘—๐‘š๐‘“ โ‹ƒ ๐ธ๐‘—๐‘ 
  • โІ

Root.*contents โˆ€ ๐‘’: ๐ธ๐‘—๐‘  | ยฌ(๐‘’ โІ ๐‘’.^contents) There is a root directory The contents defines relations between directories and files or directories All directories and files are reachable from the root directory by following the contents Contents relation is acyclic

contents contents contents

Root

* โ€“ reflexive-transitive closure ^ โ€“ transitive closure

A Relational Solver

slide-5
SLIDE 5

Tech chnical Pr Preliminaries Sa Satisfiability Mo Modul dulo T The heori ries ( (SMT MT)

slide-6
SLIDE 6

Sa Satisfiability Mo Modul dulo T The heori ries ( (SMT MT)

Decide the satisfiability of many-sorted first-order logic formulas with respect to combinations of background theories

(a[i] > a[j] ) โˆง (str = โ€œHello Worldโ€) โˆง (len(str) + x = 3) โˆง (A โˆจ B) โˆง (x โˆˆ S) Arrays Arithmetic Strings Booleans Sets

SMT Solver

SAT UNSAT

slide-7
SLIDE 7

Sa Satisfiability Mo Modul dulo T The heori ries ( (SMT MT)

A theory ๐“ค = (ฮฃ, ๐šฑ) defines

  • A signature ฮฃ: a set of non-logical symbols
  • A class of ฮฃ-interpretations ๐šฑ
  • Examples: integer arithmetic, strings, finite sets, โ€ฆ

ร˜ A simple theory: ฮฃ> = 0, 1, +, = ร˜ A formula in the theory ๐“ค>: ๐‘ฆ + 0 = 1

slide-8
SLIDE 8

Re Related Work

slide-9
SLIDE 9

Al Alloy

A declarative language based on first-order relational logic created at MIT Model and analyze structurally-rich systems SAT-based analysis by the Alloy Analyzer

  • Checks the consistency of an Alloy Specification
  • Can disprove but only prove a given property for an

Alloy specification within a given bounds

slide-10
SLIDE 10

Analysis of Alloy Speci cifications via SMT

El Ghazi et al. [8, 9, 10] translates the Alloy kernel language to SMT-LIB language and solves using SMT solvers (AlloyPE) The resulting SMT formulas are difficult to solve due to heavy usage of quantifiers in the translation

slide-11
SLIDE 11

Descr cription Logics cs (DLs)

Fragments of relational logic for efficient knowledge representation and reasoning Consider on purpose only unary and binary relations OWL: a standardized semantic web ontology language based on description logics

  • Efficient solvers: KONCLUDE, HermiT, FaCT++ and etc.
slide-12
SLIDE 12

A A Theo eory y of Fi Finite e Set t ๐“ค๐“ฃ in in SMT

A theory ๐“ค๐“ฃ of finite sets was introduced by Kshitij Bansal et al. [3] A modular set solver was implemented in CVC4

Signature ๐›ต๐’ฏ of ๐“ค๐“ฃ

  • Singleton set constructor: [โ–]: ๐›ฝ โ†’ Set ๐›ฝ
  • Subset: โŠ‘ โˆถ Set ๐›ฝ ร— Set ๐›ฝ โ†’ Bool
  • Membership: โˆˆ โˆถ ๐›ฝ ร— Set ๐›ฝ โ†’ Bool
  • Union, intersection, set difference:

โŠ“,โŠ”, \ โˆถ Set ๐›ฝ ร— Set ๐›ฝ โ†’ Set ๐›ฝ

slide-13
SLIDE 13

A A Th Theor

  • ry of
  • f Fi

Finite Re Relations ๐“ค๐“ข My My Research ch

slide-14
SLIDE 14

Ty Type Notations

๐”๐ฏ๐ช๐’ ๐œท๐Ÿ, โ€ฆ , ๐œท๐’ : a parametric tuple sort (n > 0) ๐“๐Ÿ๐ฎ(๐”๐ฏ๐ช๐’ ๐œท๐Ÿ, โ€ฆ , ๐œท๐’ ): a relational sort abbreviated as ๐’๐Ÿ๐ฆ๐’ ๐œท๐Ÿ, โ‹ฏ , ๐œท๐’

slide-15
SLIDE 15

Re Relational Signature ๐›ตโ„› of

  • f ๐“ค๐“ข

Tuple constructor:

_ , โ€ฆ , _ โˆถ ๐›ฝiร— โ‹ฏ ร— ๐›ฝjโ†’ Tupj ๐›ฝi, โ€ฆ , ๐›ฝj ร˜ Example: โŸจ1, 2โŸฉ a binary integer tuple constant

Singleton relation constructor:

[q] โˆถ Tupj ๐›ฝi, โ€ฆ , ๐›ฝj โ†’ Rels ๐›ฝi, โ€ฆ , ๐›ฝj ร˜ Example: โŸจ1, โ€œHelloโ€โŸฉ a singleton set of integer and string binary tuple

slide-16
SLIDE 16

Re Relational Signature ๐›ตโ„› of

  • f ๐“ค๐“ข

Product: โˆ— โˆถ Relx ๐›ฝ ร— Relj ๐›พ โ†’ Relxzj ๐›ฝ, ๐›พ

ร˜ Example: R1 = โŸจ1, 2โŸฉ, โŸจ3, 4โŸฉ ; R2 = โŸจ5, 6โŸฉ R1 โˆ— R2 = โŸจ1, 2, 5, 6โŸฉ, โŸจ3, 4, 5, 6โŸฉ

Join: โ‹ˆ โˆถ Relโ‚ฌzi ๐›ฝ, ๐›ฟ ร— Relโ€šzi ๐›ฟ, ๐›พ โ†’ Relโ‚ฌzโ€š ๐›ฝ, ๐›พ

with ๐‘ž + ๐‘Ÿ > 0 ร˜ Example: R1 = โŸจ1, โ€œHelloโ€โŸฉ, โŸจ2, โ€œHiโ€โŸฉ ; R2 = โŸจโ€œHelloโ€, 3โŸฉ, โŸจโ€œWorldโ€, 4โŸฉ ; R1 โ‹ˆ R2 = โŸจ1, 3โŸฉ

slide-17
SLIDE 17

Re Relational Signature ๐›ตโ„› of

  • f ๐“ค๐“ข

Transpose: _qi: Relx ๐›ฝi, โ‹ฏ , ๐›ฝx

โ†’ Relx ๐›ฝx, โ‹ฏ , ๐›ฝi ร˜ Example: R = โŸจ1, โ€œHelloโ€โŸฉ, โŸจ2, โ€œHiโ€โŸฉ ; R-1 = โŸจโ€œHelloโ€, 1โŸฉ, โŸจโ€œHiโ€, 2โŸฉ ;

Transitive Closure: _z: Relล’ ฮฑ, ฮฑ โ†’ Relล’ ฮฑ, ฮฑ

ร˜ Example: R = โŸจ1, 2โŸฉ, โŸจ2, 3โŸฉ R+ = โŸจ1, 2โŸฉ, โŸจ2, 3โŸฉ, โŸจ1, 3โŸฉ

slide-18
SLIDE 18

A A Calcu culus ๐““๐“ข fo for ๐“ค๐“ข

slide-19
SLIDE 19

A Compact ct Calcu culus for ๐“ค๐“ฃ

Derivation rules for intersection and union

slide-20
SLIDE 20

A Compact ct Calcu culus for ๐“ค๐“ฃ

Derivation rules for set difference, singleton, disequality and contradiction

slide-21
SLIDE 21

TR TRANSPO POSE Deriv ivation ion Rule le (_q๐Ÿ)

slide-22
SLIDE 22

JOIN JOIN Der Derivati tion Ru Rule e (โ‹ˆ)

๐“ is a fresh variable

slide-23
SLIDE 23

PR PRODUCT T Deriv ivation ion Rule le (โˆ—)

slide-24
SLIDE 24

TR TRANSITI TIVE CLOSURE Deriv ivation ion Rule le (_z)

๐“, ๐“i, ๐“ล’ are fresh variables

slide-25
SLIDE 25

An An Examp mple

๐’ฏ = { ๐‘, ๐‘ โˆˆ ๐‘†z, ๐‘, ๐‘ โˆ‰ R, ๐‘, ๐‘ โˆ‰ R โ‹ˆ R} ๐’ฏ โˆถ= ๐’ฏ โˆช { ๐‘, ๐‘ โˆˆ R}

JOIN UP UNSAT

๐‘, ๐‘ โˆ‰ R โ‹ˆ R

EQ UNSAT

๐’ฏ โˆถ= ๐’ฏ โˆช { ๐‘, ๐‘™ โˆˆ R, ๐‘™ ๐‘ โˆˆ R}

๐‘, ๐‘ โˆ‰ R TCLOS DOWN

๐’ฏ โˆถ= ๐’ฏ โˆช { ๐‘, ๐‘ โˆˆ R โ‹ˆ R}

EQ UNSAT UNSAT

๐’ฏ โˆถ= ๐’ฏ โˆช { ๐‘, ๐‘™i โˆˆ R, ๐‘™i, ๐‘™ล’ โˆˆ R, ๐‘™ล’ ๐‘ โˆˆ R, ๐‘™i โ‰‰ ๐‘™ล’}

NO RULES APPLY

(After exhaustively applying JOIN-UP)

SAT

slide-26
SLIDE 26

Calcu culus ๐““๐“ข Correct ctness

slide-27
SLIDE 27

Calcu culus ๐““๐“ข Correct ctness

Refutation Sound โ€“ a closed derivation tree proves that input constraints are UNSAT Model Sound โ€“ from a saturated branch of a derivation tree one can extract a model for input constraints

Detailed proof can be found in Meng et al. [21]

slide-28
SLIDE 28

Te Termination fo for a a Frag agment of

  • f ๐“ค๐“ข

Termination: If S is a finite set of constraints generated by the grammar above, then all derivation trees are finite.

Detailed proof can be found in Meng et al. [21]

slide-29
SLIDE 29

A Re Relational Solver in CVC4

Prop Engine

Theory Engine

Relations Arithmetic Strings Sets Others

Uninterpreted Function

slide-30
SLIDE 30

A Re Relational Solver in CVC4

  • Allows us to solve constraints from a combination
  • f relations and other domains
  • Extend SMT-LIB/CVC4 native language with

support for relations

  • Enables natural mappings from several relational

modeling languages to SMT

  • Brings to those languages the power of SMT

solvers and their ability to reason efficiently about built-in types

slide-31
SLIDE 31

Ap Applicati tions of ๐“ค๐“ข

slide-32
SLIDE 32

Ap Applicati tion 1: 1: Al Alloy y to CV CVC4 C4

Support Alloy kernel language in SMT natively Finite model finding of CVC4 can efficiently reason about problems with presence of quantifiers Built a translator from Alloy kernel language to SMT Can disprove and prove properties with respect to Alloy specifications

slide-33
SLIDE 33

ALLOY KERNEL LANGUAGE CVC4

Signature sig S S : Rel1(Atom) Field f : S1 โ†’ โ‹ฏ โ†’ Sn of a sig S f : Reln+1(Atom, โ€ฆ, Atom) f โŠ‘ S โˆ— S1 โˆ— โ‹ฏ โˆ— Sn sig S1, โ€ฆ , Sn extends S S1 โŠ‘ S, โ€ฆ , Sn โŠ‘ S Si โŠ“ Sj = [ ] for 1 โ‰ค i < j โ‰ค n S1 โŠ” โ‹ฏ โŠ” Sn = S if S is abstract sig S1, โ€ฆ , Sn in S, S1 โŠ‘ S, โ€ฆ , Sn โŠ‘ S

slide-34
SLIDE 34

ALLOY KERNEL LANGUAGE CVC4

Sets Operators: +, &, โˆ’, =, in โŠ”,โŠ“ โˆ’, โ‰ˆ,โŠ‘ Relational Operators: ~, โ‹…, โ†’, ^ _qi, โ‹ˆ, โˆ—, _z Logical operators: and, or, not AND, OR, NOT Quantifiers: all, some FORALL, EXISTS

slide-35
SLIDE 35

Evaluation on Alloy Bench chmarks

Evaluated CVC4 with two configurations

  • CVC4: enables full native support for relational operators
  • CVC4+AX: encodes all relational operators as

uninterpreted functions with axioms

Compared with Alloy Analyzer and AlloyPE on two sets of benchmarks:

  • 1. From AlloyPE and
  • 2. From an academic course
slide-36
SLIDE 36

Evaluation on Alloy Bench chmarks

Compared to the Alloy Analyzer

  • CVC4 is overall slower for SAT benchmarks
  • CVC4 solves UNSAT benchmarks, whereas the Alloy Analyzer

can only answer bounded UNSAT

Compared to AlloyPE

  • CVC4 solves SAT benchmarks, whereas AlloyPE solves none
  • CVC4 solves most of AlloyPEโ€™s benchmarks

Compared to CVC4+AX

  • CVC4 solves SAT benchmarks, whereas CVC4+AX solves none
  • CVC4 solves significantly more UNSAT benchmarks
slide-37
SLIDE 37

Ev Evaluation on SA SAT Bench chmarks

0.1 1 10 100 1000

Seconds in Log Scale

CVC4 Alloy Analyzer

slide-38
SLIDE 38

Ev Evaluation on UN UNSAT Bench chmarks

0.1 1 10 100 1000 mem-wr mem-wi ab-ai ab-dua abt-dua abt-ly-u gp-nsf gp-nsg com-1 com-3 com-4a com-4b fs-sd fs-nda gc-s1 academia_3 academia_4 family_1 family_2 birthday library gc-s2 gc-c com-2 social_3 social_4 social_2 lights INSLabel

Seconds in Log Scale

CVC4 CVC4+AX AlloyPE

slide-39
SLIDE 39

Ap Applicati tion 2: 2: OWL L DL DL to SMT

OWL DL based on an expressive description logic fragment Built a translator from OWL DL to SMT in ๐“ค๐“ข Check logical consistency of OWL models using CVC4

slide-40
SLIDE 40

OWL DL CVC4

Individual name a a : Atom Nominal {a} {<a>} Top concept T Bottom concept โŠฅ Univ, {โˆ€ a : Atom | <a> โˆˆ Univ} [ ] Atomic concept C Role R C : Rel1(Atom) R : Rel2(Atom, Atom) Union C โŠ” D Intersection C โŠ“ D C โŠ” D C โŠ“ D Inverse role Rโ€“ Complement ยฌC R-1 Univ \ C

slide-41
SLIDE 41

OWL DL CVC4

Concept, role assertion C(a), R(a; b) a โˆˆ C, <a, b> โˆˆ R Individual (dis)equality a โ‰ˆ b, a โ‰‰ b a โ‰ˆ b, a โ‰‰ b Concept, role inclusion C โŠ‘ D, R โŠ‘ S C โŠ‘ D, R โŠ‘ S Concept, role equiv. C โ‰ก D, R โ‰ก S C โ‰ˆ D, R โ‰ˆ S Complex role inclusion R1 โˆ˜ R2 โŠ‘ S R1 โ‹ˆ R2 โŠ‘ S Role disjointness Disjoint(R, S) R โŠ“ S โ‰ˆ [ ]

slide-42
SLIDE 42

OWL DL CVC4

Existential restriction โˆƒR.C R โ‹ˆ C Universal restriction โˆ€R.C [ x | x โˆˆ Univ โˆง [x] โ‹ˆ R โŠ‘ C ] At-least restriction โ‰ฅjR.C [ x | x โˆˆ Univ โˆง (โˆƒ a1, โ€ฆ , an: Atom [<a1>, โ€ฆ , <an>] โŠ‘ (([x] โ‹ˆ R) โŠ“ C) โˆง Dist(a1, โ€ฆ , an))] At-most restriction โ‰คjR.C [ x | x โˆˆ Univ โˆง (โˆƒ a1, โ€ฆ , an: Atom (([x] โ‹ˆ R) โŠ“ C) โŠ‘ [<a1>, โ€ฆ , <an>] โˆง [<a1>, โ€ฆ , <an>] โŠ‘ C)] Local reflexivity โˆƒR.Self [<x, y> | <x, y> โˆˆ R x โ‰ˆ y]

slide-43
SLIDE 43

Evaluation on OWL Bench chmarks

Evaluated on OWL models from 4th OWL Reasoner Evaluation competition Compared with a state of the art DL reasoner HermiT For the ones (4269) we both solved:

  • CVC4 takes 2.62s per benchmark and solves faster on 1617

benchmarks

  • HermiT takes 1.76s per benchmark and solves faster on

2652 benchmarks

slide-44
SLIDE 44

Co Comp mparison wit with Her Hermi miT

0.1 1 10 100 10 20 30 40 50 60

X-Values: CVC4 Y-Values: HermiT (in Log Scale)

slide-45
SLIDE 45

Su Summary

  • Introduced a theory of finite relations in SMT
  • Developed a refutation-sound and model-sound

calculus for the theory of relations

  • Demonstrated useful applications in Alloy and OWL
  • Shown promising experimental results on Alloy and

OWL benchmarks

slide-46
SLIDE 46

Thank you!

slide-47
SLIDE 47

References

  • 1. F. Baader. The description logic handbook: Theory, implementation and
  • applications. Cambridge university press, 2003.
  • 2. F. Baader, I. Horrocks, and U. Sattler. Description logics. In V. L. Frank van

Harmelen and B. Porter, editors, Handbook of Knowledge Representation, volume 3 of Foundations of Artificial Intelligence, pages 135 โ€“ 179. Elsevier, 2008.

  • 3. K. Bansal, A. Reynolds, C. W. Barrett, and C. Tinelli. A new decision

procedure for finite sets and cardinality constraints in SMT. In Proceedings

  • f IJCARโ€™16, volume 9706 of LNCS, pages 82โ€“98. Springer, 2016.
  • 4. C. Barrett, C. L. Conway, M. Deters, L. Hadarean, D. Jovanoviยดc, T. King, A.

Reynolds, and C. Tinelli. CVC4. In Proceedings of CAVโ€™11, volume 6806 of LNCS, pages 171โ€“177. Springer, 2011.

  • 5. C. Barrett, P. Fontaine, and C. Tinelli. The SMT-LIB standardโ€”Version

2.6. In A. Gupta and D. Kroening, editors, SMT 2010, 2010.

slide-48
SLIDE 48

References

  • 6. C. Barrett, R. Sebastiani, S. Seshia, and C. Tinelli. Satisfiability modulo
  • theories. In A. Biere, M. J. H. Heule, H. van Maaren, and T. Walsh, editors,

Handbook of Satisfiability, volume 185, chapter 26, pages 825โ€“885. IOS Press, February 2009.

  • 7. B. Dutertre and L. D. Moura. The YICES SMT solver. Technical report, SRI

International, 2006.

  • 8. A. A. E. Ghazi and M. Taghdiri. Analyzing alloy constraints using an SMT

solver: a case study. In 5th International Workshop on Automated Formal Methods (AFM), 2010.

  • 9. A. A. E. Ghazi and M. Taghdiri. Relational reasoning via SMT solving. In

Proceedings of FMโ€™11, volume 6664 of LNCS, pages 133โ€“148. Springer, 2011.

  • 10. A. A. E. Ghazi, M. Taghdiri, and M. Herda. First-order transitive closure

axiomatization via iterative invariant injections. In Proceedings of NFMโ€™15, volume 9058 of LNCS. Springer, 2015.

slide-49
SLIDE 49

References

  • 11. I. Horrocks and U. Sattler. Decidability of shiq with complex role

inclusion axioms. Artificial Intelligence, 160(1-2):79โ€“104, 2004.

  • 12. D. Jackson. Alloy: a lightweight object modelling notation. ACM Trans.
  • Softw. Eng. Methodol., 11(2):256โ€“290, 2002.
  • 13. D. Jackson. Software Abstractions - Logic, Language, and Analysis. MIT

Press, 2006.

  • 14. R. Nieuwenhuis, A. Oliveras, and C. Tinelli. Solving SAT and SAT Modulo

Theories: from an abstract Davis-Putnam-Logemann-Loveland Procedure to DPLL(T). Journal of the ACM, 53(6):937โ€“977, Nov. 2006.

  • 15. A. Reynolds, C. Tinelli, A. Goel, and S. Krstic. Finite model finding in
  • SMT. In Proceedings of CAVโ€™13, volume 8044 of LNCS, pages 640โ€“655.

Springer, 2013.

slide-50
SLIDE 50

References

  • 16. A. Steigmiller, T. Liebig, and B. Glimm. Konclude: System description. Web

Semantics: Science, Services and Agents on the World Wide Web, 27(1), 2014.

  • 17. E. Torlak and D. Jackson. Kodkod: a relational model finder. In Proceedings
  • f TACASโ€™07, volume 4424 of LNCS, pages 632โ€“647. Springer, 2007.
  • 18. D. Tsarkov and I. Horrocks. Fact++ description logic reasoner: system
  • description. In Proceedings of IJCARโ€™06, volume 4130 of LNCS. Springer, 2006.
  • 19. D. Tsarkov and I. Palmisano. Chainsaw: a metareasoner for large
  • ntologies. In I. Horrocks, M. Yatskevich, and E. Jimยดenez-Ruiz, editors, ORE,

2012.

  • 20. W3C. OWL 2 web ontology language,

https://www.w3.org/2007/OWL/wiki/Syntax.

  • 21. Baoluo Meng, Andrew Reynolds, Cesare Tinelli, and Clark
  • Barrett. Relational Constraint Solving in SMT. In Proceedings of the 26th

International Conference on Automated Deduction, Gothenburg, Sweden

slide-51
SLIDE 51

A Toy File System Speci cification in Alloy

abstract sig FSO {} sig File extends FSO {} sig Dir extends FSO { contents: Set FSO }

  • - contents relation is acyclic

fact {all d: Dir | not (d in d.^contents)}

  • - Every file system object only has one location

assert oneLocation { all o : FSO | lone d : FSO | o in d.contents } check oneLocation for 7

slide-52
SLIDE 52

An An Examp mple

๐’ฏ = { ๐‘, ๐‘ โˆ‰ Rqi, R โ‰ˆ Q, ๐‘ โˆˆ P, ๐‘ โˆˆ P, P โˆ— P โ‰ˆ Q โŠ“ T} ๐’ฏ โˆถ= ๐’ฏ โˆช { ๐‘, ๐‘ โˆˆ P โˆ— P, ๐‘, ๐‘ โˆˆ P โˆ— P, ๐‘, ๐‘ โˆˆ P โˆ— P, โ€ฆ }

PROD UP TRANS UP

P โˆ— P โ‰ˆ Q โŠ“ T

๐’ฏ โˆถ= ๐’ฏ โˆช { ๐‘, ๐‘ โˆˆ Rqi, โ€ฆ }

INTER DOWN

๐‘, ๐‘ โˆ‰ Rqi, R โ‰ˆ Q

๐’ฏ โˆถ= ๐’ฏ โˆช { ๐‘, ๐‘ โˆˆ Q, ๐‘, ๐‘ โˆˆ Q, ๐‘, ๐‘ โˆˆ Q, ๐‘, ๐‘ โˆˆ Q, โ€ฆ }

UNSAT

๐‘, ๐‘ โˆ‰ Rqi

EQ UNSAT

slide-53
SLIDE 53

Sa Satisfiability Mo Modul dulo T The heori ries ( (SMT MT)

A theory ๐“ค = (ฮฃ, ๐šฑ) defines

  • A signature ฮฃ: a set of non-logical symbols
  • A class of ฮฃ-interpretations ๐šฑ
  • Examples: integer arithmetic, strings, finite sets, โ€ฆ

ร˜ A simple theory: ฮฃ> = 0, 1, +, = ร˜ A formula in the theory ๐“ค>: ๐‘ฆ + 0 = 1