<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=us-ascii">
<META content="MSHTML 6.00.2800.1400" name=GENERATOR>
<STYLE>@font-face {
        font-family: Tahoma;
}
@page Section1 {size: 8.5in 11.0in; margin: 1.0in 1.25in 1.0in 1.25in; }
P.MsoNormal {
        FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Times New Roman"
}
LI.MsoNormal {
        FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Times New Roman"
}
DIV.MsoNormal {
        FONT-SIZE: 12pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Times New Roman"
}
A:link {
        COLOR: blue; TEXT-DECORATION: underline
}
SPAN.MsoHyperlink {
        COLOR: blue; TEXT-DECORATION: underline
}
A:visited {
        COLOR: purple; TEXT-DECORATION: underline
}
SPAN.MsoHyperlinkFollowed {
        COLOR: purple; TEXT-DECORATION: underline
}
SPAN.emailstyle17 {
        COLOR: windowtext; FONT-FAMILY: Arial
}
SPAN.EmailStyle18 {
        COLOR: navy; FONT-FAMILY: Arial
}
DIV.Section1 {
        page: Section1
}
</STYLE>
</HEAD>
<BODY lang=EN-US vLink=purple link=blue>
<DIV dir=ltr align=left><SPAN class=057492116-22042004><FONT face=Arial 
color=#0000ff size=2>I am not sure which default setting is the better (though 
your sitation suggests it is the "first violation ends it" default 
behavior).</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=057492116-22042004><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=057492116-22042004><FONT face=Arial 
color=#0000ff size=2>If you'd like to (pre)set this feature in your 
model/paradigm file (that you might distribute to your users), create a registry 
key in your root folder:</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=057492116-22042004><FONT face=Arial 
color=#0000ff size=2>/ConstraintManagerSettings/ViolationCount&nbsp; and set it 
to 1.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=057492116-22042004><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=057492116-22042004><FONT face=Arial 
color=#0000ff size=2>--</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=057492116-22042004><FONT face=Arial 
color=#0000ff size=2>peter</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=057492116-22042004><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=057492116-22042004><FONT face=Arial 
color=#0000ff size=2></FONT></SPAN>&nbsp;</DIV><BR>
<BLOCKQUOTE dir=ltr 
style="PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #0000ff 2px solid; MARGIN-RIGHT: 0px">
  <DIV class=OutlookMessageHeader lang=en-us dir=ltr align=left>
  <HR tabIndex=-1>
  <FONT face=Tahoma size=2><B>From:</B> 
  gme-users-bounces@list.isis.vanderbilt.edu 
  [mailto:gme-users-bounces@list.isis.vanderbilt.edu] <B>On Behalf Of 
  </B>Matthew J. Emerson<BR><B>Sent:</B> Thursday, April 22, 2004 5:54 
  PM<BR><B>To:</B> gme-users<BR><B>Subject:</B> RE: [gme-users] various 
  complaints about constraints<BR></FONT><BR></DIV>
  <DIV></DIV>
  <DIV class=Section1>
  <P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN 
  style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">Yes, I have the 
  short-circuit logic operators enabled &#8211; this does not make the &#8220;implies&#8221; 
  operator a short-circuit operator.&nbsp; As a work-around, I&#8217;ve replaced used 
  of the &#8220;implies&#8221; operator with judicious use of &amp;&amp;, ||, etc&#8230; in my 
  constraint equations.&nbsp; But I would rather &#8220;implies&#8221; were a short-circuit 
  operator itself.</SPAN></FONT></P>
  <P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN 
  style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"></SPAN></FONT>&nbsp;</P>
  <P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN 
  style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">As for setting 
  &#8220;Evaluation ends after first violation,&#8221; setting this does prevent GME from 
  crashing.&nbsp; But, I can&#8217;t force the user to set this option.&nbsp; Since my 
  paradigm won&#8217;t work properly unless it is set, it would be nice if I could in 
  some way configure my paradigm to automatically set this option for the 
  user.&nbsp; Or, what would be better and easier is if &#8220;Evaluation ends after 
  the first violated priority level&#8221; were the default configuration for 
  GME.&nbsp; I think that&#8217;s the setting that makes the most sense as default 
  anyway.</SPAN></FONT></P>
  <P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN 
  style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"></SPAN></FONT>&nbsp;</P>
  <P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN 
  style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial">--Matt</SPAN></FONT></P>
  <P class=MsoNormal><FONT face=Arial color=navy size=2><SPAN 
  style="FONT-SIZE: 10pt; COLOR: navy; FONT-FAMILY: Arial"></SPAN></FONT>&nbsp;</P>
  <P class=MsoNormal style="MARGIN-LEFT: 0.5in"><FONT face=Tahoma size=2><SPAN 
  style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">-----Original 
  Message-----<BR><B><SPAN style="FONT-WEIGHT: bold">From:</SPAN></B> Peter 
  Volgyesi [mailto:peter.volgyesi@vanderbilt.edu] <BR><B><SPAN 
  style="FONT-WEIGHT: bold">Sent:</SPAN></B> Thursday, April 22, 2004 9:06 
  AM<BR><B><SPAN style="FONT-WEIGHT: bold">To:</SPAN></B> gme-users<BR><B><SPAN 
  style="FONT-WEIGHT: bold">Subject:</SPAN></B> RE: [gme-users] various 
  complaints about constraints</SPAN></FONT></P>
  <P class=MsoNormal style="MARGIN-LEFT: 0.5in"><FONT face="Times New Roman" 
  size=3><SPAN style="FONT-SIZE: 12pt"></SPAN></FONT>&nbsp;</P>
  <P class=MsoNormal style="MARGIN-LEFT: 0.5in"><FONT face=Arial color=blue 
  size=2><SPAN 
  style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Arial">Hi,</SPAN></FONT></P>
  <P class=MsoNormal style="MARGIN-LEFT: 0.5in"><FONT face="Times New Roman" 
  size=3><SPAN style="FONT-SIZE: 12pt"></SPAN></FONT>&nbsp;</P>
  <P class=MsoNormal style="MARGIN-LEFT: 0.5in"><FONT face=Arial color=blue 
  size=2><SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Arial">To the 
  short-circuit evaluation problem: have you tried to enable short-circuit 
  logical operators? (File/Display Constraints/Settings)</SPAN></FONT></P>
  <P class=MsoNormal style="MARGIN-LEFT: 0.5in"><FONT face="Times New Roman" 
  size=3><SPAN style="FONT-SIZE: 12pt"></SPAN></FONT>&nbsp;</P>
  <P class=MsoNormal style="MARGIN-LEFT: 0.5in"><FONT face=Arial color=blue 
  size=2><SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Arial">Also, 
  make sure that "Evaluation ends after the first violation" is set on this 
  page. </SPAN></FONT></P>
  <P class=MsoNormal style="MARGIN-LEFT: 0.5in"><FONT face="Times New Roman" 
  size=3><SPAN style="FONT-SIZE: 12pt"></SPAN></FONT>&nbsp;</P>
  <P class=MsoNormal style="MARGIN-LEFT: 0.5in"><FONT face=Arial color=blue 
  size=2><SPAN 
  style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Arial">--</SPAN></FONT></P>
  <P class=MsoNormal style="MARGIN-LEFT: 0.5in"><FONT face=Arial color=blue 
  size=2><SPAN 
  style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: Arial">peter</SPAN></FONT></P>
  <P class=MsoNormal style="MARGIN-LEFT: 0.5in"><FONT face="Times New Roman" 
  size=3><SPAN style="FONT-SIZE: 12pt"></SPAN></FONT>&nbsp;</P>
  <P class=MsoNormal style="MARGIN-LEFT: 0.5in"><FONT face="Times New Roman" 
  size=3><SPAN style="FONT-SIZE: 12pt"></SPAN></FONT>&nbsp;</P>
  <BLOCKQUOTE 
  style="BORDER-RIGHT: medium none; PADDING-RIGHT: 0in; BORDER-TOP: medium none; PADDING-LEFT: 4pt; PADDING-BOTTOM: 0in; MARGIN: 5pt 0in 5pt 3.75pt; BORDER-LEFT: blue 1.5pt solid; PADDING-TOP: 0in; BORDER-BOTTOM: medium none">
    <P class=MsoNormal style="MARGIN-LEFT: 0.5in"><FONT face="Times New Roman" 
    size=3><SPAN style="FONT-SIZE: 12pt"></SPAN></FONT>&nbsp;</P>
    <DIV class=MsoNormal style="MARGIN-LEFT: 0.5in; TEXT-ALIGN: center" 
    align=center><FONT face="Times New Roman" size=3><SPAN 
    style="FONT-SIZE: 12pt">
    <HR align=center width="100%" SIZE=2>
    </SPAN></FONT></DIV>
    <P class=MsoNormal 
    style="MARGIN-BOTTOM: 12pt; MARGIN-LEFT: 0.5in; MARGIN-RIGHT: 0in"><B><FONT 
    face=Tahoma size=2><SPAN 
    style="FONT-WEIGHT: bold; FONT-SIZE: 10pt; FONT-FAMILY: Tahoma">From:</SPAN></FONT></B><FONT 
    face=Tahoma size=2><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Tahoma"> 
    gme-users-bounces@list.isis.vanderbilt.edu 
    [mailto:gme-users-bounces@list.isis.vanderbilt.edu] <B><SPAN 
    style="FONT-WEIGHT: bold">On Behalf Of </SPAN></B>Matthew J. 
    Emerson<BR><B><SPAN style="FONT-WEIGHT: bold">Sent:</SPAN></B> Sunday, April 
    18, 2004 7:16 AM<BR><B><SPAN style="FONT-WEIGHT: bold">To:</SPAN></B> 
    gme-users<BR><B><SPAN style="FONT-WEIGHT: bold">Subject:</SPAN></B> 
    [gme-users] various complaints about constraints</SPAN></FONT></P>
    <P class=MsoNormal style="MARGIN-LEFT: 0.5in"><FONT face=Arial size=2><SPAN 
    style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">I don&#8217;t think that the 
    constraint manager really evaluates constraints in the order of their 
    priority.</SPAN></FONT></P>
    <P class=MsoNormal style="MARGIN-LEFT: 0.5in"><FONT face="Times New Roman" 
    size=3><SPAN style="FONT-SIZE: 12pt"></SPAN></FONT>&nbsp;</P>
    <P class=MsoNormal style="MARGIN-LEFT: 0.5in"><FONT face=Arial size=2><SPAN 
    style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">I have two priority-1 
    constraints that need to be checked before all others, because if those two 
    constraints evaluate to false then the other constraints will crash 
    gme.&nbsp; Well, no matter what priority I make the other constraints, gme 
    crashes.&nbsp; If I delete the lower-priority constraints, gme does not 
    crash.&nbsp; If I turn my priority-1 constraints into constraint functions 
    and then call them as part of the lower-priority constraints as 
    pre-conditions, then gme does not crash.&nbsp; But I&#8217;m going to have a hard 
    time finding every case where I need to check these pre-conditions and 
    inserting the necessary function calls.&nbsp; I&#8217;m going to miss some and gme 
    is going to soundlessly crash when the constraint manager goes into an 
    infinite loop.</SPAN></FONT></P>
    <P class=MsoNormal style="MARGIN-LEFT: 0.5in"><FONT face="Times New Roman" 
    size=3><SPAN style="FONT-SIZE: 12pt"></SPAN></FONT>&nbsp;</P>
    <P class=MsoNormal style="MARGIN-LEFT: 0.5in"><FONT face=Arial size=2><SPAN 
    style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">I think that if the constraint 
    manager would just check my priority-1 constraints first and then stop 
    checking constraints if they evaluate to false, my life would be much 
    easier.</SPAN></FONT></P>
    <P class=MsoNormal style="MARGIN-LEFT: 0.5in"><FONT face="Times New Roman" 
    size=3><SPAN style="FONT-SIZE: 12pt"></SPAN></FONT>&nbsp;</P>
    <P class=MsoNormal style="MARGIN-LEFT: 0.5in"><FONT face=Arial size=2><SPAN 
    style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">Also, if the &#8220;implies&#8221; statement 
    used short-circuit evaluation, it would make my life easier.&nbsp; For 
    instance if you say &#8220;A implies B&#8221;, and A is false, then don&#8217;t check 
    B.</SPAN></FONT></P>
    <P class=MsoNormal style="MARGIN-LEFT: 0.5in"><FONT face="Times New Roman" 
    size=3><SPAN style="FONT-SIZE: 12pt"></SPAN></FONT>&nbsp;</P>
    <P class=MsoNormal style="MARGIN-LEFT: 0.5in"><FONT face=Arial size=2><SPAN 
    style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">Finally, it would be good if 
    some priority levels beyond level-1 could result in critical 
    evaluations.&nbsp; Assuming that the constraint manager eventually checks 
    constraints in priority order as I described above, it would be good to be 
    able to specify an evaluation order among critical 
    constraints.</SPAN></FONT></P>
    <P class=MsoNormal style="MARGIN-LEFT: 0.5in"><FONT face="Times New Roman" 
    size=3><SPAN style="FONT-SIZE: 12pt"></SPAN></FONT>&nbsp;</P>
    <P class=MsoNormal style="MARGIN-LEFT: 0.5in"><FONT face=Arial size=2><SPAN 
    style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">--Matt 
  </SPAN></FONT></P></BLOCKQUOTE></DIV></BLOCKQUOTE></BODY></HTML>