<?xml version=''1.0'' ?>
<presentation>
<title> What we mean when we talk about Semantics</title>
<subtitle>Why LFCS, ICCS, and CISA can't talk to each other</subtitle>
<author>Harry Halpin <i>H.halpin (at) ed.ac.uk </i></author>
<date>February 2nd 2004</date>
<event>Interdisciplinary Tea</event>

<slide>

       <title>
       Two Different Types of Semantic Errors
       </title>

       <point>
       An airplane needs to have a laser shot off of it from an observatory. The co-ordinates of the observatory
       are typed in - just &quot;2316 &quot;, and the airplane flipped!
      </point>
      <point>
       <b>Why?</b> The software expected miles, while the astronaut typed feet. A <i>typing</i> error. Can be caught via proper
       safe programming techniques.
      </point>
       <point>
       The U.S. military is devising a system to automatically  fire 
       nuclear missiles should its enemies attack. A radar and an AI program 
       scan the sky, detecting missiles. The second the system is turned on, it declares DEFCON 5. 
       </point>
       <point> 
       <b>Why?</b> The radar detected something: the moon rising in the sky. It's presence
       was left out of the AI program's knowledge.
       </point>
</slide>

<slide>

       <title>
       Program and Process Semantics 
       </title>

       <point>
       These errors are due to two different views of semantics, either: between a <i>program</i> and its <i>process or behavior</i> or between that <i>process</i> and
       the <i>world</i> itself.
       </point>
       <point>
       The first view I call <i>process semantics</i>, and the second I call <i>world semantics</i>. 
       </point>
       

</slide>

<slide>

       <title>
       Semantic Confusion 
       </title>

       <point>
       When LFCS talks about semantics they are talking about <i>process semantics</i>, the modeling of the behavior of a running program or programming language via a more precise mathematical language (operational semantics) or its correspondence with a mathematical structure such as a lattice (denotational semantics). 
       </point>
       <point>
       When someone talks about the semantics of a sentence such as &quot;Richard Feynman autographed my book &quot;, they are talking about the actual person Richard Feynman and an actual book, i.e. <i>world semantics</i>,not a model of Richard Feynman, or <i>book(x)</i>
      </point>
      <point> When CISA talks about semantics, it's usually talking about the <i>process semantics</i>, using a logic as a model. Or possibly even the declarative semantics, the constraints used in a particular logic. Often assumes the model maps to the world. 
     </point>
     <point> When ICCS talks about semantics, it may be talking about <i>world semantics</i>, also talks about <i>process semantics</i>, often not keeping their model and world straight. Models tend to be lexical semantics such as thematic roles, Montague Semantics, DRT.
     </point>
     <point> So when we talk about semantics with each other we can't
even keep our referents straight!
     </point> 
</slide>

</presentation><slide>

       <title>
       Towards a Definition of Semantics 
       </title>

       <point>
       &quot;Reference moves faster than the speed of light &quot; <br /> <i>Alonzo Church</i> 
      </point>
      <point>
      Ala Bretano, semantics is why a symbol is <b>about</b> things, <i>anything</i> it seems.  
      <point> 
      Semantics allows us to refer to those things which are <i>distal</i> to us, out 
      of effective grasp. Semantics is ineffective and acausal. Yet our thoughts not cause plans and actions, so not that simple!
      </point>
      <point>
      This disconnection allows possibility of error. Also allows modeling, simulation, plans, fantasy lives, even thinking. When I think of 
a vile plan to commit on my arch-nemesis, I don't want to summon her!  
      <point>
      Dretske: Counter-factual supporting correlation
      </point> 
      <point>
      Semantic terms seem to vary across natural language and programming languages: the words <i>language, symbol, reference, name, description  
      </point>
</slide>

<slide>
       <title>
       Then What is Syntax?  
       </title>
       <point> The realm of symbols - but the symbols themselves, without their referent being along for the ride. 
       </point>
       <point> 
       Often thought of as proximal, within effective reach. 
       </point>
       <point> Usually thought of as internal, but not necessarily so: writing, bit strings in computers, on the Web.
       </point>
       <point>
       The relationship of syntax to semantics is simple: &alpha &doublearrow &beta. &alpha is the <i>sign</i>, the syntax, and the &beta is the referent, and the &doublearrow is their semantic relation. 
      </point>
      <point>
      Also, how does the physical, the material, the effective inhere in syntax? Is this how we <i>naturalize</i> semantics? 
      </point>
      <point>
      A purely causal relationship can be thought of between two physical entities: &alpha &doublearrow &beta. &alpha is the <i>sign</i>, the syntax, and the &beta is the referent, and the &doublearrow is their semantic relation. The physical symbols are <i>possibly</i> syntactic.
     </point> 
</slide>


