       Re: How to tell Mathematica to stop conditional testing in an If statment if one condition is niether True or False? McCarthy evaluation rules? 'and then' test?

• To: mathgroup at smc.vnet.net
• Subject: [mg69556] Re: How to tell Mathematica to stop conditional testing in an If statment if one condition is niether True or False? McCarthy evaluation rules? 'and then' test?
• From: "Jens-Peer Kuska" <kuska at informatik.uni-leipzig.de>
• Date: Fri, 15 Sep 2006 06:45:58 -0400 (EDT)
• Organization: Uni Leipzig
• References: <eebfu3\$5dt\$1@smc.vnet.net>

```Hi,

you mean:

xc = Table[i, {i, 1, 3}]
x = 5;
If[TrueQ[x == b] && xc[] == 4, Print["True"],
Print["False"],
Print["Can't  decide"]]

?? because And[] will automatical stop evaluation
it's arguments when

the result is sure.

Regards

Jens

"Nasser Abbasi" <nma at 12000.org> schrieb im
Newsbeitrag news:eebfu3\$5dt\$1 at smc.vnet.net...
|I can better describe this with simple example:
|
| ------------- code ------------
|
| Remove["Global`*"];
| xc = Table[i, {i, 1, 3}]
| x = 5;
| If[x == b && xc[] == 4, Print["True"],
Print["False"], Print["Can't
| decide"]]
|
| ----- end code -------------
| In the above, 'x==b' is neither True nor False,
since 'b' has no numerical
| value.
|
| But what I want is when this happens, for
Mathematica to NOT continue with
| the  testing if xc[]==4  is True (because
even if it is True, it will
| not change the outcome, which is can't decide.
|
| I am looking for something like 'and then'
which says to test the next
| condition only if the one just tested was true.
|
| The interesting thing is that if 'b' had a
value, say 7, which makes the
| first test (the x==b) to be False, then
Mathematica does the right thing,
| and will not try to check the xc[]==4
condition.  I need it to do the
| same thing when also the result of the check is
'undecided', not just
| 'False' or 'True'.
|
| Is there a way to do this?  Notice in the
example above, I get the error
| that xc[] is out of bound, but still get the
can't decide message.
|
| It is clear to me that the way Mathematica does
it now is not the right way.
| I do not see why it tries to check for
xc[]==4 when it will not make a
| difference to the final result.
|
| any thoughts?
|
| thanks,
| Nasser
|
|
|

```

• Prev by Date: Re: Known recursion link to Hermite polynomials not solved in Mathematica
• Next by Date: Re: Batch evaluation of multiple notebooks?
• Previous by thread: RE: How to tell Mathematica to stop conditional testing in an If statment if one condition is niether True or False? McCarthy evaluation rules? 'and then' test?
• Next by thread: Re: How to tell Mathematica to stop conditional testing in an If statment if one condition is niether True or False? McCarthy evaluation rules? 'and then' test?