PredImplies(a,b) ==
--true if a => b in the sense of logical implication
--a = "true" => true
a=true => true
a=b => true
false -- added by RDJ: 12/21/82
--error() -- for the time being
Truth table rather suggests that this implements "a or not b", i.e. "b
implies a".
What is interesting, though, is the usage of PredImplies. Or rather the
use of (boot meaning) of =>.
src/boot/Makenotes.tex says.
--------------------
The expression
\begin{verbatim}
(a =>b;c) will be translated to if a then b else c or
(COND (a b) (T c))
\end{verbatim}
If the exit is not a component of a blockof or pileof statements
then
\begin{verbatim}
a=>b will be translated to (COND (a b))
\end{verbatim}
----------------------
According to http://www.cis.upenn.edu/~matuszek/LispText/lisp-cond.html,
"it is an error if none of the conditions are true, and the result of
the COND is undefined".
Now in
CondAncestorP(xname,leaves,condition) ==
-- checks for being a principal ancestor of one of the leaves
for u in leaves repeat
u':=first u
ucond:=
null rest u => true
first rest u
xname = u' or member(xname,first (CatEval u').4) =>
PredImplies(ucond,condition) => return u'
the => certainly appears in a pile, but what is actually returned if
xname = u' or member(xname,first (CatEval u').4)
is never true? My BOOT knowledge is probably not good enough to give a
deterministic answer.
In fact, it's a pitty that they did not have version control 30 years
back. The code looks rather strange. For example,
if ancindex and (PredImplies(anccond,condition); true)
-- I have no idea who effectively commented out the predImplies
-- JHD 25/8/86
might have to do with the fact that PredImplies did not behave as
specified. Or someone was translating that into
if ancindex and (anccond => condition; true)
where => is used in its BOOT meaning rather than its logical meaning.
Very strange!!!
Ralf
--
You received this message because you are subscribed to the Google Groups "FriCAS -
computer algebra system" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/fricas-devel?hl=en.