Possible Worlds Semantics for Second-Order Modal Logic

This is an attempt to define Second-Order Modal Logic in terms of possible worlds. The decision algorithm behind the web app http://somerby.net/mack/logic assumes that logical symbols have the meanings stated here.

There is not much in this document except definitions. I intend to write a complete paper on the subject someday. This paper would contain some evidence that these definitions are correct, a proof of decidability for a subset of symbolic that includes propositions, properties, and the necessity operator, and a decision algorithm for that subset. Also, since the meaning of the necessity operator given here is different from the meanings that it is normally given in modal predicate logic, the paper would also present definitions for necessity operators that capture these normal meanings that show the differences, show how they can be expressed in terms of the necessity operator used here, also show (what is already known) that predictate logics with these notions of necessity are not decideable. This would be a big project for me and I don’t know when I will get around to doing it, so I’ve decided I should at least share the definitions.

1 Symbols

These are definitions for some symbols that appear in the definitions:

𝒫⁒(S):=the power set of ⁒S (1)
⋃S:=the union of all sets in ⁒S (2)
S2:=SΓ—S:={(x,y):x∈S,y∈S} (3)
λ⁒(letters).(expression):=a function, where each letter is an argument to the function. (4)
β‹€m∈SΟ•:=ϕ⁒ is true for each ⁒m⁒ in ⁒S (5)
β„™:=the set of all possible worlds (6)

2 Meanings of Variables

Ο• is a syntactically valid statement of Second-Order Logic or a syntactically valid true/false expression within a statement of Second-Order Logic.

ψ is a syntactically valid statement of Second-Order Logic or a syntactically valid true/false expression within a statement of Second-Order Logic.

f is a function which is defined as a set of ordered pairs. The first items in the pairs are the domain of the function – the inputs or arguments that function is defined for – and the second items in the pairs are the range of the function – the outputs or results of the function.

w is a possible world.

o is an object in a possible world.

s is a symbol, usually a letter.

S is a set of symbols.

v is a function that, for a set of symbols (usually lowercase letters), maps each symbol to an object that exists in a possible world.

n is a function that, for a set of possible words, maps each possible world to a set of symbols (usually lowercase letters) that are supposed to represent propositions that are true in that possible world.

u is a function that, for a set of objects, maps each object to a set of symbols (usually uppercase letters) that are supposed to represent predicates that are true of that object.

b is a function that, for a set of pairs of objects, maps each pair to a set of symbols (usually uppercase letters) that are supposed to represent relations that exist between the pair.

3 Possible Worlds Semantics

A possible world is just a set of objects – the objects that exist in that world. Whether or not an object in a possible world is a subset of another object does not enter into these definitions.

Possible worlds are assumed not to be empty:

Β¬β’βˆƒw,wβˆˆβ„™βˆ§w=βˆ… (7)

Transworld identity is assumed to be impossible:

βˆ€o,βˆ€w1,βˆ€w2,(w1βˆˆβ„™βˆ§w2βˆˆβ„™βˆ§o∈w1∧w1β‰ w2)β†’oβˆ‰w2 (8)

A proposition symbol, or nullary predicate, is interpreted to be the set of possible world in which a proposition is true.

A property symbol, or unary predicate, is interpreted to be the set of objects which have a property.

A relation symbol, or binary predicate, is interpreted to be the set of pairs of objects which have a relation.

4 Translation

The definitions in Sections 5 through 8 are meant to be textual replacements that convert statements in conventional language of symbolic logic to statements about the set of possible worlds, β„™, in the language of set theory. They are meant to be applied recursively to a statement, with parentheses added to the replacements to preserve order of operations. So, a definition of the form

…⁒ϕ⁒…:=d⁒e⁒f⁒i⁒n⁒i⁒t⁒i⁒o⁒n (9)

declares that, to translate β€œβ€¦β’Ο•β’β€¦β€, Ο• should first be translated, then every instance of Ο• in d⁒e⁒f⁒i⁒n⁒i⁒t⁒i⁒o⁒n should be replaced with the result of that translation, and then the resulting expression should be surrounded by parentheses.

5 Binding Symbols

A statement may have free symbols in it – symbols that are not bound by any quantifier. In both First-Order and Second-Order Logics, free symbols represent constants. In First-Order Logic, all propositions, predicates and relations are free. To decide the validity of a statement, it must be decided whether it is true for all possible meanings of the free symbols. The functions defined in this section are used to bind symbols in such a way that the statement is considered for all possible meanings of the symbol.

