Jump to content

Semantics: Difference between revisions

3,935 bytes added ,  04:58, 18 March 2023
fix typoz
(Add a note to self to explain properties)
(fix typoz)
(4 intermediate revisions by the same user not shown)
Line 29: Line 29:
Now, we're ready to talk about notation. When you see something like <math>\exist x: \text{kato}_\text{w}(x). \exist e. \text{τ}(e) \subseteq \text{t} \land \text{neo}_\text{w}(x, \text{m}\mathrm{\acute{u}}\text{ao})(e)</math>, what you're looking at are a bunch of things from the domain of the model. A lot of these words (<math>\text{kato}</math>, <math>\text{neo}</math>, <math>\exist</math>, <math>\text{τ}</math>, <math>\land</math>) are '''functions'''; some others (<math>\text{m}\mathrm{\acute{u}}\text{ao}</math>) represent literal "things" from the domain, like physical objects, people, and ideas, which we'll call '''individuals'''. Together, these words form an expression that shows you how to calculate the truth value of a specific sentence (in this case, {{Derani|󱚵󱚴󱛍󱛃 󱚺󱛊󱚺 󱛘󱛄󱚺󱚷󱛃󱛙 󱛘󱚰󱛊󱚲󱛍󱚺󱛎󱛃󱛙|Neo sá kato múao}}), given that you have the model.
Now, we're ready to talk about notation. When you see something like <math>\exist x: \text{kato}_\text{w}(x). \exist e. \text{τ}(e) \subseteq \text{t} \land \text{neo}_\text{w}(x, \text{m}\mathrm{\acute{u}}\text{ao})(e)</math>, what you're looking at are a bunch of things from the domain of the model. A lot of these words (<math>\text{kato}</math>, <math>\text{neo}</math>, <math>\exist</math>, <math>\text{τ}</math>, <math>\land</math>) are '''functions'''; some others (<math>\text{m}\mathrm{\acute{u}}\text{ao}</math>) represent literal "things" from the domain, like physical objects, people, and ideas, which we'll call '''individuals'''. Together, these words form an expression that shows you how to calculate the truth value of a specific sentence (in this case, {{Derani|󱚵󱚴󱛍󱛃 󱚺󱛊󱚺 󱛘󱛄󱚺󱚷󱛃󱛙 󱛘󱚰󱛊󱚲󱛍󱚺󱛎󱛃󱛙|Neo sá kato múao}}), given that you have the model.


There's a key difference here: In languages like English and mathematics, you can use words to form statements such as "The sky is blue" and "<math>x + 1 = 2</math>", or you can use them to form smaller expressions, like "the author of this book" and "<math>\left\{1, 2, 3\right\}</math>". But in the semantic notation we're looking at, there are no statements, only expressions, because the point of semantics is to examine the values that things denote, including the values of statements themselves. As such, it doesn't make sense to call this a "logic notation", because on its own, it can't form statements. Instead, we'll call it a '''semantic calculus'''.
There's an important subtlety here: In languages like English and mathematics, you can use words to form statements such as "The sky is blue" and "<math>x + 1 = 2</math>", or you can use them to form smaller expressions, like "the author of this book" and "<math>\left\{1, 2, 3\right\}</math>". But in the semantic notation we're looking at, there are no statements, only expressions, because the point of semantics is to examine the values that things denote, including the values of statements themselves. As such, it doesn't make sense to call this a "logic notation", because on its own, it can't form statements. Instead, we'll call it a '''semantic calculus'''.


One interesting thing about this notation is that every expression has a '''type''', like some programming languages do. These include:
One interesting thing about this notation is that every expression has a '''type''', like some programming languages do. These include:
Line 47: Line 47:
** <math>t,\ t',\ t'',\ \dots</math> for time intervals
** <math>t,\ t',\ t'',\ \dots</math> for time intervals
* <math>w,\ w',\ w'',\ \dots</math> for worlds
* <math>w,\ w',\ w'',\ \dots</math> for worlds
* <math>P,\ Q,\ R,\ \dots</math> for functions (the exact type is left to context)


It turns out we don't need variables for truth values or functions, so we don't assign them any.
It turns out we don't need variables for truth values, so we don't assign them any.


TODO: lambdas
Be careful when reading these letters, because italics are meaningful. There are some tricky pairs of symbols such as <math>w</math>, which is a world variable, versus <math>\text{w}</math>, which is a constant referring to the real world, and <math>t</math>, which is a time interval variable, versus <math>\text{t}</math>, which is a constant referring to the salient time interval.
 
Another important feature of this language is that it has a special syntax for writing functions, known as a '''lambda expression'''. They're easy to spot because they start with the Greek letter <math>\lambda</math>, and have two components: a variable name representing the function's input, and an expression representing the function's output. For example, <math>\lambda n.\ 2n + 1</math> is a function that takes a value <math>n</math> as its input, and outputs the value <math>2n + 1</math>. Since <math>n</math> is a variable of type <math>\text{e}</math>, and <math>2n + 1</math> is an expression of type <math>\text{e}</math>, we can tell that this function has type <math>\left\langle \text{e}, \text{e} \right\rangle</math>. Similarly, <math>\lambda e.\ \text{saqsu}(\text{j}\mathrm{\acute{i}})(e)</math> is a function of type <math>\left\langle \text{v}, \text{t} \right\rangle</math> which computes whether <math>e</math> is an event of the speaker whispering.
 
You can apply these lambda functions to an argument in the same way you would apply a named function: by placing them before their argument, surrounded with parentheses. For example, if we say that <math>P</math> is the function <math>\lambda x.\ \text{ruq}(x)</math>, then <math>P(r)</math> and <math>(\lambda x.\ \text{ruq}(x))(r)</math> are two ways of saying the same thing—they both evaluate to <math>\text{ruq}(r)</math>.


== Events ==
== Events ==
TODO don't forget to explain <math>\tau</math>


== Worlds ==
== Worlds ==
Line 59: Line 65:


== Propositions ==
== Propositions ==
A '''proposition''' is, in the broadest sense, anything that bears a truth value, such as a fact, a belief, or the meaning of a sentence. We can say that the sentence "The Earth is a planet" expresses the proposition that the Earth is a planet, and likewise, in the sentence "I believe that I saw a ghost", we can identify "that I saw a ghost" as referring to the proposition that the speaker saw a ghost.
In Toaq, we can use the complementizer {{Derani|󱛁󱚺󱛋|ꝡä}} to create a reference to a proposition, which can then become the complement of another verb. So, our semantic theory needs to account for this construct, and it turns out that it's best to use two different "implementations" of propositions for this purpose.
The first implementation is '''propositions as functions'''. The idea is to interpret a complementizer phrase as a function which takes a world as an input, and outputs the truth value of the proposition in that world (type <math>\left\langle \text{s}, \text{t} \right\rangle</math>). So for example, in {{Derani|󱚿󱚹 󱚾󱛊󱚹 󱛔 󱛁󱚺󱛋 󱚸󱚺 󱚻󱚲󱛂󱛀󱚲󱛍󱚺|Chı jí, ꝡä za ruqshua}}, we would interpret the complementizer phrase as <math>\lambda w.\ \exists e.\ \tau(e) > \text{t} \land \text{ruqshua}_w(e)</math>, and pass this as an argument to the main verb, giving <math>\exists e'.\ \tau(e') \subseteq \text{t'} \land \text{chi}_{\text{w}}(\text{ji}, \lambda w.\ \exists e.\ \tau(e) > \text{t} \land \text{ruqshua}_w(e))(e')</math>. Note that it would be wrong to interpret the complementizer phrase as <math>\exists e.\ \tau(e) > \text{t} \land \text{ruqshua}_{\text{w}}(e)</math>, because this evaluates to a simple truth value, which fails to capture the statement's semantic content. No one goes around saying "I believe [TRUE]" or "I believe [FALSE]". By using a function, we capture the statement's '''intension''' (its abstract connotation) rather than its '''extension''' (the concrete value held by the statement in the real world).
TODO: finish


== Properties ==
== Properties ==