<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
p.gmail-m3992771605335586144quotation, li.gmail-m3992771605335586144quotation, div.gmail-m3992771605335586144quotation
        {mso-style-name:gmail-m_3992771605335586144quotation;
        mso-margin-top-alt:auto;
        margin-right:0in;
        mso-margin-bottom-alt:auto;
        margin-left:0in;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
p.gmail-m3992771605335586144msoplaintext, li.gmail-m3992771605335586144msoplaintext, div.gmail-m3992771605335586144msoplaintext
        {mso-style-name:gmail-m_3992771605335586144msoplaintext;
        mso-margin-top-alt:auto;
        margin-right:0in;
        mso-margin-bottom-alt:auto;
        margin-left:0in;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
span.EmailStyle20
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1027" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal">I thought the question was about software engineering, not about predicting emergent behavior?    Detecting undesirable behaviors is easier than predicting all behaviors..<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span style="font-size:12.0pt;color:black">From: </span></b><span style="font-size:12.0pt;color:black">Friam <friam-bounces@redfish.com> on behalf of Pieter Steenekamp <pieters@randcontrols.co.za><br>
<b>Reply-To: </b>The Friday Morning Applied Complexity Coffee Group <friam@redfish.com><br>
<b>Date: </b>Saturday, January 25, 2020 at 10:48 PM<br>
<b>To: </b>The Friday Morning Applied Complexity Coffee Group <friam@redfish.com><br>
<b>Subject: </b>Re: [FRIAM] Abduction and Introspection<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">I would go along with Johsua Epstein's "if you did not grow it you did not explain it". Keep in mind that this motto applies to problems involving emergence. So what I'm saying is that it's in many cases futile to apply logic to reasoning
 to find answers - and I refer to the emergent properties of the human brain as well as to ABM (agent based modeling) software. But even if the problem involves emergence, it's easy for both human and computer logic to apply validation logic. Similar to the
 P=NP problem*, it's difficult to find the solution, but easy to verify.  <o:p></o:p></p>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">So my answer to "<b><i><span style="font-size:10.0pt;font-family:"Times New Roman",serif;color:#500050">As software engineers, what conditions would a program have to fulfill to say that a computer was monitoring “itself</span></i></b>"
 is simply: explicitly verify the results. There are many approaches to do this verification; applying logic, checking against measured actual data, checking for violations of physics, etc.   <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">*I know you all know it, just a refresher, The P=NP problem is one of the biggest unsolved computer science problems. There is a class of very difficult to solve problems and a class of very easy to verify problems. The P=NP problem asks
 the following: if you have a difficult to solve but easy to verify problem, is it possible to find a solution that is reasonably easy for a computer to solve. "Reasonably easy" is defined as can you solve it in polynomial time. The current algorithms takes
 exponential time to solve it and even for a moderate size problem that means more time that the age of the universe for a supercomputer to solve it.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Pieter<o:p></o:p></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<p class="MsoNormal">On Sat, 25 Jan 2020 at 23:04, Marcus Daniels <<a href="mailto:marcus@snoutfarm.com">marcus@snoutfarm.com</a>> wrote:<o:p></o:p></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">I would say the problem of debugging (or introspection if you insist)  is like if you find yourself at some random place, never seen before, and the task it do develop a map and
 learn the local language and customs.  If one is given the job of law enforcement (debugging violations of law), it is necessary to collect quite a bit of information, e.g. the laws of the jurisdiction, the sensitivities and conflicts in the area, and detailed
 geography.  In haphazardly-developed  software, learning about one part of a city teaches you nothing about another part of the city.   In well-designed software, one can orient oneself quickly because there are many easily-learnable conventions to follow. 
   I would say this distinction between the modeler and the modeled is not that helpful.   To really avoid bugs, one wants to have metaphorical citizens that are genetically incapable of breaking laws.   Privileged access is kind of beside the point because
 in practice software is often far too big to fully rationalize.  <o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><b><span style="font-size:12.0pt;color:black">From:
</span></b><span style="font-size:12.0pt;color:black">Friam <<a href="mailto:friam-bounces@redfish.com" target="_blank">friam-bounces@redfish.com</a>> on behalf of "<a href="mailto:thompnickson2@gmail.com" target="_blank">thompnickson2@gmail.com</a>" <<a href="mailto:thompnickson2@gmail.com" target="_blank">thompnickson2@gmail.com</a>><br>
<b>Reply-To: </b>The Friday Morning Applied Complexity Coffee Group <<a href="mailto:friam@redfish.com" target="_blank">friam@redfish.com</a>><br>
<b>Date: </b>Saturday, January 25, 2020 at 11:57 AM<br>
<b>To: </b>'The Friday Morning Applied Complexity Coffee Group' <<a href="mailto:friam@redfish.com" target="_blank">friam@redfish.com</a>><br>
<b>Subject: </b>Re: [FRIAM] Abduction and Introspection</span><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
</div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Thanks, Marcus,
<o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Am I correct that all of your examples fall with in this frame;<o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><!--[if gte vml 1]><v:shapetype id="_x0000_t75" coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f">
<v:stroke joinstyle="miter" />
<v:formulas>
<v:f eqn="if lineDrawn pixelLineWidth 0" />
<v:f eqn="sum @0 1 0" />
<v:f eqn="sum 0 0 @1" />
<v:f eqn="prod @2 1 2" />
<v:f eqn="prod @3 21600 pixelWidth" />
<v:f eqn="prod @3 21600 pixelHeight" />
<v:f eqn="sum @0 0 1" />
<v:f eqn="prod @6 1 2" />
<v:f eqn="prod @7 21600 pixelWidth" />
<v:f eqn="sum @8 21600 0" />
<v:f eqn="prod @7 21600 pixelHeight" />
<v:f eqn="sum @10 21600 0" />
</v:formulas>
<v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect" />
<o:lock v:ext="edit" aspectratio="t" />
</v:shapetype><v:shape id="_x0000_s1026" type="#_x0000_t75" alt="" style='position:absolute;margin-left:0;margin-top:0;width:303.75pt;height:71.25pt;z-index:251658240;mso-wrap-edited:f;mso-width-percent:0;mso-height-percent:0;mso-wrap-distance-left:9pt;mso-wrap-distance-top:0;mso-wrap-distance-right:9pt;mso-wrap-distance-bottom:0;mso-position-horizontal:left;mso-position-horizontal-relative:text;mso-position-vertical-relative:line;mso-width-percent:0;mso-height-percent:0' o:allowoverlap="f">
<v:imagedata src="cid:image001.png@01D5D42D.D03A82D0" o:title="16fe08ca87e4cff311" />
<w:wrap type="square"/>
</v:shape><![endif]--><![if !vml]><img width="405" height="95" style="width:4.2187in;height:.9895in" src="cid:image001.png@01D5D42D.D03A82D0" align="left" hspace="12" v:shapes="_x0000_s1026"><![endif]><br clear="all">
<o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">I keep expecting you guys to scream at me, “Of course, you idiot, self-perception is partial and subject to error!  HTF could it be otherwise?”   I would love that.  I would record
 it and put it on loop for half my colleagues in psychology departments around the world. 
<o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Nick
<o:p></o:p></p>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Nicholas Thompson<o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Emeritus Professor of Ethology and Psychology<o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Clark University<o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><a href="mailto:ThompNickSon2@gmail.com" target="_blank"><span style="color:#0563C1">ThompNickSon2@gmail.com</span></a><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><a href="https://wordpress.clarku.edu/nthompson/" target="_blank"><span style="color:#0563C1">https://wordpress.clarku.edu/nthompson/</span></a><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
</div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
<div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><b>From:</b> Friam <<a href="mailto:friam-bounces@redfish.com" target="_blank">friam-bounces@redfish.com</a>>
<b>On Behalf Of </b>Marcus Daniels<br>
<b>Sent:</b> Saturday, January 25, 2020 12:16 PM<br>
<b>To:</b> The Friday Morning Applied Complexity Coffee Group <<a href="mailto:friam@redfish.com" target="_blank">friam@redfish.com</a>><br>
<b>Subject:</b> Re: [FRIAM] Abduction and Introspection<o:p></o:p></p>
</div>
</div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><b><span style="font-size:12.0pt">Nick writes:</span></b><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
<p class="gmail-m3992771605335586144quotation"> As software engineers, what conditions would a program have to fulfill to say that a computer was monitoring “itself<o:p></o:p></p>
<p class="gmail-m3992771605335586144quotation"> <o:p></o:p></p>
<p class="gmail-m3992771605335586144quotation">It is common for codes that calculate things to periodically test invariants that should hold.   For example, a physics code might test for conservation of mass or energy.   A conversion between a data structure
 with one index scheme to another is often followed by a check to ensure the total number of records did not change, or if it did change that it changed by an expected amount.   It is also possible, but less common, to write a code so that proofs are constructed
 by virtue of the code being compliable against a set of types.   The types describe all of the conditions that must hold regarding the behavior of a function.    In that case it is not necessary to detect if something goes haywire at runtime because it is
 simply not possible for something to go haywire.  (A computer could still miscalculate due to a cosmic ray, or some other physical interruption, but assuming that did not happen a complete proof-carrying code would not fail within its specifications.)<o:p></o:p></p>
<p class="gmail-m3992771605335586144quotation">A weaker form of self-monitoring is to periodically check for memory or disk usage, and to raise an alarm if they are unexpectedly high or low.   Such an alarm might trigger cleanups of old results, otherwise kept
 around for convenience.  <o:p></o:p></p>
<p class="gmail-m3992771605335586144quotation"> <o:p></o:p></p>
<p class="gmail-m3992771605335586144quotation">Marcus<o:p></o:p></p>
<p class="gmail-m3992771605335586144msoplaintext"> <o:p></o:p></p>
</div>
</div>
<p class="MsoNormal">============================================================<br>
FRIAM Applied Complexity Group listserv<br>
Meets Fridays 9a-11:30 at cafe at St. John's College<br>
to unsubscribe <a href="http://redfish.com/mailman/listinfo/friam_redfish.com" target="_blank">
http://redfish.com/mailman/listinfo/friam_redfish.com</a><br>
archives back to 2003: <a href="http://friam.471366.n2.nabble.com/" target="_blank">
http://friam.471366.n2.nabble.com/</a><br>
FRIAM-COMIC <a href="http://friam-comic.blogspot.com/" target="_blank">http://friam-comic.blogspot.com/</a> by Dr. Strangelove<o:p></o:p></p>
</blockquote>
</div>
</div>
</body>
</html>