From 15dcc4936996a27019112ff58e9202a81d792047 Mon Sep 17 00:00:00 2001 From: dos-reis Date: Thu, 17 Jan 2008 14:27:29 +0000 Subject: Fix SF/1849734 * interp/i-spec1.boot (upand): Don't insist on having operands of type Boolean. (upor): Likewise. * algebra/mkrecord.spad.pamphlet (Pair): New domain constructor. * algebra/exposed.lsp.pamphlet: Expose Pair, PropositionalLogic, PropositionalFormula. * algebra/boolean.spad.pamphlet (PropositionalFormula): New domain constructor. * algebra/Makefile.pamphlet (axiom_algebra_layer_4): Include PAIR.o. (axiom_algebra_layer_19): Include PROPFRML.o * share/algebra: Update databases. * testsuite/interpreter/1849734.input: New. --- src/interp/i-spec1.boot | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'src/interp') diff --git a/src/interp/i-spec1.boot b/src/interp/i-spec1.boot index 574d5b75..064c7e58 100644 --- a/src/interp/i-spec1.boot +++ b/src/interp/i-spec1.boot @@ -246,7 +246,7 @@ upand x == putTarget(term1,$Boolean) putTarget(term2,$Boolean) ms := bottomUp term1 - ms isnt [=$Boolean] => throwKeyedMsgSP("S2IS0054",[1,'"_"and_""],term1) + ms isnt [=$Boolean] => nil $genValue => BooleanEquality(objValUnwrap(getValue term1), getConstantFromDomain('(false),$Boolean)) => @@ -254,12 +254,12 @@ upand x == putModeSet(x,ms) -- first term is true, so look at the second one ms := bottomUp term2 - ms isnt [=$Boolean] => throwKeyedMsgSP("S2IS0054",[2,'"_"and_""],term2) + ms isnt [=$Boolean] => nil putValue(x,getValue term2) putModeSet(x,ms) ms := bottomUp term2 - ms isnt [=$Boolean] => throwKeyedMsgSP("S2IS0054",[2,'"_"and_""],term2) + ms isnt [=$Boolean] => nil -- generate an IF expression and let the rest of the code handle it cond := [mkAtreeNode "=",mkAtree "false",term1] putTarget(cond,$Boolean) @@ -276,7 +276,7 @@ upor x == putTarget(term1,$Boolean) putTarget(term2,$Boolean) ms := bottomUp term1 - ms isnt [=$Boolean] => throwKeyedMsgSP("S2IS0054",[1,'"_"or_""],term1) + ms isnt [=$Boolean] => nil $genValue => BooleanEquality(objValUnwrap(getValue term1), getConstantFromDomain('(true),$Boolean)) => @@ -284,12 +284,12 @@ upor x == putModeSet(x,ms) -- first term is false, so look at the second one ms := bottomUp term2 - ms isnt [=$Boolean] => throwKeyedMsgSP("S2IS0054",[2,'"_"or_""],term2) + ms isnt [=$Boolean] => nil putValue(x,getValue term2) putModeSet(x,ms) ms := bottomUp term2 - ms isnt [=$Boolean] => throwKeyedMsgSP("S2IS0054",[2,'"_"or_""],term2) + ms isnt [=$Boolean] => nil -- generate an IF expression and let the rest of the code handle it cond := [mkAtreeNode "=",mkAtree "true",term1] putTarget(cond,$Boolean) -- cgit v1.2.3