{"id":364,"date":"2007-03-28T22:20:32","date_gmt":"2007-03-28T22:20:32","guid":{"rendered":"http:\/\/scientopia.org\/blogs\/goodmath\/2007\/03\/28\/the-kripke-model-for-intuitionistic-logic\/"},"modified":"2007-03-28T22:20:32","modified_gmt":"2007-03-28T22:20:32","slug":"the-kripke-model-for-intuitionistic-logic","status":"publish","type":"post","link":"http:\/\/www.goodmath.org\/blog\/2007\/03\/28\/the-kripke-model-for-intuitionistic-logic\/","title":{"rendered":"The Kripke Model for Intuitionistic Logic"},"content":{"rendered":"<p> As promised, today, I&#8217;m going to show the Kripke semantics model for intuitionistic logic.<\/p>\n<p><!--more--><\/p>\n<p> Remember from <a href=\"http:\/\/scientopia.org\/blogs\/goodmath\/2007\/03\/kripke-semantics-and-models-for-intuitionistic-logic\">yesterday<\/a> that a Kripke model has three parts:<br \/>\n(<b>W<\/b>, <b>R<\/b>, <b>:-<\/b>), where <b>W<\/b> is a set of worlds; <b>R<\/b> is a transition relation between worlds; and &#8220;<b>:-<\/b>&#8221; is a forces relation that defines what&#8217;s true in a particular world.<\/p>\n<p> To model intuitionistic logic, we need to add some required properties to the transition and forcing relations. With these additional properties, we call the transition relation (R) &#8220;&le;&#8221;; if A and B are worlds in <b>W<\/b>, then &#8220;A&le;B&#8221; means that B <em>is accessible from<\/em> A. For an intuitionistic Kripke model, the transition relation &#8220;&le;&#8221; must be both reflexive (A &le; A) and transitive (if A&le;B and B&le;C, then A&le;C), making it a pre-order relation &#8211; that is, a relation that has the essential properties of arithmetic &#8220;&le;&#8221; that is necessary to define a partial order over its domain. The forces relation, &#8220;:-&#8221; also needs some additional conditions: (these conditions are based on the definitions from the wikipedia article on Kripke models; I can&#8217;t remember them without help, so I used the article as a reference.)<\/p>\n<ol>\n<li> &forall;w,u&isin;W such thatt w&le;u, for all statements s if w:-p, then u:-p. This condition basically says that if a statement is true\/valid in a particular world w, then it must be true in all worlds accessible from w &#8211; meaning that in intuitionistic logic, once a statement is proven, it can&#8217;t be taken back.<\/li>\n<li> &forall;w&isin;W, w:-(A&and;B) if\/f w:-A and w:-B. &#8220;A&and;B&#8221; is provable in w only if both A and B are provable.<\/li>\n<li> &forall;w&isin;W, w:-A&or;B if\/f w:-A or w:-B. &#8220;A&or;B&#8221; is provable in w only if either A or B is probable in w.<\/li>\n<li> &forall;w*isin;W, w:-(A&rarr;B) if\/f &forall;u&isin;W such that w&le;u, (u:-A) implies (u :-B). Being able to prove that &#8220;A implies B&#8221; in w means that in every world accessible from w, if you can prove A, then you can prove B.<\/li>\n<li> There is no contradictory statement (written &#9162;) such that w:-&#9162;.<\/li>\n<\/ol>\n<p> The last line in there is actually a bit of a cheat: you can think of intuitionistic logic as a logic where at a given point of time, a statement can have three truth values: T (top), which means provably true; &#9162; (bottom) which means provably false, and unproved. The last property of the forces relationship means that under no conditions can the &#8220;forces&#8221; relation say that a proposition is true if it is provably false.<\/p>\n<p> So: suppose we have an intuitionistic logic consisting of a set of statements, which we&#8217;ll call X. The Kripke model for X is the triple (W,&le;M), where W is the set of worlds related by a &#8220;&le;&#8221; relation that has the intuitionistic properties that we just discussed. M is a set of sets where: &forall;w&isin;W: &exist;!M<sub>w<\/sub>&isin;M, where M<sub>w<\/sub> is an L-structure for X. (An L-structure is a formal way of defining what statements are proved true &#8211; and for statements with variables, the bindings of those variables to values for which the statement has been proved true. For the purposes of understanding, you can think of M<sub>w<\/sub> as a function that takes a logical statement, and a list of values for the variables in that statement, and returns &#8220;true&#8221; if the statement is proved true, and false if the statement is proved false; and the statement is not in the domain of the function if it&#8217;s truth value hasn&#8217;t been proved.) The M<sub>w<\/sub>&#8216;s for intuitionistic logic have a set of properties that come from the meaning of statements in the logic. If u and v are both worlds in W, and M<sub>u<\/sub> and M<sub>v<\/sub> are their corresponding L-structures, then:<\/p>\n<ol>\n<li> if u&le;v, then domain(M<sub>u<\/sub>)&sube;domain(M<sub>v<\/sub>)<\/li>\n<li> For any function f, in the logic, &forall;a&isin;range(f) in M<sub>u<\/sub>, f(a) in M<sub>u<\/sub> = f(a) in M<sub>v<\/sub>.<\/li>\n<li> For any predicate P(a<sub>1<\/sub>,a<sub>2<\/sub>, &#8230;, a<sub>n<\/sub>), if P(a<sub>1<\/sub>,a<sub>2<\/sub>, &#8230;, a<sub>n<\/sub>) is true in M<sub>u<\/sub>, then it is true in M&gt;<sub>v<\/sub>.<\/li>\n<\/ol>\n<p> Now, finally, we can get to the last step in defining our model of intuitionistic logic: the forces relation based on M. What we need to do to make M work as a forces relation is to separate it into two parts: the truth\/validity of concrete statements (that is, statements with all variables bound to specific values), which we write using the old forces notation, :-; and the mapping of variables and functions to values. We call that mapping an evaluation function; for a statement A in X, we write A[e] for A with variables bound by e.<\/p>\n<p> So: given an evaluation e of variables from M<sub>w<\/sub>, w:-A[e] is defined by:<\/li>\n<ol>\n<li> w:-P(a<sub>1<\/sub>,&#8230;a<sub>n<\/sub>)[e] if\/f<br \/>\nP(a<sub>1<\/sub>[e],&#8230;,a<sub>n<\/sub>[e]) is in M<sub>w<\/sub>: Evaluating a<br \/>\npredicate means the same thing as keeping the predicate unchanged, and evaluating<br \/>\neach of its parameters separately.<\/li>\n<li> w:-(A &and; B)[e] if\/f w:-A[e] and w:-B[e]: a typical and definition.<\/li>\n<li> w:-(A &or; B)[e] if\/f w:-A[e] or w:-B[e]: a typical or definition.<\/li>\n<li> w:-(A &rarr; B)[e] if\/f &forall;w&le;u: u:-A[e] implies u:-B[e]: an implication is true if, in the model, you can prove its constituents in the next step. (This is the opposite of its definition in the logic: in logic, we&#8217;d say that given A implies B and A, you can conclude B. In the model, we go the other way, and say that you can conclude that A implies B if, for all possible transitions, the next world allows you to conclude either A or not B.)<\/li>\n<li> w &not;:-&#9162;: no w can force a contradiction.<\/li>\n<li> w:-(&exist;x:A)[e] if\/f exists a&isin;M<sub>w<\/sub> such that w:-A[e], and e maps x to a: An exists statement is provable only if we can show a concrete, specific value for which the statement is true.<\/li>\n<li> w:-(&forall;x:A)[e] if\/f  &forall;u such that w&le;u: &forall;a&isin;M<sub>u<\/sub>: u:-A[e] where e maps x to A: a universal statement is provable if every possible next world can prove that the statement with all possible bindings of variables are true.<\/li>\n<\/ol>\n<p> What we&#8217;ve done now is to define a way of describing the meaning of any statement in intuitionistic logic, and any reasoning step in intuitionistic logic in terms of sets, in a way where if we do the translation of the logical statement down to the sets, the statements about the sets will always be true and correct; and if we reason from the sets that correspond to the logic, anything we can do will produce a well-defined, meaningful, and valid statement in the logic.<\/p>\n<p> The particularly nice thing about an intuitionistic logic with a Kripke model is that for any statement which is provably true, we can use the model to find specific values for the variables in the statement for which its true; and if a statement is false, we can find specific values for the variables in the statement that produce a concrete counterexample. In fact, the <em>specific meaning<\/em> of &not;A in this model of intuitionistic logic is that I have a <em>concrete counterexample<\/em> for A, so that A cannot be proven.<\/p>\n<p> We can&#8217;t always do that in regular predicate logic: regular predicate logic allows us to do inferences from things like &#8220;exists&#8221; statements if we know that some value must exist for which the statement is true, even if there&#8217;s no way for us to figure out what that value is. Likewise, in regular predicate logic, we can infer that a forall statement is false if we know that there must be some value for which it&#8217;s false; in intuitionist logic, we need to be able to show a specific example for which it&#8217;s false.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>As promised, today, I&#8217;m going to show the Kripke semantics model for intuitionistic logic.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[33],"tags":[],"class_list":["post-364","post","type-post","status-publish","format-standard","hentry","category-logic"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/p4lzZS-5S","jetpack_sharing_enabled":true,"jetpack_likes_enabled":true,"_links":{"self":[{"href":"http:\/\/www.goodmath.org\/blog\/wp-json\/wp\/v2\/posts\/364","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.goodmath.org\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.goodmath.org\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.goodmath.org\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.goodmath.org\/blog\/wp-json\/wp\/v2\/comments?post=364"}],"version-history":[{"count":0,"href":"http:\/\/www.goodmath.org\/blog\/wp-json\/wp\/v2\/posts\/364\/revisions"}],"wp:attachment":[{"href":"http:\/\/www.goodmath.org\/blog\/wp-json\/wp\/v2\/media?parent=364"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.goodmath.org\/blog\/wp-json\/wp\/v2\/categories?post=364"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.goodmath.org\/blog\/wp-json\/wp\/v2\/tags?post=364"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}