free-v⁒(Ο•):=an ordered list of free variables in ⁒ϕ (10)
free-n⁒(Ο•):=an ordered list of free nullary predicates in ⁒ϕ (11)
free-u⁒(Ο•):=an ordered list of free unary predicates in ⁒ϕ (12)
free-b⁒(Ο•):=an ordered list of free binary predicates in ⁒ϕ (13)
bind-v⁒(Ο•):={Ο•if free-v⁒(Ο•)=βˆ…bind-v⁒(βˆ€(head⁒(free-v⁒(Ο•))),Ο•)if free-v⁒(Ο•)β‰ βˆ… (14)
bind-n⁒(Ο•):={Ο•if free-n⁒(Ο•)=βˆ…bind-n⁒(βˆ€(head⁒(free-n⁒(Ο•))),Ο•)if free-n⁒(Ο•)β‰ βˆ… (15)
bind-u⁒(Ο•):={Ο•if free-u⁒(Ο•)=βˆ…bind-u⁒(βˆ€(head⁒(free-u⁒(Ο•))),Ο•)if free-u⁒(Ο•)β‰ βˆ… (16)
bind-b⁒(Ο•):={Ο•if free-b⁒(Ο•)=βˆ…bind-b⁒(βˆ€(head⁒(free-b⁒(Ο•))),Ο•)if free-b⁒(Ο•)β‰ βˆ… (17)

6 Boolean Definitions

These definitions translate statements of symbolic logic into Boolean (true/false) statements:

6.1 Necessity

A statement is necessarily true if and only if it is true in all possible worlds.

░⁒ϕ:=β‹€wβˆˆβ„™Ο• (18)

6.2 Universal Generalization

A universal generalization is true if and only if its predicate is true for all objects in the possible world that is assumed to be the current context.

βˆ€x,Ο•:=β‹€Β x ∈wΟ• (19)

6.3 Validity

A statement is valid if and only if it is true in all possible worlds for all possible assignments of objects in each possible world to constants, under all possible meanings for the free propositions, predicates and relations in the statement.

valid(Ο•):=bind-b(bind-n(bind-u(β–‘(bind-v(Ο•)))) (20)

6.4 Propositions

A proposition is conflated with the set of possible worlds that it is true in. A proposition is true if and only if it includes the possible world that is assumed to be the current context.

p:=w∈p (21)
βˆ€p,Ο•:=β‹€Β pΒ βˆˆπ’«β’(β„™)Ο• (22)

6.5 Properties

A property is conflated with the set of objects that have it. An object has a property if and only if it is a member the property.

Px:=x∈P (23)
βˆ€P,Ο•:=β‹€Β PΒ βˆˆπ’«β’(⋃ℙ)Ο• (24)

6.6 Relations

A relation is conflated with the set of ordered pairs of objects that have it. An ordered pair of objects has a relation if it is a member of the relation.

Rxy:=(x,y)∈R (25)
βˆ€R,Ο•:=β‹€Β RΒ βˆˆπ’«β’((⋃ℙ)2)Ο• (26)

6.7 Other Operators

No special definition is needed for negation or conjunction. Because of (8), identity also does not need a special definition.

x=y:=x=y (27)
¬⁒ϕ:=¬⁒ϕ (28)
Ο•βˆ§Οˆ:=Ο•βˆ§Οˆ (29)

Operators that can be defined in terms of the operators above, such as β€˜βˆƒβ€™, β€˜βˆ¨β€™ and β€˜β—‡β€™, are defined in the usual way.

7 Set Definitions

These definitions are based on the idea that the meaning of a statement is the set of possible worlds that it is true in. These definitions translate a statement of symbolic logic to an expression that identifies a set of possible worlds.

7.1 Truth

Ο• is true when and where Ο• includes the possible world that is assumed in the current context.

true⁒(w,Ο•):=wβˆˆΟ• (30)

7.2 Validity

Ο• is valid if the result of binding all of its free variables and symbols is an expression that identifies a set that includes all possible worlds.

valid(Ο•):=bind-b(bind-n(bind-u(β–‘(bind-v(Ο•))))=β„™ (31)

7.3 Necessity

░⁒ϕ is the set of all possible worlds if Ο• is the set of all possible worlds. Otherwise, it is the empty set.

░⁒ϕ:={β„™if ⁒ϕ=β„™βˆ…if ⁒ϕ≠ℙ (32)

alternatively

░⁒ϕ:=β‹‚wβˆˆβ„™{β„™if ⁒wβˆˆΟ•βˆ…if ⁒wβˆ‰Ο• (33)

7.4 Universal Generalization

βˆ€x,Ο• is the set of possible worlds which are included in Ο• no matter what object in the current world is assigned to the symbol β€˜x’.

βˆ€x,Ο•:=β‹‚Β x ∈wΟ• (34)

7.5 Propositions

Since a proposition is a set of possible worlds, it needs no special definition.

A generalization of β€˜p’ over Ο• is the set of possible worlds which are included in Ο• no matter what set of possible worlds is assumed for β€˜p’.

βˆ€p,Ο•:=β‹‚Β pΒ βˆˆπ’«β’(β„™)Ο• (35)

7.6 Properties

If an object x has a property P, Px is defined as the set of all possible worlds. If it does not have property P, Px is defined as the empty set. This is because, in context, its truth or falsehood only depends on the object assigned to x and the property assigned to P and not the possible world assumed in the context.

Px:={β„™if x∈Pβˆ…if xβˆ‰P (36)
βˆ€P,Ο•:=β‹‚Β PΒ βˆˆπ’«β’(⋃ℙ)Ο• (37)

7.7 Relations

If a pair (x,y) in a relation R, Rxy is defined as the set of all possible worlds. If it is not in a relation R, Rxy is defined as the empty set. This is because, in context, its truth or falsehood only depends on the objects assigned to x and y and the relation assigned to R and not the possible world assumed in the context.

Rxy:={β„™if ⁒(x,y)∈Rβˆ…if ⁒(x,y)βˆ‰R (38)
βˆ€R,Ο•:=β‹‚Β RΒ βˆˆπ’«β’((⋃ℙ)2)Ο• (39)

7.8 Conjunction

The conjunction of Ο• and ψ is their set intesection – the set of possible worlds which are contained in both Ο• and ψ.

Ο•βˆ§Οˆ:=Ο•βˆ©Οˆ (40)

7.9 Negation

The negation of Ο• is its set complement – the set of possible worlds that are not in Ο•.

¬⁒ϕ:=ϕ¯ (41)

7.10 Other Operators

Because of (8), identity does not need a special definition.

x=y:=x=y (42)

Operators that can be defined in terms of the operators above, such as β€˜βˆƒβ€™, β€˜βˆ¨β€™ and β€˜β—‡β€™, are defined in the usual way.

8 Definitions for Decidability

My plan for a proof of decidability involves proving that certain generalizations over infinite sets of objects or infinite sets of sets of objects are logically equivalent to generalizations over finite sets of strings of symbols. To make this proof easier, I defined the logical operators as functions of the variables w, v, n, u and b, which are described in section (2). In these definitions, mappings of things to strings of symbols are built up by β€œassigning” symbols to things, and β€œinstantiating” variables with objects is achieved by building a mapping of variable symbols to objects.

8.1 Instantiation and Assignment

This function adds a symbol/object pair to a mapping of symbols to objects, associating the symbol with the object:

instantiate⁒(v,s,o):=vβˆͺ{(s,o)} (43)

This function adds a symbol to the set of symbols associated with a thing t in a mapping of things to symbols if t belongs to a set of things T. If t does not belong to T, the set of symbols associated with it is not changed:

assign⁒(f,s,T):={(t,Sβˆͺ{s}):(t,S)∈f∧t∈T}βˆͺ{(t,S):(t,S)∈f∧tβˆ‰T} (44)

Alternatively,

assign⁒(f,s,T):={p:βˆƒt,βˆƒS,(t,S)∈f∧(t∈Tβ†’p=(t,Sβˆͺ{s}))∧(tβˆ‰Tβ†’p=(t,S))} (45)

Each kind of expression in Second-Order Logic is defined as a function of parameters w, v, n, u, b, which have the meanings described in Section 2 above. These parameters are the context of the expression; they provide the meaning of all of the predicates and variables in the expression.

8.2 Propositions

A proposition symbol β€œp” is true in context if it is in the set of symbols that are associated with the possible world w.

β€œp”:=λ⁒w⁒v⁒n⁒u⁒b.β€˜pβ€™βˆˆn⁒(w) (46)

8.3 Properties

A predication of a property P on an object x is true in context if it is in the set of symbols that are associated with the object that is associated with the symbol β€˜x’ in context.

8.4 Relations

β€œPx”:=λ⁒w⁒v⁒n⁒u⁒b.β€˜Pβ€™βˆˆu⁒(v⁒(β€˜x’)) (47)

A relation R between objects x and y is true in context if it is in the set of symbols that are associated with the pair of objects that are associated with symbols β€˜x’ and β€˜y’ in context.

β€œRxy”:=λ⁒w⁒v⁒n⁒u⁒b.β€˜Rβ€™βˆˆb⁒(v⁒(β€˜x’),v⁒(β€˜y’)) (48)

8.5 Identity

x and y are identical if the symbols β€˜x’ and β€˜y’ are associated with the same object in context.

β€œx=y”:=λ⁒w⁒v⁒n⁒u⁒b.v⁒(β€˜x’)=v⁒(β€˜y’) (49)

8.6 Negation

¬⁒ϕ is true if Ο•, in the same context, is false. Ο• gets the same context as ¬⁒ϕ because ¬⁒ϕ passes its arguments to Ο• unchanged.

β€œβ’Β¬β’Ο•β’β€:=λ⁒w⁒v⁒n⁒u⁒b.¬⁒ϕ⁒(w,v,n,u,b) (50)

8.7 Conjunction

Ο•βˆ§Οˆ is true if both Ο• and ψ are false in the same context. Ο• and ψ get the same context as Ο•βˆ§Οˆ because Ο•βˆ§Οˆ passes its arguments to Ο• and ψ unchanged.

β€œβ’Ο•βˆ§Οˆβ’β€:=λ⁒w⁒v⁒n⁒u⁒b.ϕ⁒(w,v,n,u,b)∧ψ⁒(w,v,n,u,b) (51)

8.8 Necessity

Ο• is necessarily true if it is true in every possible world. Ο• does not always get the same context as ░⁒ϕ; it is considered in every possible world instead of just the current possible world. The assignment of objects to free variables in Ο• does not change, nor do the objects change.

β€œβ’β–‘β’Ο•β’β€:=λ⁒w1⁒v⁒n⁒u⁒b.β‹€w2βˆˆβ„™Ο•β’(w2,v,n,u,b) (52)

8.9 Universal Generalization

A universal generalization is true if and only if, for every object that is in the current possible world, Ο• is true when instantiated with the object.

β€œβ’βˆ€x,ϕ⁒”:=λ⁒w⁒v⁒n⁒u⁒b.β‹€o∈wϕ⁒(w,instantiate⁒(v,β€˜x’,o),n,u,b) (53)

8.10 Generalization over Propositions

A proposition is conflated with the set of possible worlds in which it is true. Consequently, a generalization over propositions is true if and only if, for every combination of possible worlds, Ο• is true when, for each possible world in the combination, β€˜p’ is added to the list of propositions which are true in it.

β€œβ’βˆ€p,ϕ⁒”:=λ⁒w⁒v⁒n⁒u⁒b.β‹€Pβˆˆπ’«β’(β„™)ϕ⁒(w,v,assign⁒(n,β€˜p’,P),u,b) (54)

8.11 Generalization over Properties

A property is conflated with the set of objects that have it. Consequently, a generalization over properties is true if and only if, for every combination of objects, Ο• is true when, for each object in the combination, β€˜P’ is added to the list of properties that the object has.

β€œβ’βˆ€P,ϕ⁒”:=λ⁒w⁒v⁒n⁒u⁒b.β‹€pβˆˆπ’«β’(⋃ℙ)ϕ⁒(w,v,n,assign⁒(u,β€˜P’,p),b) (55)

8.12 Generalization over Relations

A relation is conflated with the set of pairs of objects that have it. Consequently, a generalization over relations is true if and only if, for every combination of pairs of objects, Ο• is true when, for each pair in the combination, β€˜R’ is added to the list of relations that the pair has.

β€œβ’βˆ€R,ϕ⁒”:=λ⁒w⁒v⁒n⁒u⁒b.β‹€rβˆˆπ’«β’((⋃ℙ)2)ϕ⁒(w,v,n,u,assign⁒(b,β€˜R’,r)) (56)

8.13 Other Operators

Operators that can be defined in terms of the operators above, such as β€˜βˆƒβ€™, β€˜βˆ¨β€™ and β€˜β—‡β€™, are defined in the usual way.

8.14 Validity

Validity is defined similarly to how it is defined in Section 6.3, but since the other definitions are functions, valid(Ο•) is a function application (a function call) that passes initial mappings and an empty world to the function that is the result of binding all of the free symbols in Ο•.

valid(Ο•):=bind-b(bind-n(bind-u(β–‘(bind-v(Ο•))))(βˆ…,βˆ…,{(w,βˆ…):wβˆˆβ„™},{(o,βˆ…):oβˆˆβ‹ƒβ„™},{((a,b),βˆ…):aβˆˆβ‹ƒβ„™βˆ§bβˆˆβ‹ƒβ„™})) (57)