BPS-0.1.0.0: src/main/haskell/app/ATMSTrun.hs
module ATMSTrun where
import Data.Symbol
import Data.TMS.ATMS.ATMST
runATMS1 :: IO (Either AtmsErr ())
runATMS1 = do
runATMST $ do
atms <- createATMS "Ex1"
setInformantStringViaString atms
setDatumStringViaString atms
-- debugAtms "Created" atms
na <- createNode atms "A" True False
-- debugAtms "Added assumption node A" atms
nc <- createNode atms "C" True False
-- debugAtms "Added assumption node C" atms
ne <- createNode atms "E" True False
-- debugAtms "Added assumption node E" atms
nh <- createNode atms "H" False False
-- debugAtms "Added non-assumption node H" atms
justifyNode "R1" nh [nc, ne]
-- debugAtms "After rule R1" atms
ng <- createNode atms "G" False False
-- debugAtms "After non-assumption node G" atms
justifyNode "R2" ng [na, nc]
-- debugAtms "After rule R2" atms
nx <- createNode atms "X" False True
-- debugAtms "After contradiction node X" atms
justifyNode "R3" nx [ng]
-- debugAtms "After rule R3" atms
nb <- createNode atms "B" True False
debugAtms "Added assumption node B" atms
justifyNode "R4" nh [nb, nc]
debugAtms "After rule R4" atms