<slide>
       <title>
       The Computational Theory of the Mind 
       </title>

       <point>
       The gulf between meaning (semantics) and mechanism (physics) is wide. Classically drawn apart by Descartes, they are inexorably on a collision course.
      </point>
      <point>
      Is computing part of natural science, the humanities, mathematics, or something in between?
      </point>
      <point>  
      The Computational (Cognitivist) theory of the mind states that the mind is like a computer. So what's a computer? Why the computer? Could it be their use of syntax and semantics? 
      </point>
      <point>
      Yet we have differing understandings of computational semantics. So the question incoherent <i>right now</i>.
      </point>
      <point> 
      The divide between syntax and semantics can be restated as <i>the mind-body problem for machines</i>. 
      </point>
      <point>
      This is the <b>strong</b> computationalist bet: We <i>are</i> computers in some significant way.
      </point>
      <point> This is <i>not</i> the <b>weak</b> computationalist bet: We can be <i>modeled</i> on computers.
      </point>
      <point>
      So weak it's  vacuous: Anything can be modeled on computers, such as thunderstorms. Yet simulated thunderstorms don't get anyone wet.
     </point> 
    <point> Problem might be easier to solve for computers: since we <i>build</i> them. Linguistic theories aren't prescriptive for language, and language exists without linguists  and stars exist separately from celestial mechanics.
     </point>  
</slide>


<slide>
       <title>
       Semantics: The Case of Logic
       </title>

       <point>
       Let's examine the case of logic. 
      </point>
      <point>
     <b>Syntactic Realm</b>: A set of sentences <i>s</i> that <i>derives</i> another set (<i>s'</i>) of sentences via some operations with rules (the axioms of logic). 
     </point>
     <point> 
     <b>Semantic Realm</b>: A domain <i>D</i> that <i>s</i> can be <i>interpreted</i> to, and another domain <i>D'</i>, <i>s</i> maps after <i>entailment</i>.
     </point>
     <point> 
     <b>Model-theoretic Realm</b>: Instead of talking about sentences or domains directly, we talk about models (<i>M</i>) of both sentences and domains.
     </point>
     <point> Logic systems should be <i>sound</i>(what is derived is entailed, if provable then true) and <i>complete</i> (what is entailed is derived, if true then provable).
     </point>
     <point> 
     The relations of logic are perfectly well-defined in advance. For this to work, the syntax and semantics need to be <i>lined up</i>.
     </point>
</slide>


<slide>
       <title>
       Formal Symbol Manipulation
       </title>
       <point>
       The construal of computing used by <i>AI</i> and <i>cognitive science</i>, but unused by theoretical computer science.Advocated by Fodor, by Newell and Simon (sort of), and called GOFAI by Haugeland.
      </point>
      <point> 
      Formal Symbol Manipulation is defined in terms of <i>semantics</i> that can be <i>effected</i> by <i>formally</i> manipulating the <i>symbols</i>. In essence, &quot;By taking care of the syntax, the semantics takes care of itself &quot;, so that the really hard questions of semantics, such as reference maintenance, don't come up.
      </point>
      <point>Formality constitutes the <i>independence</i> of syntax and semantics, making the world &quot;safe for semantics &quot;.  
      <point> This separation can be taken to be <i>ontological</i>, such that they don't exist in the same place or understood <i>conceptually</i>, such that they can be explained separately. 
      </point>
</slide>

<slide>
       <title>
       Ontological and Conceptual Critique
       </title>
       <point>
       <b>Ontological Counterexamples:</b> Inside a computer, reference takes place all the time. Pointers to memory, variables, URLS - most of the contents of symbols inside machines are in effective reach of the machine itself.  
       </point>
       <point> <i>Numbers</i> and <i>Numeral</i> distinction: Yet <i>length(``HARRY'') returns''5'', because there are five letters.
       </point>
       <point> Crosses abstraction boundaries: error-correcting circuits, parity memory. The bits count other bits <i>directly</i>!
       </point>
        <point>The concept of <i>transducers</i> does not solve the problem: How can one thing magically transform from the external to the internal symbol? Can't the boundaries be crossed both ways? Are transducers hysical or semantic entities?
        </point>
        <point>
        So computers must be <b>involved</b> in their subject matter, actually a part of it.
        </point>   
        <point><b>Conceptual Difficulties</b>: Semantics isn't gone in FSM, it's just put to the side, dealt with as a separate species. If syntax is separate from semantics, does semantics reduce to syntax and then physics, or somehow straight to physics despite its non-physical characteristics? 
</slide>


<slide>
       <title>
       Partial Dependence of Syntax and Semantics 
       </title>

       <point>
       Then the semantics must be <i>not</i> independent of the syntax...still, they can't be dependent, otherwise the situation would be causal.
      </point>
      <point> If you change the semantics without changing the syntax you can be <i>wrong</i>, your new semantics simply won't map correctly. 
      </point>
      <point> The semantics can be <b>partially</b> constrained on the syntax.
      </point>
      <point> <i>Dependent</i>: Each choice among <i>o1...on</i> alternatives is determines one result in <i>d1...dn</i>, such as in a 1-to-1 mapping. 
      </point>
      <point><i>Independent</i>: Each choice among <i>o1...on</i> alternatives has no effect, choose any <i>d1...dn</i>
      </point>
      <point><i>Partial Constraint</i>: Each choice among <i>o1...on</i> constricts you to a subset of <i>d1...dn</i>.
      </point>
      <point> So, semantics constitutes the syntax - that's <i>why</i> the syntax works. 
       </point>
       <point>Syntax can partially constitute semantics - as addition in our programming language with numerals should function like it does with numbers. </point>
       <point>Constitute is an implementation word - <i>x</i> implements <i>y</i> if <i>x</i> is destroyed when you blow <i>y</i> up. This doesn't hold for <i>representation</i>. 
      <point> Classical logic is just the extreme case: the only choices in <i>o</i> are 1 or 0, true or false. 
      </point> 
</slide>


<slide>
       <title>
       Effective Computability
       </title>

       <point>
       Programs that transverse search-spaces, use Prolog. Such GOFAI programs are a vanishingly tiny part of all written software.
      </point>
      <point> The other construal, called <b>effective computability</b>,of complexity, universal Turing Machines, computability, and so on, reigns supreme with most other software.
      </point>
      <point> Yet it makes little claims on a syntax or semantics distinction, more interested in the <i>physics</i> of the phenomena: Can an actual machine compute a function, how much time and space does this take up?
     </point>
     <point> Usually thought of as a theory of mathematical functions over numbers.</point>
     <point> Despite its mathematical nature, what is the math modeling? Actual computers! Let's inspect the classic Turing Machine.
     </point>   
</slide>

<slide>
       <title>
       Falsely Solving the Halting Problem 
       </title>

       <point>
       A <i>Turing Machine</i> consists of marks on a tap, a machine that both inputs and outputs those marks changing states, and the marks denote numbers while the machine itself computers a function. Note difference between <i>n'</i> and <i>m'</i> - these are numerals or <i>marks</i> on the tape, while <i>n</i> and <i>m</i> are actually numbers. 
      </point>
      <point> So does this machine solve the Turing Problem? Any problem?</point>
      <point> Of course not - the input and output marks must not only be physically different. </point>
      <point> Isn't that the whole point of <i>functions</i> though? That multiple inputs can have one output?
      </point>
      <point>
      The point is the transformations between input and output have to be physically effective.
      </point> 
</slide>

<slide>
       <title>
       Turing Machines and the Physically Effective
       </title>

       <point>
        The reason mathematics works so well is that the numbers represents the marks on the Turing Machine. 
      </point>
      <point> This brings CS in alignment with other natural sciences such as physics, where math is used to model physical phenomena. Here math is used to model effective phenomena - the transformations of marks.
      </point>
       <point> Effective Computability is thus the theory of modeling what can be physically effective.
       </point>
       <point>
       This means the <i>encoding</i> is suddenly important to how we encode the problem.
       </point>
       <point> Imagine a base &pi; arithmetic. Addition over three would be only arbitrarily precise, but calculating the circumference of a circle would simply involve shifting the decimal point.
       </point>
       <point> Now, syntax and semantics are back in the picture.</point> 
</slide>


<slide>
       <title>
       Towards a Theory of the Intentional 
       </title>

       <point>
      The <i>mark of the intentional</i> clearly has to do with these interplay between mind and meaning, syntax and semantics. Computers seem to be first class intentional artifacts!
      </point>
      <point>
      Many ways to construe computing: dynamics, agents, rule-following, digitality, and so on. Smith is working on evaluating all of them. 
      </point>
      <point> Note that I am not claiming that the mathematical models of computing are wrong, I think the Church-Turing thesis is correct. 
      </point>
      <point>
      However, the intuitions that underlie it are radically different among disciplines, and exploring these intuitions allow us to understand the intuitions behind these models, not just the reigning myths.
      </point>
      <point> This understanding allows us to understand computation in the wild better, and so possibly evaluate the tempting computation claim on the mind
      </point> 
      <point> I am interested in how syntax and semantics cohere in an abstract way - through mathematical modeling (formal semantics), philosophic approaches (such as the Frame Problem), and in real-world problems (such as the Web and data-intensive linguistics). Approaching with a view about syntax and semantics makes this work make more sense.
      </point>
      <point> 
      To see how Brian Cantwell Smith eventually tries to solve the problem, read his <i>On the Origin of Objects</i> (MIT Press, 1996). 
      </point>
</slide>
