From e62fba2f0f774cd1ee68a41df3d648d7fe2e72e6 Mon Sep 17 00:00:00 2001 From: Samuel Balco Date: Wed, 22 May 2024 14:22:49 +0100 Subject: [PATCH] JSON logging cleanup (#3881) * Re-add the `test-log-simplify-json` rpc test with a much smaller footprint, as we want to just track the context logging format * Clean up the equation contexts a bit in booster, as we weren't consistently logging messages around functions/equations * Closes #3864 by adding a conversion from the old custom log levels to contextual log filters. * Closes #3866 by removing the SimplifyJson log level which has been replaced by `-l Simplify --log-format json` --------- Co-authored-by: github-actions Co-authored-by: Georgy Lukyanov --- booster/library/Booster/CLOptions.hs | 52 +- booster/library/Booster/Log/Context.hs | 30 +- .../library/Booster/Pattern/ApplyEquations.hs | 69 +- booster/library/Booster/Util.hs | 10 +- .../resources/log-simplify-json.kore | 4672 ++++++++++++++++- .../test-log-simplify-json/README.md | 7 + .../simplify-log.txt.golden | 80 + .../test-log-simplify-json/state.send | 1 + .../test-log-simplify-json/test.sh | 39 + booster/tools/booster/Proxy.hs | 4 +- booster/tools/booster/Server.hs | 16 +- dev-tools/booster-dev/Server.hs | 14 +- dev-tools/kore-rpc-dev/Server.hs | 67 +- scripts/booster-integration-tests.sh | 3 + 14 files changed, 4942 insertions(+), 122 deletions(-) mode change 120000 => 100644 booster/test/rpc-integration/resources/log-simplify-json.kore create mode 100644 booster/test/rpc-integration/test-log-simplify-json/README.md create mode 100644 booster/test/rpc-integration/test-log-simplify-json/simplify-log.txt.golden create mode 100644 booster/test/rpc-integration/test-log-simplify-json/state.send create mode 100755 booster/test/rpc-integration/test-log-simplify-json/test.sh diff --git a/booster/library/Booster/CLOptions.hs b/booster/library/Booster/CLOptions.hs index cdcdbdc809..b002b6f488 100644 --- a/booster/library/Booster/CLOptions.hs +++ b/booster/library/Booster/CLOptions.hs @@ -1,3 +1,4 @@ +{-# LANGUAGE QuasiQuotes #-} {-# LANGUAGE TemplateHaskell #-} module Booster.CLOptions ( @@ -6,6 +7,7 @@ module Booster.CLOptions ( LogFormat (..), clOptionsParser, adjustLogLevels, + levelToContext, versionInfoParser, ) where @@ -22,9 +24,11 @@ import Text.Casing (fromHumps, fromKebab, toKebab, toPascal) import Text.Read (readMaybe) import Booster.GlobalState (EquationOptions (..)) -import Booster.Log.Context (ContextFilter, readContextFilter) +import Booster.Log.Context (ContextFilter, ctxt, readContextFilter) import Booster.SMT.Interface (SMTOptions (..), defaultSMTOptions) import Booster.SMT.LowLevelCodec qualified as SMT (parseSExpr) +import Data.Map (Map) +import Data.Map qualified as Map data CLOptions = CLOptions { definitionFile :: FilePath @@ -35,7 +39,7 @@ data CLOptions = CLOptions , logTimeStamps :: Bool , logFormat :: LogFormat , logContexts :: [ContextFilter] - , simplificationLogFile :: Maybe FilePath + , logFile :: Maybe FilePath , smtOptions :: Maybe SMTOptions , equationOptions :: EquationOptions , -- developer options below @@ -116,10 +120,10 @@ clOptionsParser = ) <*> optional ( strOption - ( metavar "JSON_LOG_FILE" - <> long "simplification-log-file" + ( metavar "LOG_FILE" + <> long "log-file" <> help - "Log file for the JSON simplification logs" + "Log file to output the logs into" ) ) <*> parseSMTOptions @@ -171,7 +175,6 @@ allowedLogLevels = , ("RewriteKore", "Log all rewriting in kore-rpc fall-backs") , ("RewriteSuccess", "Log successful rewrites (booster and kore-rpc)") , ("Simplify", "Log all simplification/evaluation in booster") - , ("SimplifyJson", "Log simplification/evaluation in booster as JSON") , ("SimplifyKore", "Log all simplification in kore-rpc") , ("SimplifySuccess", "Log successful simplifications (booster and kore-rpc)") , ("Depth", "Log the current depth of the state") @@ -179,6 +182,43 @@ allowedLogLevels = , ("ErrorDetails", "Log error conditions with extensive details") ] +levelToContext :: Map Text [ContextFilter] +levelToContext = + Map.fromList + [ + ( "Simplify" + , + [ [ctxt| booster|kore>function*|simplification*,success|failure|abort|detail |] + , [ctxt| booster|kore>function*|simplification*,match,failure|abort |] + ] + ) + , + ( "SimplifySuccess" + , + [ [ctxt| booster|kore>function*|simplification*,success|detail |] + ] + ) + , + ( "Rewrite" + , + [ [ctxt| booster|kore>rewrite*,success|failure|abort|detail |] + , [ctxt| booster|kore>rewrite*,match,failure|abort |] + ] + ) + , + ( "RewriteSuccess" + , + [ [ctxt| booster|kore>rewrite*,success|detail |] + ] + ) + , + ( "SMT" + , + [ [ctxt| booster|kore>smt |] + ] + ) + ] + -- Partition provided log levels into standard and custom ones, and -- select the lowest standard level. Default to 'LevelInfo' if no -- standard log level was given. diff --git a/booster/library/Booster/Log/Context.hs b/booster/library/Booster/Log/Context.hs index 9fd074e78f..2b03d5cea1 100644 --- a/booster/library/Booster/Log/Context.hs +++ b/booster/library/Booster/Log/Context.hs @@ -1,10 +1,16 @@ -module Booster.Log.Context (ContextFilter, mustMatch, readContextFilter, readMatch) where +{-# LANGUAGE DeriveDataTypeable #-} +{-# LANGUAGE TemplateHaskellQuotes #-} + +module Booster.Log.Context (ContextFilter, mustMatch, readContextFilter, readMatch, ctxt) where import Control.Applicative ((<|>)) import Data.Attoparsec.ByteString.Char8 qualified as A import Data.ByteString.Char8 qualified as BS import Data.Char (isSpace) +import Data.Generics (Data, extQ) import Data.List.Extra (replace) +import Language.Haskell.TH (ExpQ, Lit (StringL), appE, litE, varE) +import Language.Haskell.TH.Quote (QuasiQuoter (..), dataToExpQ) data ContextFilterSingle = Exact BS.ByteString @@ -12,14 +18,14 @@ data ContextFilterSingle | Suffix BS.ByteString | Infix BS.ByteString | Negate ContextFilterSingle - deriving (Show) + deriving (Show, Data) data ContextFilter = First [ContextFilterSingle] | ThenDirectChild [ContextFilterSingle] ContextFilter | ThenChild [ContextFilterSingle] ContextFilter | Last [ContextFilterSingle] - deriving (Show) + deriving (Show, Data) reserved :: String reserved = "|*!>,." @@ -79,3 +85,21 @@ readMatch :: BS.ByteString -> [BS.ByteString] -> Either String Bool readMatch pat' xs = do pat <- A.parseOnly (contextFilterP <* A.skipSpace <* A.endOfInput) pat' pure $ mustMatch pat xs + +ctxt :: QuasiQuoter +ctxt = + QuasiQuoter + { quoteExp = + dataToExpQ (const Nothing `extQ` handleBS) + . either (error . show) id + . readContextFilter + , quotePat = undefined + , quoteType = undefined + , quoteDec = undefined + } + where + handleBS :: BS.ByteString -> Maybe ExpQ + handleBS x = + -- convert the byte string to a string literal + -- and wrap it back with BS.pack + Just $ appE (varE 'BS.pack) $ litE $ StringL $ BS.unpack x diff --git a/booster/library/Booster/Pattern/ApplyEquations.hs b/booster/library/Booster/Pattern/ApplyEquations.hs index 7486e53f64..e979ec80a6 100644 --- a/booster/library/Booster/Pattern/ApplyEquations.hs +++ b/booster/library/Booster/Pattern/ApplyEquations.hs @@ -28,7 +28,6 @@ module Booster.Pattern.ApplyEquations ( evaluateConstraints, ) where -import Control.Applicative (Alternative (..)) import Control.Monad import Control.Monad.Extra (fromMaybeM, whenJust) import Control.Monad.IO.Class (MonadIO (..)) @@ -45,7 +44,6 @@ import Control.Monad.Trans.Except import Control.Monad.Trans.Reader (ReaderT (..), ask, asks, withReaderT) import Control.Monad.Trans.State import Data.Aeson (object, (.=)) -import Data.Aeson.Text (encodeToLazyText) import Data.Bifunctor (bimap) import Data.ByteString.Char8 qualified as BS import Data.Coerce (coerce) @@ -62,7 +60,6 @@ import Data.Set qualified as Set import Data.Text (Text, pack) import Data.Text qualified as Text import Data.Text.Encoding qualified as Text -import Data.Text.Lazy qualified as Text (toStrict) import GHC.TypeLits (KnownSymbol) import Prettyprinter @@ -82,7 +79,6 @@ import Booster.Prettyprinter (renderDefault, renderOneLineText) import Booster.SMT.Interface qualified as SMT import Booster.Syntax.Json.Externalise (externaliseTerm) import Booster.Util (Bound (..)) -import Kore.JsonRpc.Types.Log qualified as KoreRpcLog import Kore.Util (showHashHex) newtype EquationT io a @@ -254,52 +250,6 @@ isMatchFailure _ = False isSuccess EquationApplied{} = True isSuccess _ = False -{- | Attempt to get an equation's unique id, falling back to it's label or eventually to UNKNOWN. - The fallbacks are useful in case of cached equation applications or the ones done via LLVM, - as neither of these categories have unique IDs. --} -equationRuleIdWithFallbacks :: EquationMetadata -> Text -equationRuleIdWithFallbacks metadata = - fromMaybe "UNKNOWN" (fmap getUniqueId metadata.ruleId <|> metadata.label) - -equationTraceToLogEntry :: EquationTrace Term -> KoreRpcLog.LogEntry -equationTraceToLogEntry = \case - EquationApplied _subjectTerm metadata _rewritten -> - KoreRpcLog.Simplification - { originalTerm - , originalTermIndex - , origin - , result = - KoreRpcLog.Success Nothing Nothing _ruleId - } - where - originalTerm = Nothing - originalTermIndex = Nothing - origin = KoreRpcLog.Booster - _ruleId = equationRuleIdWithFallbacks metadata - EquationNotApplied _subjectTerm metadata failure -> - KoreRpcLog.Simplification - { originalTerm - , originalTermIndex - , origin - , result = KoreRpcLog.Failure (failureDescription failure) (Just _ruleId) - } - where - originalTerm = Nothing - originalTermIndex = Nothing - origin = KoreRpcLog.Booster - _ruleId = equationRuleIdWithFallbacks metadata - - failureDescription :: ApplyEquationFailure -> Text.Text - failureDescription = \case - FailedMatch{} -> "Failed match" - IndeterminateMatch -> "IndeterminateMatch" - IndeterminateCondition{} -> "IndeterminateCondition" - ConditionFalse{} -> "ConditionFalse" - EnsuresFalse{} -> "EnsuresFalse" - RuleNotPreservingDefinedness -> "RuleNotPreservingDefinedness" - MatchConstraintViolated{} -> "MatchConstraintViolated" - startState :: SimplifierCache -> EquationState startState cache = EquationState @@ -426,9 +376,7 @@ iterateEquations :: Term -> EquationT io Term iterateEquations direction preference startTerm = do - result <- pushRecursion startTerm >>= checkCounter >> go startTerm <* popRecursion - when (startTerm /= result) $ withContext "success" $ withTermContext result $ pure () - pure result + pushRecursion startTerm >>= checkCounter >> go startTerm <* popRecursion where checkCounter counter = do config <- getConfig @@ -832,13 +780,15 @@ applyEquations theory handler term = do processEquations [] = pure term -- nothing to do, term stays the same processEquations (eq : rest) = do - res <- applyEquation term eq + res <- withRuleContext eq $ applyEquation term eq emitEquationTrace term eq.attributes.location eq.attributes.ruleLabel eq.attributes.uniqueId res handler - (\t -> setChanged >> pure t) + ( \t -> setChanged >> (withContext (LogContext eq) $ withContext "success" $ withTermContext t $ pure t) + ) (processEquations rest) - ( withContext "abort" $ - logMessage ("Aborting simplification/function evaluation" :: Text) >> pure term + ( withContext (LogContext eq) $ + withContext "abort" $ + logMessage ("Aborting simplification/function evaluation" :: Text) >> pure term ) res @@ -861,9 +811,6 @@ emitEquationTrace t loc lbl uid res = do Failure failure -> EquationNotApplied t (EquationMetadata loc lbl uid) failure prettyItem = pack . renderDefault . pretty $ newTraceItem logOther (LevelOther "Simplify") prettyItem - logOther - (LevelOther "SimplifyJson") - (Text.toStrict . encodeToLazyText $ equationTraceToLogEntry newTraceItem) case res of Success{} -> logOther (LevelOther "SimplifySuccess") prettyItem _ -> pure () @@ -875,7 +822,7 @@ applyEquation :: Term -> RewriteRule tag -> EquationT io ApplyEquationResult -applyEquation term rule = withRuleContext rule $ fmap (either Failure Success) $ runExceptT $ do +applyEquation term rule = fmap (either Failure Success) $ runExceptT $ do -- ensured by internalisation: no existentials in equations unless (null rule.existentials) $ do withContext "abort" $ diff --git a/booster/library/Booster/Util.hs b/booster/library/Booster/Util.hs index 252ea591a6..a2e990d5c7 100644 --- a/booster/library/Booster/Util.hs +++ b/booster/library/Booster/Util.hs @@ -118,19 +118,13 @@ decodeLabel' orig = -- logging helpers, some are adapted from monad-logger-aeson handleOutput :: FastLogger -> - Maybe FastLogger -> Log.Loc -> Log.LogSource -> Log.LogLevel -> Log.LogStr -> IO () -handleOutput stderrLogger mFileLogger loc src level msg = - case level of - Log.LevelOther "SimplifyJson" -> - case mFileLogger of - Nothing -> stderrLogger $ "[SimplifyJson] " <> msg <> "\n" - Just fileLogger -> fileLogger $ msg <> "\n" - _ -> stderrLogger $ Log.defaultLogStr loc src level msg +handleOutput stderrLogger loc src level msg = + stderrLogger $ Log.defaultLogStr loc src level msg newFastLoggerMaybeWithTime :: Maybe (IO FormattedTime) -> LogType -> IO (LogStr -> IO (), IO ()) newFastLoggerMaybeWithTime = \case diff --git a/booster/test/rpc-integration/resources/log-simplify-json.kore b/booster/test/rpc-integration/resources/log-simplify-json.kore deleted file mode 120000 index ffd68339cf..0000000000 --- a/booster/test/rpc-integration/resources/log-simplify-json.kore +++ /dev/null @@ -1 +0,0 @@ -foundry-bug-report.kore \ No newline at end of file diff --git a/booster/test/rpc-integration/resources/log-simplify-json.kore b/booster/test/rpc-integration/resources/log-simplify-json.kore new file mode 100644 index 0000000000..56b75c46b8 --- /dev/null +++ b/booster/test/rpc-integration/resources/log-simplify-json.kore @@ -0,0 +1,4671 @@ +[topCellInitializer{}(LblinitGeneratedTopCell{}()), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/imp-verification.k)")] + +module BASIC-K + sort SortK{} [] + sort SortKItem{} [] +endmodule +[] +module KSEQ + import BASIC-K [] + symbol kseq{}(SortKItem{}, SortK{}) : SortK{} [constructor{}(), functional{}(), injective{}()] + symbol dotk{}() : SortK{} [constructor{}(), functional{}(), injective{}()] + symbol append{}(SortK{}, SortK{}) : SortK{} [function{}(), functional{}()] + axiom {R} \implies{R}( + \and{R}( + \top{R}(), + \and{R}( + \in{SortK{}, R}(X0:SortK{}, dotk{}()), + \and{R}( + \in{SortK{}, R}(X1:SortK{}, TAIL:SortK{}), + \top{R}() + )) + ), + \equals{SortK{}, R}( + append{}(X0:SortK{}, X1:SortK{}), + \and{SortK{}}( + TAIL:SortK{}, + \top{SortK{}}() + ) + ) + ) [] + axiom {R} \implies{R}( + \and{R}( + \top{R}(), + \and{R}( + \in{SortK{}, R}(X0:SortK{}, kseq{}(K:SortKItem{}, KS:SortK{})), + \and{R}( + \in{SortK{}, R}(X1:SortK{}, TAIL:SortK{}), + \top{R}() + )) + ), + \equals{SortK{}, R}( + append{}(X0:SortK{}, X1:SortK{}), + \and{SortK{}}( + kseq{}(K:SortKItem{}, append{}(KS:SortK{}, TAIL:SortK{})), + \top{SortK{}}() + ) + ) + ) [] +endmodule +[] +module INJ + symbol inj{From, To}(From) : To [sortInjection{}()] + axiom {S1, S2, S3, R} \equals{S3, R}(inj{S2, S3}(inj{S1, S2}(T:S1)), inj{S1, S3}(T:S1)) [simplification{}()] +endmodule +[] +module K + import KSEQ [] + import INJ [] + alias weakExistsFinally{A}(A) : A where weakExistsFinally{A}(@X:A) := @X:A [] + alias weakAlwaysFinally{A}(A) : A where weakAlwaysFinally{A}(@X:A) := @X:A [] + alias allPathGlobally{A}(A) : A where allPathGlobally{A}(@X:A) := @X:A [] +endmodule +[] + +module IMP-VERIFICATION + +// imports + import K [] + +// sorts + sort SortKCellOpt{} [] + sort SortEnvCell{} [] + sort SortExpr{} [] + sort SortGeneratedTopCellFragment{} [] + hooked-sort SortList{} [concat{}(Lbl'Unds'List'Unds'{}()), element{}(LblListItem{}()), hook{}("LIST.List"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(913,3,913,32)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), unit{}(Lbl'Stop'List{}())] + sort SortKCell{} [] + sort SortEnvCellOpt{} [] + sort SortGeneratedTopCell{} [] + sort SortGeneratedCounterCell{} [] + hooked-sort SortMap{} [concat{}(Lbl'Unds'Map'Unds'{}()), element{}(Lbl'UndsPipe'-'-GT-Unds'{}()), hook{}("MAP.Map"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(218,3,218,29)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), unit{}(Lbl'Stop'Map{}())] + sort SortId{} [hasDomainValues{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(2240,3,2240,20)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), token{}()] + sort SortKConfigVar{} [hasDomainValues{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(40,3,40,28)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/kast.md)"), token{}()] + hooked-sort SortInt{} [hasDomainValues{}(), hook{}("INT.Int"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1189,3,1189,29)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)")] + hooked-sort SortSet{} [concat{}(Lbl'Unds'Set'Unds'{}()), element{}(LblSetItem{}()), hook{}("SET.Set"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(700,3,700,29)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), unit{}(Lbl'Stop'Set{}())] + sort SortKResult{} [] + sort SortStmt{} [] + hooked-sort SortBool{} [hasDomainValues{}(), hook{}("BOOL.Bool"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1068,3,1068,32)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)")] + sort SortValue{} [] + +// symbols + symbol Lbl'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(SortExpr{}) : SortExpr{} [constructor{}(), format{}("%c!%r %1"), functional{}(), injective{}(), left{}(Lbl'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}()), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(32,23,32,71)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)"), priorities{}(Lbl'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}()), right{}(Lbl'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}()), terminals{}("10")] + symbol Lbl'Hash'freezer'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}() : SortKItem{} [constructor{}(), format{}("%c#freezer!__EXPRESSIONS-SYNTAX_Expr_Expr0_%r %c(%r %c)%r"), functional{}(), injective{}(), left{}(), priorities{}(), right{}(), terminals{}("111")] + symbol Lbl'Hash'freezer-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}() : SortKItem{} [constructor{}(), format{}("%c#freezer-__EXPRESSIONS-SYNTAX_Expr_Expr0_%r %c(%r %c)%r"), functional{}(), injective{}(), left{}(), priorities{}(), right{}(), terminals{}("111")] + symbol Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(SortK{}) : SortKItem{} [constructor{}(), format{}("%c#freezer_!=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr0_%r %c(%r %1 %c)%r"), functional{}(), injective{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(SortK{}) : SortKItem{} [constructor{}(), format{}("%c#freezer_!=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1_%r %c(%r %1 %c)%r"), functional{}(), injective{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(SortK{}) : SortKItem{} [constructor{}(), format{}("%c#freezer_&&__EXPRESSIONS-SYNTAX_Expr_Expr_Expr0_%r %c(%r %1 %c)%r"), functional{}(), injective{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(SortK{}) : SortKItem{} [constructor{}(), format{}("%c#freezer_&&__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1_%r %c(%r %1 %c)%r"), functional{}(), injective{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(SortK{}) : SortKItem{} [constructor{}(), format{}("%c#freezer_*__EXPRESSIONS-SYNTAX_Expr_Expr_Expr0_%r %c(%r %1 %c)%r"), functional{}(), injective{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(SortK{}) : SortKItem{} [constructor{}(), format{}("%c#freezer_*__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1_%r %c(%r %1 %c)%r"), functional{}(), injective{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(SortK{}) : SortKItem{} [constructor{}(), format{}("%c#freezer_+__EXPRESSIONS-SYNTAX_Expr_Expr_Expr0_%r %c(%r %1 %c)%r"), functional{}(), injective{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(SortK{}) : SortKItem{} [constructor{}(), format{}("%c#freezer_+__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1_%r %c(%r %1 %c)%r"), functional{}(), injective{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(SortK{}) : SortKItem{} [constructor{}(), format{}("%c#freezer_-__EXPRESSIONS-SYNTAX_Expr_Expr_Expr0_%r %c(%r %1 %c)%r"), functional{}(), injective{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(SortK{}) : SortKItem{} [constructor{}(), format{}("%c#freezer_-__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1_%r %c(%r %1 %c)%r"), functional{}(), injective{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(SortK{}) : SortKItem{} [constructor{}(), format{}("%c#freezer_/__EXPRESSIONS-SYNTAX_Expr_Expr_Expr0_%r %c(%r %1 %c)%r"), functional{}(), injective{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(SortK{}) : SortKItem{} [constructor{}(), format{}("%c#freezer_/__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1_%r %c(%r %1 %c)%r"), functional{}(), injective{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(SortK{}) : SortKItem{} [constructor{}(), format{}("%c#freezer_<=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr0_%r %c(%r %1 %c)%r"), functional{}(), injective{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(SortK{}) : SortKItem{} [constructor{}(), format{}("%c#freezer_<=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1_%r %c(%r %1 %c)%r"), functional{}(), injective{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(SortK{}) : SortKItem{} [constructor{}(), format{}("%c#freezer_<__EXPRESSIONS-SYNTAX_Expr_Expr_Expr0_%r %c(%r %1 %c)%r"), functional{}(), injective{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(SortK{}) : SortKItem{} [constructor{}(), format{}("%c#freezer_<__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1_%r %c(%r %1 %c)%r"), functional{}(), injective{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(SortK{}) : SortKItem{} [constructor{}(), format{}("%c#freezer_==__EXPRESSIONS-SYNTAX_Expr_Expr_Expr0_%r %c(%r %1 %c)%r"), functional{}(), injective{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(SortK{}) : SortKItem{} [constructor{}(), format{}("%c#freezer_==__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1_%r %c(%r %1 %c)%r"), functional{}(), injective{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lbl'Hash'freezer'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr1'Unds'{}(SortK{}) : SortKItem{} [constructor{}(), format{}("%c#freezer_=_;_STATEMENTS-SYNTAX_Stmt_Id_Expr1_%r %c(%r %1 %c)%r"), functional{}(), injective{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(SortK{}) : SortKItem{} [constructor{}(), format{}("%c#freezer_>=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr0_%r %c(%r %1 %c)%r"), functional{}(), injective{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(SortK{}) : SortKItem{} [constructor{}(), format{}("%c#freezer_>=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1_%r %c(%r %1 %c)%r"), functional{}(), injective{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(SortK{}) : SortKItem{} [constructor{}(), format{}("%c#freezer_>__EXPRESSIONS-SYNTAX_Expr_Expr_Expr0_%r %c(%r %1 %c)%r"), functional{}(), injective{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(SortK{}) : SortKItem{} [constructor{}(), format{}("%c#freezer_>__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1_%r %c(%r %1 %c)%r"), functional{}(), injective{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(SortK{}) : SortKItem{} [constructor{}(), format{}("%c#freezer_||__EXPRESSIONS-SYNTAX_Expr_Expr_Expr0_%r %c(%r %1 %c)%r"), functional{}(), injective{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(SortK{}) : SortKItem{} [constructor{}(), format{}("%c#freezer_||__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1_%r %c(%r %1 %c)%r"), functional{}(), injective{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lbl'Hash'freezerif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt0'Unds'{}(SortK{}, SortK{}) : SortKItem{} [constructor{}(), format{}("%c#freezerif(_)_else__STATEMENTS-SYNTAX_Stmt_Expr_Stmt_Stmt0_%r %c(%r %1 %c,%r %2 %c)%r"), functional{}(), injective{}(), left{}(), priorities{}(), right{}(), terminals{}("110101")] + symbol Lbl'Hash'freezerlet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr1'Unds'{}(SortK{}, SortK{}) : SortKItem{} [constructor{}(), format{}("%c#freezerlet_=_in__VARIABLES-SYNTAX_Expr_Id_Expr_Expr1_%r %c(%r %1 %c,%r %2 %c)%r"), functional{}(), injective{}(), left{}(), priorities{}(), right{}(), terminals{}("110101")] + hooked-symbol Lbl'Hash'if'UndsHash'then'UndsHash'else'UndsHash'fi'Unds'K-EQUAL-SYNTAX'Unds'Sort'Unds'Bool'Unds'Sort'Unds'Sort{SortSort}(SortBool{}, SortSort, SortSort) : SortSort [format{}("%c#if%r %1 %c#then%r %2 %c#else%r %3 %c#fi%r"), function{}(), functional{}(), hook{}("KEQUAL.ite"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(2282,26,2282,119)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), smt-hook{}("ite"), terminals{}("1010101"), total{}()] + symbol Lbl-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(SortExpr{}) : SortExpr{} [constructor{}(), format{}("%c-%r %1"), functional{}(), injective{}(), left{}(Lbl-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}()), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(17,23,17,70)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)"), priorities{}(Lbl'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}()), right{}(Lbl-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}()), terminals{}("10")] + hooked-symbol Lbl'Stop'List{}() : SortList{} [format{}("%c.List%r"), function{}(), functional{}(), hook{}("LIST.unit"), klabel{}(".List"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(937,19,937,121)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), smtlib{}("smt_seq_nil"), symbol'Kywd'{}(), terminals{}("1"), total{}()] + hooked-symbol Lbl'Stop'Map{}() : SortMap{} [format{}("%c.Map%r"), function{}(), functional{}(), hook{}("MAP.unit"), klabel{}(".Map"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(248,18,248,104)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), symbol'Kywd'{}(), terminals{}("1"), total{}()] + hooked-symbol Lbl'Stop'Set{}() : SortSet{} [format{}("%c.Set%r"), function{}(), functional{}(), hook{}("SET.unit"), klabel{}(".Set"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(729,18,729,98)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), symbol'Kywd'{}(), terminals{}("1"), total{}()] + symbol Lbl'-LT-'env'-GT-'{}(SortMap{}) : SortEnvCell{} [constructor{}(), format{}("%c%r%i%n%1%d%n%c%r"), functional{}(), injective{}(), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(50,5,50,25)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/statements.k)"), priorities{}(), right{}(), terminals{}("101")] + symbol Lbl'-LT-'generatedCounter'-GT-'{}(SortInt{}) : SortGeneratedCounterCell{} [constructor{}(), format{}("%c%r%i%n%1%d%n%c%r"), functional{}(), injective{}(), left{}(), priorities{}(), right{}(), terminals{}("101")] + symbol Lbl'-LT-'generatedTop'-GT-'{}(SortKCell{}, SortEnvCell{}, SortGeneratedCounterCell{}) : SortGeneratedTopCell{} [constructor{}(), format{}("%c%r%i%n%1%n%2%d%n%c%r"), functional{}(), injective{}(), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(49,5,50,25)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/statements.k)"), priorities{}(), right{}(), terminals{}("10001")] + symbol Lbl'-LT-'generatedTop'-GT-'-fragment{}(SortKCellOpt{}, SortEnvCellOpt{}) : SortGeneratedTopCellFragment{} [constructor{}(), format{}("%c-fragment%r %1 %2 %c-fragment%r"), functional{}(), injective{}(), left{}(), priorities{}(), right{}(), terminals{}("1001")] + symbol Lbl'-LT-'k'-GT-'{}(SortK{}) : SortKCell{} [constructor{}(), format{}("%c%r%i%n%1%d%n%c%r"), functional{}(), injective{}(), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(49,5,49,23)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/statements.k)"), priorities{}(), right{}(), terminals{}("101")] + hooked-symbol LblList'Coln'get{}(SortList{}, SortInt{}) : SortKItem{} [format{}("%1 %c[%r %2 %c]%r"), function{}(), hook{}("LIST.get"), klabel{}("List:get"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(956,20,956,99)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), symbol'Kywd'{}(), terminals{}("0101")] + hooked-symbol LblList'Coln'range{}(SortList{}, SortInt{}, SortInt{}) : SortList{} [format{}("%crange%r %c(%r %1 %c,%r %2 %c,%r %3 %c)%r"), function{}(), hook{}("LIST.range"), klabel{}("List:range"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1003,19,1003,120)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), symbol'Kywd'{}(), terminals{}("11010101")] + hooked-symbol LblListItem{}(SortKItem{}) : SortList{} [format{}("%cListItem%r %c(%r %1 %c)%r"), function{}(), functional{}(), hook{}("LIST.element"), klabel{}("ListItem"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(945,19,945,132)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), smtlib{}("smt_seq_elem"), symbol'Kywd'{}(), terminals{}("1101"), total{}()] + hooked-symbol LblMap'Coln'lookup{}(SortMap{}, SortKItem{}) : SortKItem{} [format{}("%1 %c[%r %2 %c]%r"), function{}(), hook{}("MAP.lookup"), klabel{}("Map:lookup"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(271,20,271,113)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), symbol'Kywd'{}(), terminals{}("0101")] + hooked-symbol LblMap'Coln'update{}(SortMap{}, SortKItem{}, SortKItem{}) : SortMap{} [format{}("%1 %c[%r %2 %c<-%r %3 %c]%r"), function{}(), functional{}(), hook{}("MAP.update"), klabel{}("Map:update"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(290,18,290,140)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), symbol'Kywd'{}(), terminals{}("010101"), total{}()] + hooked-symbol LblSet'Coln'difference{}(SortSet{}, SortSet{}) : SortSet{} [format{}("%1 %c-Set%r %2"), function{}(), functional{}(), hook{}("SET.difference"), klabel{}("Set:difference"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(769,18,769,114)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), symbol'Kywd'{}(), terminals{}("010"), total{}()] + hooked-symbol LblSet'Coln'in{}(SortKItem{}, SortSet{}) : SortBool{} [format{}("%1 %cin%r %2"), function{}(), functional{}(), hook{}("SET.in"), klabel{}("Set:in"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(777,19,777,102)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), symbol'Kywd'{}(), terminals{}("010"), total{}()] + hooked-symbol LblSetItem{}(SortKItem{}) : SortSet{} [format{}("%cSetItem%r %c(%r %1 %c)%r"), function{}(), functional{}(), hook{}("SET.element"), injective{}(), klabel{}("SetItem"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(737,18,737,119)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), symbol'Kywd'{}(), terminals{}("1101"), total{}()] + symbol Lbl'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(SortExpr{}, SortExpr{}) : SortExpr{} [constructor{}(), format{}("%1 %c!=%r %2"), functional{}(), injective{}(), left{}(Lbl'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}()), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(26,23,26,73)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)"), priorities{}(Lbl'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}()), right{}(Lbl'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}()), terminals{}("010")] + hooked-symbol Lbl'UndsPerc'Int'Unds'{}(SortInt{}, SortInt{}) : SortInt{} [format{}("%1 %c%%Int%r %2"), function{}(), hook{}("INT.tmod"), klabel{}("_%Int_"), left{}(Lbl'UndsStar'Int'Unds'{}(),Lbl'Unds'divInt'Unds'{}(),Lbl'UndsPerc'Int'Unds'{}(),Lbl'UndsSlsh'Int'Unds'{}(),Lbl'Unds'modInt'Unds'{}()), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1237,18,1237,120)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(Lbl'UndsPlus'Int'Unds'{}(),Lbl'Unds-GT--GT-'Int'Unds'{}(),Lbl'Unds'xorInt'Unds'{}(),Lbl'UndsAnd-'Int'Unds'{}(),Lbl'Unds-LT--LT-'Int'Unds'{}(),Lbl'UndsPipe'Int'Unds'{}(),Lbl'Unds'-Int'Unds'{}()), right{}(), smt-hook{}("mod"), symbol'Kywd'{}(), terminals{}("010")] + symbol Lbl'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(SortExpr{}, SortExpr{}) : SortExpr{} [constructor{}(), format{}("%1 %c&&%r %2"), functional{}(), injective{}(), left{}(Lbl'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}()), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(33,23,33,68)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)"), priorities{}(Lbl'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}()), right{}(), terminals{}("010")] + hooked-symbol Lbl'UndsAnd-'Int'Unds'{}(SortInt{}, SortInt{}) : SortInt{} [comm{}(), format{}("%1 %c&Int%r %2"), function{}(), functional{}(), hook{}("INT.and"), klabel{}("_&Int_"), left{}(Lbl'UndsAnd-'Int'Unds'{}()), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1248,18,1248,133)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(Lbl'Unds'xorInt'Unds'{}(),Lbl'UndsPipe'Int'Unds'{}()), right{}(), smtlib{}("andInt"), symbol'Kywd'{}(), terminals{}("010"), total{}()] + hooked-symbol Lbl'UndsStar'Int'Unds'{}(SortInt{}, SortInt{}) : SortInt{} [comm{}(), format{}("%1 %c*Int%r %2"), function{}(), functional{}(), hook{}("INT.mul"), klabel{}("_*Int_"), left{}(Lbl'Unds'modInt'Unds'{}(),Lbl'UndsPerc'Int'Unds'{}(),Lbl'UndsSlsh'Int'Unds'{}(),Lbl'Unds'divInt'Unds'{}(),Lbl'UndsStar'Int'Unds'{}()), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1233,18,1233,130)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(Lbl'UndsPlus'Int'Unds'{}(),Lbl'Unds-GT--GT-'Int'Unds'{}(),Lbl'Unds'xorInt'Unds'{}(),Lbl'UndsAnd-'Int'Unds'{}(),Lbl'Unds-LT--LT-'Int'Unds'{}(),Lbl'UndsPipe'Int'Unds'{}(),Lbl'Unds'-Int'Unds'{}()), right{}(), smt-hook{}("*"), symbol'Kywd'{}(), terminals{}("010"), total{}()] + symbol Lbl'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(SortExpr{}, SortExpr{}) : SortExpr{} [constructor{}(), format{}("%1 %c*%r %2"), functional{}(), injective{}(), left{}(Lbl'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}()), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(19,23,19,60)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)"), priorities{}(Lbl'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}()), right{}(), terminals{}("010")] + hooked-symbol Lbl'UndsPlus'Int'Unds'{}(SortInt{}, SortInt{}) : SortInt{} [comm{}(), format{}("%1 %c+Int%r %2"), function{}(), functional{}(), hook{}("INT.add"), klabel{}("_+Int_"), left{}(Lbl'UndsPlus'Int'Unds'{}(),Lbl'Unds'-Int'Unds'{}()), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1242,18,1242,130)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(Lbl'Unds-GT--GT-'Int'Unds'{}(),Lbl'Unds'xorInt'Unds'{}(),Lbl'UndsAnd-'Int'Unds'{}(),Lbl'Unds-LT--LT-'Int'Unds'{}(),Lbl'UndsPipe'Int'Unds'{}()), right{}(), smt-hook{}("+"), symbol'Kywd'{}(), terminals{}("010"), total{}()] + symbol Lbl'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(SortExpr{}, SortExpr{}) : SortExpr{} [constructor{}(), format{}("%1 %c+%r %2"), functional{}(), injective{}(), left{}(Lbl'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}()), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(22,23,22,60)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)"), priorities{}(Lbl'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}()), right{}(), terminals{}("010")] + hooked-symbol Lbl'Unds'-Int'Unds'{}(SortInt{}, SortInt{}) : SortInt{} [format{}("%1 %c-Int%r %2"), function{}(), functional{}(), hook{}("INT.sub"), klabel{}("_-Int_"), left{}(Lbl'UndsPlus'Int'Unds'{}(),Lbl'Unds'-Int'Unds'{}()), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1243,18,1243,124)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(Lbl'Unds-GT--GT-'Int'Unds'{}(),Lbl'Unds'xorInt'Unds'{}(),Lbl'UndsAnd-'Int'Unds'{}(),Lbl'Unds-LT--LT-'Int'Unds'{}(),Lbl'UndsPipe'Int'Unds'{}()), right{}(), smt-hook{}("-"), symbol'Kywd'{}(), terminals{}("010"), total{}()] + hooked-symbol Lbl'Unds'-Map'UndsUnds'MAP'Unds'Map'Unds'Map'Unds'Map{}(SortMap{}, SortMap{}) : SortMap{} [format{}("%1 %c-Map%r %2"), function{}(), functional{}(), hook{}("MAP.difference"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(311,18,311,88)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), terminals{}("010"), total{}()] + symbol Lbl'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(SortExpr{}, SortExpr{}) : SortExpr{} [constructor{}(), format{}("%1 %c-%r %2"), functional{}(), injective{}(), left{}(Lbl'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}()), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(23,23,23,57)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)"), priorities{}(Lbl'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}()), right{}(), terminals{}("010")] + hooked-symbol Lbl'UndsSlsh'Int'Unds'{}(SortInt{}, SortInt{}) : SortInt{} [format{}("%1 %c/Int%r %2"), function{}(), hook{}("INT.tdiv"), klabel{}("_/Int_"), left{}(Lbl'UndsSlsh'Int'Unds'{}(),Lbl'Unds'modInt'Unds'{}(),Lbl'Unds'divInt'Unds'{}(),Lbl'UndsPerc'Int'Unds'{}(),Lbl'UndsStar'Int'Unds'{}()), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1236,18,1236,120)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(Lbl'UndsPlus'Int'Unds'{}(),Lbl'Unds-GT--GT-'Int'Unds'{}(),Lbl'Unds'xorInt'Unds'{}(),Lbl'UndsAnd-'Int'Unds'{}(),Lbl'Unds-LT--LT-'Int'Unds'{}(),Lbl'UndsPipe'Int'Unds'{}(),Lbl'Unds'-Int'Unds'{}()), right{}(), smt-hook{}("div"), symbol'Kywd'{}(), terminals{}("010")] + symbol Lbl'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(SortExpr{}, SortExpr{}) : SortExpr{} [constructor{}(), format{}("%1 %c/%r %2"), functional{}(), injective{}(), left{}(Lbl'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}()), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(20,23,20,60)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)"), priorities{}(Lbl'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}()), right{}(), terminals{}("010")] + hooked-symbol Lbl'Unds-LT--LT-'Int'Unds'{}(SortInt{}, SortInt{}) : SortInt{} [format{}("%1 %c<=Int%r %2"), function{}(), functional{}(), hook{}("INT.ge"), klabel{}("_>=Int_"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1306,19,1306,113)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), smt-hook{}(">="), symbol'Kywd'{}(), terminals{}("010"), total{}()] + symbol Lbl'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(SortExpr{}, SortExpr{}) : SortExpr{} [constructor{}(), format{}("%1 %c>=%r %2"), functional{}(), injective{}(), left{}(Lbl'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}()), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(27,23,27,73)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)"), priorities{}(Lbl'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}()), right{}(Lbl'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}()), terminals{}("010")] + hooked-symbol Lbl'Unds-GT--GT-'Int'Unds'{}(SortInt{}, SortInt{}) : SortInt{} [format{}("%1 %c>>Int%r %2"), function{}(), hook{}("INT.shr"), klabel{}("_>>Int_"), left{}(Lbl'Unds-LT--LT-'Int'Unds'{}(),Lbl'Unds-GT--GT-'Int'Unds'{}()), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1245,18,1245,121)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(Lbl'Unds'xorInt'Unds'{}(),Lbl'UndsAnd-'Int'Unds'{}(),Lbl'UndsPipe'Int'Unds'{}()), right{}(), smtlib{}("shrInt"), symbol'Kywd'{}(), terminals{}("010")] + hooked-symbol Lbl'Unds-GT-'Int'Unds'{}(SortInt{}, SortInt{}) : SortBool{} [format{}("%1 %c>Int%r %2"), function{}(), functional{}(), hook{}("INT.gt"), klabel{}("_>Int_"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1307,19,1307,111)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), smt-hook{}(">"), symbol'Kywd'{}(), terminals{}("010"), total{}()] + symbol Lbl'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(SortExpr{}, SortExpr{}) : SortExpr{} [constructor{}(), format{}("%1 %c>%r %2"), functional{}(), injective{}(), left{}(Lbl'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}()), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(28,23,28,73)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)"), priorities{}(Lbl'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(),Lbl'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}()), right{}(Lbl'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}()), terminals{}("010")] + hooked-symbol Lbl'Unds'List'Unds'{}(SortList{}, SortList{}) : SortList{} [assoc{}(), element{}(LblListItem{}()), format{}("%1%n%2"), function{}(), functional{}(), hook{}("LIST.concat"), klabel{}("_List_"), left{}(Lbl'Unds'List'Unds'{}()), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(929,19,929,188)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), smtlib{}("smt_seq_concat"), symbol'Kywd'{}(), terminals{}("00"), total{}(), unit{}(Lbl'Stop'List{}())] + hooked-symbol Lbl'Unds'Map'Unds'{}(SortMap{}, SortMap{}) : SortMap{} [assoc{}(), comm{}(), element{}(Lbl'UndsPipe'-'-GT-Unds'{}()), format{}("%1%n%2"), function{}(), hook{}("MAP.concat"), klabel{}("_Map_"), left{}(Lbl'Unds'Map'Unds'{}()), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(240,18,240,173)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), symbol'Kywd'{}(), terminals{}("00"), unit{}(Lbl'Stop'Map{}())] + hooked-symbol Lbl'Unds'Set'Unds'{}(SortSet{}, SortSet{}) : SortSet{} [assoc{}(), comm{}(), element{}(LblSetItem{}()), format{}("%1%n%2"), function{}(), hook{}("SET.concat"), idem{}(), klabel{}("_Set_"), left{}(Lbl'Unds'Set'Unds'{}()), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(721,18,721,165)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), symbol'Kywd'{}(), terminals{}("00"), unit{}(Lbl'Stop'Set{}())] + hooked-symbol Lbl'UndsLSqBUnds-LT-'-'UndsRSqBUnds'LIST'Unds'List'Unds'List'Unds'Int'Unds'KItem{}(SortList{}, SortInt{}, SortKItem{}) : SortList{} [format{}("%1 %c[%r %2 %c<-%r %3 %c]%r"), function{}(), hook{}("LIST.update"), klabel{}("List:set"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(965,19,965,108)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), terminals{}("010101")] + hooked-symbol Lbl'UndsLSqBUnds-LT-'-undef'RSqB'{}(SortMap{}, SortKItem{}) : SortMap{} [format{}("%1 %c[%r %2 %c<-%r %cundef%r %c]%r"), function{}(), functional{}(), hook{}("MAP.remove"), klabel{}("_[_<-undef]"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(299,18,299,117)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), symbol'Kywd'{}(), terminals{}("010111"), total{}()] + hooked-symbol Lbl'UndsLSqBUndsRSqB'orDefault'UndsUnds'MAP'Unds'KItem'Unds'Map'Unds'KItem'Unds'KItem{}(SortMap{}, SortKItem{}, SortKItem{}) : SortKItem{} [format{}("%1 %c[%r %2 %c]%r %corDefault%r %3"), function{}(), functional{}(), hook{}("MAP.lookupOrDefault"), klabel{}("Map:lookupOrDefault"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(281,20,281,134)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), terminals{}("010110"), total{}()] + hooked-symbol Lbl'UndsXor-Perc'Int'UndsUnds'{}(SortInt{}, SortInt{}, SortInt{}) : SortInt{} [format{}("%1 %c^%%Int%r %2 %3"), function{}(), hook{}("INT.powmod"), klabel{}("_^%Int__"), left{}(Lbl'UndsXor-Perc'Int'UndsUnds'{}(),Lbl'UndsXor-'Int'Unds'{}()), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1231,18,1231,139)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(Lbl'UndsPlus'Int'Unds'{}(),Lbl'Unds'divInt'Unds'{}(),Lbl'UndsPerc'Int'Unds'{}(),Lbl'Unds-GT--GT-'Int'Unds'{}(),Lbl'Unds'xorInt'Unds'{}(),Lbl'UndsSlsh'Int'Unds'{}(),Lbl'UndsAnd-'Int'Unds'{}(),Lbl'Unds-LT--LT-'Int'Unds'{}(),Lbl'UndsStar'Int'Unds'{}(),Lbl'UndsPipe'Int'Unds'{}(),Lbl'Unds'modInt'Unds'{}(),Lbl'Unds'-Int'Unds'{}()), right{}(), smt-hook{}("(mod (^ #1 #2) #3)"), symbol'Kywd'{}(), terminals{}("0100")] + hooked-symbol Lbl'UndsXor-'Int'Unds'{}(SortInt{}, SortInt{}) : SortInt{} [format{}("%1 %c^Int%r %2"), function{}(), hook{}("INT.pow"), klabel{}("_^Int_"), left{}(Lbl'UndsXor-'Int'Unds'{}(),Lbl'UndsXor-Perc'Int'UndsUnds'{}()), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1230,18,1230,117)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(Lbl'UndsPlus'Int'Unds'{}(),Lbl'Unds'divInt'Unds'{}(),Lbl'UndsPerc'Int'Unds'{}(),Lbl'Unds-GT--GT-'Int'Unds'{}(),Lbl'Unds'xorInt'Unds'{}(),Lbl'UndsSlsh'Int'Unds'{}(),Lbl'UndsAnd-'Int'Unds'{}(),Lbl'Unds-LT--LT-'Int'Unds'{}(),Lbl'UndsStar'Int'Unds'{}(),Lbl'UndsPipe'Int'Unds'{}(),Lbl'Unds'modInt'Unds'{}(),Lbl'Unds'-Int'Unds'{}()), right{}(), smt-hook{}("^"), symbol'Kywd'{}(), terminals{}("010")] + symbol Lbl'UndsUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt'Unds'Stmt{}(SortStmt{}, SortStmt{}) : SortStmt{} [constructor{}(), format{}("%1 %2"), functional{}(), injective{}(), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(16,19,16,28)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/statements.k)"), priorities{}(), right{}(Lbl'UndsUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt'Unds'Stmt{}()), terminals{}("00")] + hooked-symbol Lbl'Unds'andBool'Unds'{}(SortBool{}, SortBool{}) : SortBool{} [format{}("%1 %candBool%r %2"), function{}(), functional{}(), hook{}("BOOL.and"), klabel{}("_andBool_"), left{}(Lbl'Unds'andBool'Unds'{}()), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1101,19,1101,146)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(Lbl'UndsEqlsSlshEqls'Bool'Unds'{}(),Lbl'UndsEqlsEqls'Bool'Unds'{}()), right{}(), smt-hook{}("and"), symbol'Kywd'{}(), terminals{}("010"), total{}()] + hooked-symbol Lbl'Unds'andThenBool'Unds'{}(SortBool{}, SortBool{}) : SortBool{} [format{}("%1 %candThenBool%r %2"), function{}(), functional{}(), hook{}("BOOL.andThen"), klabel{}("_andThenBool_"), left{}(Lbl'Unds'andThenBool'Unds'{}()), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1102,19,1102,154)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(Lbl'UndsEqlsSlshEqls'Bool'Unds'{}(),Lbl'UndsEqlsEqls'Bool'Unds'{}()), right{}(), smt-hook{}("and"), symbol'Kywd'{}(), terminals{}("010"), total{}()] + hooked-symbol Lbl'Unds'divInt'Unds'{}(SortInt{}, SortInt{}) : SortInt{} [format{}("%1 %cdivInt%r %2"), function{}(), hook{}("INT.ediv"), klabel{}("_divInt_"), left{}(Lbl'UndsSlsh'Int'Unds'{}(),Lbl'Unds'modInt'Unds'{}(),Lbl'UndsStar'Int'Unds'{}(),Lbl'UndsPerc'Int'Unds'{}(),Lbl'Unds'divInt'Unds'{}()), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1239,18,1239,122)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(Lbl'UndsPlus'Int'Unds'{}(),Lbl'Unds-GT--GT-'Int'Unds'{}(),Lbl'Unds'xorInt'Unds'{}(),Lbl'UndsAnd-'Int'Unds'{}(),Lbl'Unds-LT--LT-'Int'Unds'{}(),Lbl'UndsPipe'Int'Unds'{}(),Lbl'Unds'-Int'Unds'{}()), right{}(), smt-hook{}("div"), symbol'Kywd'{}(), terminals{}("010")] + symbol Lbl'Unds'dividesInt'UndsUnds'INT-COMMON'Unds'Bool'Unds'Int'Unds'Int{}(SortInt{}, SortInt{}) : SortBool{} [format{}("%1 %cdividesInt%r %2"), function{}(), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1318,19,1318,53)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), terminals{}("010")] + hooked-symbol Lbl'Unds'impliesBool'Unds'{}(SortBool{}, SortBool{}) : SortBool{} [format{}("%1 %cimpliesBool%r %2"), function{}(), functional{}(), hook{}("BOOL.implies"), klabel{}("_impliesBool_"), left{}(Lbl'Unds'impliesBool'Unds'{}()), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1106,19,1106,153)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(Lbl'UndsEqlsSlshEqls'Bool'Unds'{}(),Lbl'UndsEqlsEqls'Bool'Unds'{}()), right{}(), smt-hook{}("=>"), symbol'Kywd'{}(), terminals{}("010"), total{}()] + hooked-symbol Lbl'Unds'in'UndsUnds'LIST'Unds'Bool'Unds'KItem'Unds'List{}(SortKItem{}, SortList{}) : SortBool{} [format{}("%1 %cin%r %2"), function{}(), functional{}(), hook{}("LIST.in"), klabel{}("_inList_"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1012,19,1012,97)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), terminals{}("010"), total{}()] + hooked-symbol Lbl'Unds'in'Unds'keys'LParUndsRParUnds'MAP'Unds'Bool'Unds'KItem'Unds'Map{}(SortKItem{}, SortMap{}) : SortBool{} [format{}("%1 %cin_keys%r %c(%r %2 %c)%r"), function{}(), functional{}(), hook{}("MAP.in_keys"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(357,19,357,89)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), terminals{}("01101"), total{}()] + hooked-symbol Lbl'Unds'modInt'Unds'{}(SortInt{}, SortInt{}) : SortInt{} [format{}("%1 %cmodInt%r %2"), function{}(), hook{}("INT.emod"), klabel{}("_modInt_"), left{}(Lbl'UndsStar'Int'Unds'{}(),Lbl'UndsPerc'Int'Unds'{}(),Lbl'Unds'divInt'Unds'{}(),Lbl'UndsSlsh'Int'Unds'{}(),Lbl'Unds'modInt'Unds'{}()), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1240,18,1240,122)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(Lbl'UndsPlus'Int'Unds'{}(),Lbl'Unds-GT--GT-'Int'Unds'{}(),Lbl'Unds'xorInt'Unds'{}(),Lbl'UndsAnd-'Int'Unds'{}(),Lbl'Unds-LT--LT-'Int'Unds'{}(),Lbl'UndsPipe'Int'Unds'{}(),Lbl'Unds'-Int'Unds'{}()), right{}(), smt-hook{}("mod"), symbol'Kywd'{}(), terminals{}("010")] + hooked-symbol Lbl'Unds'orBool'Unds'{}(SortBool{}, SortBool{}) : SortBool{} [format{}("%1 %corBool%r %2"), function{}(), functional{}(), hook{}("BOOL.or"), klabel{}("_orBool_"), left{}(Lbl'Unds'orBool'Unds'{}()), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1104,19,1104,143)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(Lbl'UndsEqlsSlshEqls'Bool'Unds'{}(),Lbl'UndsEqlsEqls'Bool'Unds'{}()), right{}(), smt-hook{}("or"), symbol'Kywd'{}(), terminals{}("010"), total{}()] + hooked-symbol Lbl'Unds'orElseBool'Unds'{}(SortBool{}, SortBool{}) : SortBool{} [format{}("%1 %corElseBool%r %2"), function{}(), functional{}(), hook{}("BOOL.orElse"), klabel{}("_orElseBool_"), left{}(Lbl'Unds'orElseBool'Unds'{}()), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1105,19,1105,151)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(Lbl'UndsEqlsSlshEqls'Bool'Unds'{}(),Lbl'UndsEqlsEqls'Bool'Unds'{}()), right{}(), smt-hook{}("or"), symbol'Kywd'{}(), terminals{}("010"), total{}()] + hooked-symbol Lbl'Unds'xorBool'Unds'{}(SortBool{}, SortBool{}) : SortBool{} [format{}("%1 %cxorBool%r %2"), function{}(), functional{}(), hook{}("BOOL.xor"), klabel{}("_xorBool_"), left{}(Lbl'Unds'xorBool'Unds'{}()), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1103,19,1103,146)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(Lbl'UndsEqlsSlshEqls'Bool'Unds'{}(),Lbl'UndsEqlsEqls'Bool'Unds'{}()), right{}(), smt-hook{}("xor"), symbol'Kywd'{}(), terminals{}("010"), total{}()] + hooked-symbol Lbl'Unds'xorInt'Unds'{}(SortInt{}, SortInt{}) : SortInt{} [comm{}(), format{}("%1 %cxorInt%r %2"), function{}(), functional{}(), hook{}("INT.xor"), klabel{}("_xorInt_"), left{}(Lbl'Unds'xorInt'Unds'{}()), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1250,18,1250,135)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(Lbl'UndsPipe'Int'Unds'{}()), right{}(), smtlib{}("xorInt"), symbol'Kywd'{}(), terminals{}("010"), total{}()] + hooked-symbol Lbl'UndsPipe'-'-GT-Unds'{}(SortKItem{}, SortKItem{}) : SortMap{} [format{}("%1 %c|->%r %2"), function{}(), functional{}(), hook{}("MAP.element"), injective{}(), klabel{}("_|->_"), left{}(Lbl'UndsPipe'-'-GT-Unds'{}()), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(257,18,257,127)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(Lbl'Stop'Map{}(),Lbl'Unds'Map'Unds'{}()), right{}(Lbl'UndsPipe'-'-GT-Unds'{}()), symbol'Kywd'{}(), terminals{}("010"), total{}()] + hooked-symbol Lbl'UndsPipe'Int'Unds'{}(SortInt{}, SortInt{}) : SortInt{} [comm{}(), format{}("%1 %c|Int%r %2"), function{}(), functional{}(), hook{}("INT.or"), klabel{}("_|Int_"), left{}(Lbl'UndsPipe'Int'Unds'{}()), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1252,18,1252,131)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), smtlib{}("orInt"), symbol'Kywd'{}(), terminals{}("010"), total{}()] + hooked-symbol Lbl'UndsPipe'Set'UndsUnds'SET'Unds'Set'Unds'Set'Unds'Set{}(SortSet{}, SortSet{}) : SortSet{} [comm{}(), format{}("%1 %c|Set%r %2"), function{}(), functional{}(), hook{}("SET.union"), left{}(Lbl'UndsPipe'Set'UndsUnds'SET'Unds'Set'Unds'Set'Unds'Set{}()), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(748,18,748,92)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), terminals{}("010"), total{}()] + symbol Lbl'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(SortExpr{}, SortExpr{}) : SortExpr{} [constructor{}(), format{}("%1 %c||%r %2"), functional{}(), injective{}(), left{}(Lbl'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}()), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(34,23,34,68)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)"), priorities{}(), right{}(), terminals{}("010")] + hooked-symbol LblabsInt'LParUndsRParUnds'INT-COMMON'Unds'Int'Unds'Int{}(SortInt{}) : SortInt{} [format{}("%cabsInt%r %c(%r %1 %c)%r"), function{}(), functional{}(), hook{}("INT.abs"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1269,18,1269,119)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), smt-hook{}("(ite (< #1 0) (- 0 #1) #1)"), terminals{}("1101"), total{}()] + hooked-symbol LblbitRangeInt'LParUndsCommUndsCommUndsRParUnds'INT-COMMON'Unds'Int'Unds'Int'Unds'Int'Unds'Int{}(SortInt{}, SortInt{}, SortInt{}) : SortInt{} [format{}("%cbitRangeInt%r %c(%r %1 %c,%r %2 %c,%r %3 %c)%r"), function{}(), hook{}("INT.bitRange"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1294,18,1294,103)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), terminals{}("11010101")] + hooked-symbol Lblchoice'LParUndsRParUnds'MAP'Unds'KItem'Unds'Map{}(SortMap{}) : SortKItem{} [format{}("%cchoice%r %c(%r %1 %c)%r"), function{}(), hook{}("MAP.choice"), klabel{}("Map:choice"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(393,20,393,101)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), terminals{}("1101")] + hooked-symbol Lblchoice'LParUndsRParUnds'SET'Unds'KItem'Unds'Set{}(SortSet{}) : SortKItem{} [format{}("%cchoice%r %c(%r %1 %c)%r"), function{}(), hook{}("SET.choice"), klabel{}("Set:choice"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(804,20,804,95)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), terminals{}("1101")] + hooked-symbol LblfillList'LParUndsCommUndsCommUndsCommUndsRParUnds'LIST'Unds'List'Unds'List'Unds'Int'Unds'Int'Unds'KItem{}(SortList{}, SortInt{}, SortInt{}, SortKItem{}) : SortList{} [format{}("%cfillList%r %c(%r %1 %c,%r %2 %c,%r %3 %c,%r %4 %c)%r"), function{}(), hook{}("LIST.fill"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(993,19,993,100)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), terminals{}("1101010101")] + symbol LblfreshInt'LParUndsRParUnds'INT'Unds'Int'Unds'Int{}(SortInt{}) : SortInt{} [format{}("%cfreshInt%r %c(%r %1 %c)%r"), freshGenerator{}(), function{}(), functional{}(), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1432,18,1432,77)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), terminals{}("1101"), total{}()] + symbol LblgetGeneratedCounterCell{}(SortGeneratedTopCell{}) : SortGeneratedCounterCell{} [format{}("%cgetGeneratedCounterCell%r %c(%r %1 %c)%r"), function{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lblif'LParUndsRParUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt{}(SortExpr{}, SortStmt{}) : SortStmt{} [constructor{}(), format{}("%cif%r %c(%r %1 %c)%r %2"), functional{}(), injective{}(), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(10,19,10,41)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/statements.k)"), priorities{}(Lbl'UndsUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt'Unds'Stmt{}()), right{}(), terminals{}("11010")] + symbol Lblif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt{}(SortExpr{}, SortStmt{}, SortStmt{}) : SortStmt{} [constructor{}(), format{}("%cif%r %c(%r %1 %c)%r %2 %celse%r %3"), functional{}(), injective{}(), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(9,19,9,72)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/statements.k)"), priorities{}(Lbl'UndsUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt'Unds'Stmt{}()), right{}(), terminals{}("1101010")] + symbol LblinitEnvCell{}() : SortEnvCell{} [format{}("%cinitEnvCell%r"), function{}(), left{}(), priorities{}(), right{}(), terminals{}("1")] + symbol LblinitGeneratedCounterCell{}() : SortGeneratedCounterCell{} [format{}("%cinitGeneratedCounterCell%r"), function{}(), left{}(), priorities{}(), right{}(), terminals{}("1")] + symbol LblinitGeneratedTopCell{}(SortMap{}) : SortGeneratedTopCell{} [format{}("%cinitGeneratedTopCell%r %c(%r %1 %c)%r"), function{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol LblinitKCell{}(SortMap{}) : SortKCell{} [format{}("%cinitKCell%r %c(%r %1 %c)%r"), function{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + hooked-symbol LblintersectSet'LParUndsCommUndsRParUnds'SET'Unds'Set'Unds'Set'Unds'Set{}(SortSet{}, SortSet{}) : SortSet{} [comm{}(), format{}("%cintersectSet%r %c(%r %1 %c,%r %2 %c)%r"), function{}(), functional{}(), hook{}("SET.intersection"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(759,18,759,90)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), terminals{}("110101"), total{}()] + symbol LblisBool{}(SortK{}) : SortBool{} [format{}("%cisBool%r %c(%r %1 %c)%r"), function{}(), functional{}(), left{}(), priorities{}(), right{}(), terminals{}("1101"), total{}()] + symbol LblisEnvCell{}(SortK{}) : SortBool{} [format{}("%cisEnvCell%r %c(%r %1 %c)%r"), function{}(), functional{}(), left{}(), priorities{}(), right{}(), terminals{}("1101"), total{}()] + symbol LblisEnvCellOpt{}(SortK{}) : SortBool{} [format{}("%cisEnvCellOpt%r %c(%r %1 %c)%r"), function{}(), functional{}(), left{}(), priorities{}(), right{}(), terminals{}("1101"), total{}()] + symbol LblisExpr{}(SortK{}) : SortBool{} [format{}("%cisExpr%r %c(%r %1 %c)%r"), function{}(), functional{}(), left{}(), priorities{}(), right{}(), terminals{}("1101"), total{}()] + symbol LblisGeneratedCounterCell{}(SortK{}) : SortBool{} [format{}("%cisGeneratedCounterCell%r %c(%r %1 %c)%r"), function{}(), functional{}(), left{}(), priorities{}(), right{}(), terminals{}("1101"), total{}()] + symbol LblisGeneratedTopCell{}(SortK{}) : SortBool{} [format{}("%cisGeneratedTopCell%r %c(%r %1 %c)%r"), function{}(), functional{}(), left{}(), priorities{}(), right{}(), terminals{}("1101"), total{}()] + symbol LblisGeneratedTopCellFragment{}(SortK{}) : SortBool{} [format{}("%cisGeneratedTopCellFragment%r %c(%r %1 %c)%r"), function{}(), functional{}(), left{}(), priorities{}(), right{}(), terminals{}("1101"), total{}()] + symbol LblisId{}(SortK{}) : SortBool{} [format{}("%cisId%r %c(%r %1 %c)%r"), function{}(), functional{}(), left{}(), priorities{}(), right{}(), terminals{}("1101"), total{}()] + symbol LblisInt{}(SortK{}) : SortBool{} [format{}("%cisInt%r %c(%r %1 %c)%r"), function{}(), functional{}(), left{}(), priorities{}(), right{}(), terminals{}("1101"), total{}()] + symbol LblisK{}(SortK{}) : SortBool{} [format{}("%cisK%r %c(%r %1 %c)%r"), function{}(), functional{}(), left{}(), priorities{}(), right{}(), terminals{}("1101"), total{}()] + symbol LblisKCell{}(SortK{}) : SortBool{} [format{}("%cisKCell%r %c(%r %1 %c)%r"), function{}(), functional{}(), left{}(), priorities{}(), right{}(), terminals{}("1101"), total{}()] + symbol LblisKCellOpt{}(SortK{}) : SortBool{} [format{}("%cisKCellOpt%r %c(%r %1 %c)%r"), function{}(), functional{}(), left{}(), priorities{}(), right{}(), terminals{}("1101"), total{}()] + symbol LblisKConfigVar{}(SortK{}) : SortBool{} [format{}("%cisKConfigVar%r %c(%r %1 %c)%r"), function{}(), functional{}(), left{}(), priorities{}(), right{}(), terminals{}("1101"), total{}()] + symbol LblisKItem{}(SortK{}) : SortBool{} [format{}("%cisKItem%r %c(%r %1 %c)%r"), function{}(), functional{}(), left{}(), priorities{}(), right{}(), terminals{}("1101"), total{}()] + symbol LblisKResult{}(SortK{}) : SortBool{} [format{}("%cisKResult%r %c(%r %1 %c)%r"), function{}(), functional{}(), left{}(), priorities{}(), right{}(), terminals{}("1101"), total{}()] + symbol LblisList{}(SortK{}) : SortBool{} [format{}("%cisList%r %c(%r %1 %c)%r"), function{}(), functional{}(), left{}(), priorities{}(), right{}(), terminals{}("1101"), total{}()] + symbol LblisMap{}(SortK{}) : SortBool{} [format{}("%cisMap%r %c(%r %1 %c)%r"), function{}(), functional{}(), left{}(), priorities{}(), right{}(), terminals{}("1101"), total{}()] + symbol LblisSet{}(SortK{}) : SortBool{} [format{}("%cisSet%r %c(%r %1 %c)%r"), function{}(), functional{}(), left{}(), priorities{}(), right{}(), terminals{}("1101"), total{}()] + symbol LblisStmt{}(SortK{}) : SortBool{} [format{}("%cisStmt%r %c(%r %1 %c)%r"), function{}(), functional{}(), left{}(), priorities{}(), right{}(), terminals{}("1101"), total{}()] + symbol LblisValue{}(SortK{}) : SortBool{} [format{}("%cisValue%r %c(%r %1 %c)%r"), function{}(), functional{}(), left{}(), priorities{}(), right{}(), terminals{}("1101"), total{}()] + hooked-symbol Lblkeys'LParUndsRParUnds'MAP'Unds'Set'Unds'Map{}(SortMap{}) : SortSet{} [format{}("%ckeys%r %c(%r %1 %c)%r"), function{}(), functional{}(), hook{}("MAP.keys"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(341,18,341,82)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), terminals{}("1101"), total{}()] + hooked-symbol Lblkeys'Unds'list'LParUndsRParUnds'MAP'Unds'List'Unds'Map{}(SortMap{}) : SortList{} [format{}("%ckeys_list%r %c(%r %1 %c)%r"), function{}(), hook{}("MAP.keys_list"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(349,19,349,80)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), terminals{}("1101")] + symbol Lbllet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr{}(SortId{}, SortExpr{}, SortExpr{}) : SortExpr{} [constructor{}(), format{}("%clet%r %1 %c=%r %2 %cin%r %3"), functional{}(), injective{}(), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(8,19,8,65)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/variables.k)"), priorities{}(), right{}(), terminals{}("101010")] + hooked-symbol Lbllog2Int'LParUndsRParUnds'INT-COMMON'Unds'Int'Unds'Int{}(SortInt{}) : SortInt{} [format{}("%clog2Int%r %c(%r %1 %c)%r"), function{}(), hook{}("INT.log2"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1280,18,1280,75)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), terminals{}("1101")] + hooked-symbol LblmakeList'LParUndsCommUndsRParUnds'LIST'Unds'List'Unds'Int'Unds'KItem{}(SortInt{}, SortKItem{}) : SortList{} [format{}("%cmakeList%r %c(... %r length: %1 %c,%r value: %2 %c)%r"), function{}(), hook{}("LIST.make"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(974,19,974,82)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), terminals{}("110101")] + hooked-symbol LblmaxInt'LParUndsCommUndsRParUnds'INT-COMMON'Unds'Int'Unds'Int'Unds'Int{}(SortInt{}, SortInt{}) : SortInt{} [format{}("%cmaxInt%r %c(%r %1 %c,%r %2 %c)%r"), function{}(), functional{}(), hook{}("INT.max"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1261,18,1261,114)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), smt-hook{}("(ite (< #1 #2) #2 #1)"), terminals{}("110101"), total{}()] + hooked-symbol LblminInt'LParUndsCommUndsRParUnds'INT-COMMON'Unds'Int'Unds'Int'Unds'Int{}(SortInt{}, SortInt{}) : SortInt{} [format{}("%cminInt%r %c(%r %1 %c,%r %2 %c)%r"), function{}(), functional{}(), hook{}("INT.min"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1260,18,1260,114)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), smt-hook{}("(ite (< #1 #2) #1 #2)"), terminals{}("110101"), total{}()] + symbol LblnoEnvCell{}() : SortEnvCellOpt{} [constructor{}(), format{}("%cnoEnvCell%r"), functional{}(), injective{}(), left{}(), priorities{}(), right{}(), terminals{}("1")] + symbol LblnoKCell{}() : SortKCellOpt{} [constructor{}(), format{}("%cnoKCell%r"), functional{}(), injective{}(), left{}(), priorities{}(), right{}(), terminals{}("1")] + hooked-symbol LblnotBool'Unds'{}(SortBool{}) : SortBool{} [format{}("%cnotBool%r %1"), function{}(), functional{}(), hook{}("BOOL.not"), klabel{}("notBool_"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1100,19,1100,139)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(Lbl'Unds'orElseBool'Unds'{}(),Lbl'Unds'orBool'Unds'{}(),Lbl'UndsEqlsSlshEqls'Bool'Unds'{}(),Lbl'Unds'andThenBool'Unds'{}(),Lbl'Unds'impliesBool'Unds'{}(),Lbl'UndsEqlsEqls'Bool'Unds'{}(),Lbl'Unds'andBool'Unds'{}(),Lbl'Unds'xorBool'Unds'{}()), right{}(), smt-hook{}("not"), symbol'Kywd'{}(), terminals{}("10"), total{}()] + symbol Lblproject'Coln'Bool{}(SortK{}) : SortBool{} [format{}("%cproject:Bool%r %c(%r %1 %c)%r"), function{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lblproject'Coln'EnvCell{}(SortK{}) : SortEnvCell{} [format{}("%cproject:EnvCell%r %c(%r %1 %c)%r"), function{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lblproject'Coln'EnvCellOpt{}(SortK{}) : SortEnvCellOpt{} [format{}("%cproject:EnvCellOpt%r %c(%r %1 %c)%r"), function{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lblproject'Coln'Expr{}(SortK{}) : SortExpr{} [format{}("%cproject:Expr%r %c(%r %1 %c)%r"), function{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lblproject'Coln'GeneratedCounterCell{}(SortK{}) : SortGeneratedCounterCell{} [format{}("%cproject:GeneratedCounterCell%r %c(%r %1 %c)%r"), function{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lblproject'Coln'GeneratedTopCell{}(SortK{}) : SortGeneratedTopCell{} [format{}("%cproject:GeneratedTopCell%r %c(%r %1 %c)%r"), function{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lblproject'Coln'GeneratedTopCellFragment{}(SortK{}) : SortGeneratedTopCellFragment{} [format{}("%cproject:GeneratedTopCellFragment%r %c(%r %1 %c)%r"), function{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lblproject'Coln'Id{}(SortK{}) : SortId{} [format{}("%cproject:Id%r %c(%r %1 %c)%r"), function{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lblproject'Coln'Int{}(SortK{}) : SortInt{} [format{}("%cproject:Int%r %c(%r %1 %c)%r"), function{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lblproject'Coln'K{}(SortK{}) : SortK{} [format{}("%cproject:K%r %c(%r %1 %c)%r"), function{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lblproject'Coln'KCell{}(SortK{}) : SortKCell{} [format{}("%cproject:KCell%r %c(%r %1 %c)%r"), function{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lblproject'Coln'KCellOpt{}(SortK{}) : SortKCellOpt{} [format{}("%cproject:KCellOpt%r %c(%r %1 %c)%r"), function{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lblproject'Coln'KItem{}(SortK{}) : SortKItem{} [format{}("%cproject:KItem%r %c(%r %1 %c)%r"), function{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lblproject'Coln'KResult{}(SortK{}) : SortKResult{} [format{}("%cproject:KResult%r %c(%r %1 %c)%r"), function{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lblproject'Coln'List{}(SortK{}) : SortList{} [format{}("%cproject:List%r %c(%r %1 %c)%r"), function{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lblproject'Coln'Map{}(SortK{}) : SortMap{} [format{}("%cproject:Map%r %c(%r %1 %c)%r"), function{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lblproject'Coln'Set{}(SortK{}) : SortSet{} [format{}("%cproject:Set%r %c(%r %1 %c)%r"), function{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lblproject'Coln'Stmt{}(SortK{}) : SortStmt{} [format{}("%cproject:Stmt%r %c(%r %1 %c)%r"), function{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + symbol Lblproject'Coln'Value{}(SortK{}) : SortValue{} [format{}("%cproject:Value%r %c(%r %1 %c)%r"), function{}(), left{}(), priorities{}(), right{}(), terminals{}("1101")] + hooked-symbol LblrandInt'LParUndsRParUnds'INT-COMMON'Unds'Int'Unds'Int{}(SortInt{}) : SortInt{} [format{}("%crandInt%r %c(%r %1 %c)%r"), function{}(), hook{}("INT.rand"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1328,18,1328,65)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), terminals{}("1101")] + hooked-symbol LblremoveAll'LParUndsCommUndsRParUnds'MAP'Unds'Map'Unds'Map'Unds'Set{}(SortMap{}, SortSet{}) : SortMap{} [format{}("%cremoveAll%r %c(%r %1 %c,%r %2 %c)%r"), function{}(), functional{}(), hook{}("MAP.removeAll"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(333,18,333,87)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), terminals{}("110101"), total{}()] + hooked-symbol LblsignExtendBitRangeInt'LParUndsCommUndsCommUndsRParUnds'INT-COMMON'Unds'Int'Unds'Int'Unds'Int'Unds'Int{}(SortInt{}, SortInt{}, SortInt{}) : SortInt{} [format{}("%csignExtendBitRangeInt%r %c(%r %1 %c,%r %2 %c,%r %3 %c)%r"), function{}(), hook{}("INT.signExtendBitRange"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1295,18,1295,113)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), terminals{}("11010101")] + hooked-symbol Lblsize'LParUndsRParUnds'LIST'Unds'Int'Unds'List{}(SortList{}) : SortInt{} [format{}("%csize%r %c(%r %1 %c)%r"), function{}(), functional{}(), hook{}("LIST.size"), klabel{}("sizeList"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1020,18,1020,117)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), smtlib{}("smt_seq_len"), terminals{}("1101"), total{}()] + hooked-symbol Lblsize'LParUndsRParUnds'MAP'Unds'Int'Unds'Map{}(SortMap{}) : SortInt{} [format{}("%csize%r %c(%r %1 %c)%r"), function{}(), functional{}(), hook{}("MAP.size"), klabel{}("sizeMap"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(373,18,373,99)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), terminals{}("1101"), total{}()] + hooked-symbol Lblsize'LParUndsRParUnds'SET'Unds'Int'Unds'Set{}(SortSet{}) : SortInt{} [format{}("%csize%r %c(%r %1 %c)%r"), function{}(), functional{}(), hook{}("SET.size"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(794,18,794,76)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), terminals{}("1101"), total{}()] + hooked-symbol LblsrandInt'LParUndsRParUnds'INT-COMMON'Unds'K'Unds'Int{}(SortInt{}) : SortK{} [format{}("%csrandInt%r %c(%r %1 %c)%r"), function{}(), hook{}("INT.srand"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1329,16,1329,65)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), terminals{}("1101")] + hooked-symbol LblupdateList'LParUndsCommUndsCommUndsRParUnds'LIST'Unds'List'Unds'List'Unds'Int'Unds'List{}(SortList{}, SortInt{}, SortList{}) : SortList{} [format{}("%cupdateList%r %c(... %r dest: %1 %c,%r index: %2 %c,%r src: %3 %c)%r"), function{}(), hook{}("LIST.updateAll"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(984,19,984,97)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), terminals{}("11010101")] + hooked-symbol LblupdateMap'LParUndsCommUndsRParUnds'MAP'Unds'Map'Unds'Map'Unds'Map{}(SortMap{}, SortMap{}) : SortMap{} [format{}("%cupdateMap%r %c(%r %1 %c,%r %2 %c)%r"), function{}(), functional{}(), hook{}("MAP.updateAll"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(324,18,324,87)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), terminals{}("110101"), total{}()] + hooked-symbol Lblvalues'LParUndsRParUnds'MAP'Unds'List'Unds'Map{}(SortMap{}) : SortList{} [format{}("%cvalues%r %c(%r %1 %c)%r"), function{}(), hook{}("MAP.values"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(365,19,365,77)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(), right{}(), terminals{}("1101")] + symbol Lblwhile'LParUndsRParUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt{}(SortExpr{}, SortStmt{}) : SortStmt{} [constructor{}(), format{}("%cwhile%r %c(%r %1 %c)%r %2"), functional{}(), injective{}(), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(11,19,11,44)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/statements.k)"), priorities{}(Lbl'UndsUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt'Unds'Stmt{}()), right{}(), terminals{}("11010")] + symbol Lbl'LBraUndsRBraUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt{}(SortStmt{}) : SortStmt{} [constructor{}(), format{}("%c{%r %1 %c}%r"), functional{}(), injective{}(), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(13,19,13,31)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/statements.k)"), priorities{}(Lbl'UndsUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt'Unds'Stmt{}()), right{}(), terminals{}("101")] + symbol Lbl'LBraRBraUnds'STATEMENTS-SYNTAX'Unds'Stmt{}() : SortStmt{} [constructor{}(), format{}("%c{%r %c}%r"), functional{}(), injective{}(), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(14,19,14,26)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/statements.k)"), priorities{}(Lbl'UndsUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt'Unds'Stmt{}()), right{}(), terminals{}("11")] + hooked-symbol Lbl'Tild'Int'Unds'{}(SortInt{}) : SortInt{} [format{}("%c~Int%r %1"), function{}(), functional{}(), hook{}("INT.not"), klabel{}("~Int_"), left{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1228,18,1228,120)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), priorities{}(Lbl'UndsPlus'Int'Unds'{}(),Lbl'Unds'divInt'Unds'{}(),Lbl'UndsPerc'Int'Unds'{}(),Lbl'Unds-GT--GT-'Int'Unds'{}(),Lbl'Unds'xorInt'Unds'{}(),Lbl'UndsSlsh'Int'Unds'{}(),Lbl'UndsAnd-'Int'Unds'{}(),Lbl'UndsXor-'Int'Unds'{}(),Lbl'Unds-LT--LT-'Int'Unds'{}(),Lbl'UndsStar'Int'Unds'{}(),Lbl'UndsPipe'Int'Unds'{}(),Lbl'Unds'modInt'Unds'{}(),Lbl'UndsXor-Perc'Int'UndsUnds'{}(),Lbl'Unds'-Int'Unds'{}()), right{}(), smtlib{}("notInt"), symbol'Kywd'{}(), terminals{}("10"), total{}()] + +// generated axioms + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, inj{SortKCellOpt{}, SortKItem{}} (From:SortKCellOpt{}))) [subsort{SortKCellOpt{}, SortKItem{}}()] // subsort + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, inj{SortKResult{}, SortKItem{}} (From:SortKResult{}))) [subsort{SortKResult{}, SortKItem{}}()] // subsort + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, inj{SortEnvCellOpt{}, SortKItem{}} (From:SortEnvCellOpt{}))) [subsort{SortEnvCellOpt{}, SortKItem{}}()] // subsort + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, inj{SortKCell{}, SortKItem{}} (From:SortKCell{}))) [subsort{SortKCell{}, SortKItem{}}()] // subsort + axiom{R} \exists{R} (Val:SortKCellOpt{}, \equals{SortKCellOpt{}, R} (Val:SortKCellOpt{}, inj{SortKCell{}, SortKCellOpt{}} (From:SortKCell{}))) [subsort{SortKCell{}, SortKCellOpt{}}()] // subsort + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, inj{SortSet{}, SortKItem{}} (From:SortSet{}))) [subsort{SortSet{}, SortKItem{}}()] // subsort + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, inj{SortValue{}, SortKItem{}} (From:SortValue{}))) [subsort{SortValue{}, SortKItem{}}()] // subsort + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, inj{SortGeneratedCounterCell{}, SortKItem{}} (From:SortGeneratedCounterCell{}))) [subsort{SortGeneratedCounterCell{}, SortKItem{}}()] // subsort + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, inj{SortExpr{}, SortKItem{}} (From:SortExpr{}))) [subsort{SortExpr{}, SortKItem{}}()] // subsort + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, inj{SortGeneratedTopCell{}, SortKItem{}} (From:SortGeneratedTopCell{}))) [subsort{SortGeneratedTopCell{}, SortKItem{}}()] // subsort + axiom{R} \exists{R} (Val:SortEnvCellOpt{}, \equals{SortEnvCellOpt{}, R} (Val:SortEnvCellOpt{}, inj{SortEnvCell{}, SortEnvCellOpt{}} (From:SortEnvCell{}))) [subsort{SortEnvCell{}, SortEnvCellOpt{}}()] // subsort + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, inj{SortList{}, SortKItem{}} (From:SortList{}))) [subsort{SortList{}, SortKItem{}}()] // subsort + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, inj{SortId{}, SortKItem{}} (From:SortId{}))) [subsort{SortId{}, SortKItem{}}()] // subsort + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, inj{SortBool{}, SortKItem{}} (From:SortBool{}))) [subsort{SortBool{}, SortKItem{}}()] // subsort + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, inj{SortInt{}, SortKItem{}} (From:SortInt{}))) [subsort{SortInt{}, SortKItem{}}()] // subsort + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, inj{SortGeneratedTopCellFragment{}, SortKItem{}} (From:SortGeneratedTopCellFragment{}))) [subsort{SortGeneratedTopCellFragment{}, SortKItem{}}()] // subsort + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, inj{SortEnvCell{}, SortKItem{}} (From:SortEnvCell{}))) [subsort{SortEnvCell{}, SortKItem{}}()] // subsort + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, inj{SortStmt{}, SortKItem{}} (From:SortStmt{}))) [subsort{SortStmt{}, SortKItem{}}()] // subsort + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, inj{SortMap{}, SortKItem{}} (From:SortMap{}))) [subsort{SortMap{}, SortKItem{}}()] // subsort + axiom{R} \exists{R} (Val:SortExpr{}, \equals{SortExpr{}, R} (Val:SortExpr{}, inj{SortValue{}, SortExpr{}} (From:SortValue{}))) [subsort{SortValue{}, SortExpr{}}()] // subsort + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, inj{SortKConfigVar{}, SortKItem{}} (From:SortKConfigVar{}))) [subsort{SortKConfigVar{}, SortKItem{}}()] // subsort + axiom{R} \exists{R} (Val:SortValue{}, \equals{SortValue{}, R} (Val:SortValue{}, inj{SortInt{}, SortValue{}} (From:SortInt{}))) [subsort{SortInt{}, SortValue{}}()] // subsort + axiom{R} \exists{R} (Val:SortValue{}, \equals{SortValue{}, R} (Val:SortValue{}, inj{SortBool{}, SortValue{}} (From:SortBool{}))) [subsort{SortBool{}, SortValue{}}()] // subsort + axiom{R} \exists{R} (Val:SortExpr{}, \equals{SortExpr{}, R} (Val:SortExpr{}, inj{SortId{}, SortExpr{}} (From:SortId{}))) [subsort{SortId{}, SortExpr{}}()] // subsort + axiom{R} \exists{R} (Val:SortKResult{}, \equals{SortKResult{}, R} (Val:SortKResult{}, inj{SortValue{}, SortKResult{}} (From:SortValue{}))) [subsort{SortValue{}, SortKResult{}}()] // subsort + axiom{R} \exists{R} (Val:SortExpr{}, \equals{SortExpr{}, R} (Val:SortExpr{}, Lbl'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(K0:SortExpr{}))) [functional{}()] // functional + axiom{}\implies{SortExpr{}} (\and{SortExpr{}} (Lbl'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(X0:SortExpr{}), Lbl'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(Y0:SortExpr{})), Lbl'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(\and{SortExpr{}} (X0:SortExpr{}, Y0:SortExpr{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(X0:SortExpr{}), Lbl-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(X0:SortExpr{}), Lbl'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(X0:SortExpr{}), Lbl'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(X0:SortExpr{}), Lbl'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(X0:SortExpr{}), Lbl'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(X0:SortExpr{}), Lbl'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(X0:SortExpr{}), Lbl'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(X0:SortExpr{}), Lbl'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(X0:SortExpr{}), Lbl'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(X0:SortExpr{}), Lbl'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(X0:SortExpr{}), Lbl'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(X0:SortExpr{}), Lbl'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(X0:SortExpr{}), Lbl'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(X0:SortExpr{}), Lbllet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr{}(Y0:SortId{}, Y1:SortExpr{}, Y2:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, Lbl'Hash'freezer'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}())) [functional{}()] // functional + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}())) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezerif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt0'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezerlet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, Lbl'Hash'freezer-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}())) [functional{}()] // functional + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezerif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt0'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezerlet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(K0:SortK{}))) [functional{}()] // functional + axiom{}\implies{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{})), Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(\and{SortK{}} (X0:SortK{}, Y0:SortK{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezerif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt0'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezerlet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(K0:SortK{}))) [functional{}()] // functional + axiom{}\implies{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{})), Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(\and{SortK{}} (X0:SortK{}, Y0:SortK{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezerif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt0'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezerlet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(K0:SortK{}))) [functional{}()] // functional + axiom{}\implies{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{})), Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(\and{SortK{}} (X0:SortK{}, Y0:SortK{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezerif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt0'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezerlet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(K0:SortK{}))) [functional{}()] // functional + axiom{}\implies{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{})), Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(\and{SortK{}} (X0:SortK{}, Y0:SortK{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezerif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt0'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezerlet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(K0:SortK{}))) [functional{}()] // functional + axiom{}\implies{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{})), Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(\and{SortK{}} (X0:SortK{}, Y0:SortK{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezerif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt0'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezerlet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(K0:SortK{}))) [functional{}()] // functional + axiom{}\implies{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{})), Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(\and{SortK{}} (X0:SortK{}, Y0:SortK{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezerif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt0'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezerlet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(K0:SortK{}))) [functional{}()] // functional + axiom{}\implies{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{})), Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(\and{SortK{}} (X0:SortK{}, Y0:SortK{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezerif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt0'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezerlet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(K0:SortK{}))) [functional{}()] // functional + axiom{}\implies{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{})), Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(\and{SortK{}} (X0:SortK{}, Y0:SortK{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezerif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt0'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezerlet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(K0:SortK{}))) [functional{}()] // functional + axiom{}\implies{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{})), Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(\and{SortK{}} (X0:SortK{}, Y0:SortK{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezerif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt0'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezerlet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(K0:SortK{}))) [functional{}()] // functional + axiom{}\implies{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{})), Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(\and{SortK{}} (X0:SortK{}, Y0:SortK{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezerif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt0'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezerlet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(K0:SortK{}))) [functional{}()] // functional + axiom{}\implies{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{})), Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(\and{SortK{}} (X0:SortK{}, Y0:SortK{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezerif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt0'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezerlet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(K0:SortK{}))) [functional{}()] // functional + axiom{}\implies{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{})), Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(\and{SortK{}} (X0:SortK{}, Y0:SortK{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezerif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt0'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezerlet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(K0:SortK{}))) [functional{}()] // functional + axiom{}\implies{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{})), Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(\and{SortK{}} (X0:SortK{}, Y0:SortK{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezerif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt0'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezerlet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(K0:SortK{}))) [functional{}()] // functional + axiom{}\implies{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{})), Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(\and{SortK{}} (X0:SortK{}, Y0:SortK{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezerif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt0'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezerlet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(K0:SortK{}))) [functional{}()] // functional + axiom{}\implies{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{})), Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(\and{SortK{}} (X0:SortK{}, Y0:SortK{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezerif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt0'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezerlet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(K0:SortK{}))) [functional{}()] // functional + axiom{}\implies{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{})), Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(\and{SortK{}} (X0:SortK{}, Y0:SortK{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezerif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt0'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezerlet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(K0:SortK{}))) [functional{}()] // functional + axiom{}\implies{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{})), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(\and{SortK{}} (X0:SortK{}, Y0:SortK{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezerif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt0'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezerlet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(K0:SortK{}))) [functional{}()] // functional + axiom{}\implies{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{})), Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(\and{SortK{}} (X0:SortK{}, Y0:SortK{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezerif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt0'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezerlet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, Lbl'Hash'freezer'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr1'Unds'{}(K0:SortK{}))) [functional{}()] // functional + axiom{}\implies{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr1'Unds'{}(Y0:SortK{})), Lbl'Hash'freezer'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr1'Unds'{}(\and{SortK{}} (X0:SortK{}, Y0:SortK{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezerif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt0'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezerlet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(K0:SortK{}))) [functional{}()] // functional + axiom{}\implies{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{})), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(\and{SortK{}} (X0:SortK{}, Y0:SortK{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezerif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt0'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezerlet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(K0:SortK{}))) [functional{}()] // functional + axiom{}\implies{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{})), Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(\and{SortK{}} (X0:SortK{}, Y0:SortK{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezerif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt0'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezerlet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(K0:SortK{}))) [functional{}()] // functional + axiom{}\implies{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{})), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(\and{SortK{}} (X0:SortK{}, Y0:SortK{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezerif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt0'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezerlet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(K0:SortK{}))) [functional{}()] // functional + axiom{}\implies{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{})), Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(\and{SortK{}} (X0:SortK{}, Y0:SortK{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezerif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt0'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezerlet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(K0:SortK{}))) [functional{}()] // functional + axiom{}\implies{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(Y0:SortK{})), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(\and{SortK{}} (X0:SortK{}, Y0:SortK{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezerif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt0'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{}), Lbl'Hash'freezerlet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(K0:SortK{}))) [functional{}()] // functional + axiom{}\implies{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{})), Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(\and{SortK{}} (X0:SortK{}, Y0:SortK{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezerif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt0'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}), Lbl'Hash'freezerlet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, Lbl'Hash'freezerif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt0'Unds'{}(K0:SortK{}, K1:SortK{}))) [functional{}()] // functional + axiom{}\implies{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezerif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt0'Unds'{}(X0:SortK{}, X1:SortK{}), Lbl'Hash'freezerif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt0'Unds'{}(Y0:SortK{}, Y1:SortK{})), Lbl'Hash'freezerif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt0'Unds'{}(\and{SortK{}} (X0:SortK{}, Y0:SortK{}), \and{SortK{}} (X1:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezerif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt0'Unds'{}(X0:SortK{}, X1:SortK{}), Lbl'Hash'freezerlet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, Lbl'Hash'freezerlet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr1'Unds'{}(K0:SortK{}, K1:SortK{}))) [functional{}()] // functional + axiom{}\implies{SortKItem{}} (\and{SortKItem{}} (Lbl'Hash'freezerlet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}, X1:SortK{}), Lbl'Hash'freezerlet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr1'Unds'{}(Y0:SortK{}, Y1:SortK{})), Lbl'Hash'freezerlet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr1'Unds'{}(\and{SortK{}} (X0:SortK{}, Y0:SortK{}), \and{SortK{}} (X1:SortK{}, Y1:SortK{}))) [constructor{}()] // no confusion same constructor + axiom{R, SortSort} \exists{R} (Val:SortSort, \equals{SortSort, R} (Val:SortSort, Lbl'Hash'if'UndsHash'then'UndsHash'else'UndsHash'fi'Unds'K-EQUAL-SYNTAX'Unds'Sort'Unds'Bool'Unds'Sort'Unds'Sort{SortSort}(K0:SortBool{}, K1:SortSort, K2:SortSort))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortExpr{}, \equals{SortExpr{}, R} (Val:SortExpr{}, Lbl-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(K0:SortExpr{}))) [functional{}()] // functional + axiom{}\implies{SortExpr{}} (\and{SortExpr{}} (Lbl-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(X0:SortExpr{}), Lbl-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(Y0:SortExpr{})), Lbl-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(\and{SortExpr{}} (X0:SortExpr{}, Y0:SortExpr{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(X0:SortExpr{}), Lbl'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(X0:SortExpr{}), Lbl'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(X0:SortExpr{}), Lbl'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(X0:SortExpr{}), Lbl'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(X0:SortExpr{}), Lbl'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(X0:SortExpr{}), Lbl'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(X0:SortExpr{}), Lbl'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(X0:SortExpr{}), Lbl'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(X0:SortExpr{}), Lbl'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(X0:SortExpr{}), Lbl'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(X0:SortExpr{}), Lbl'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(X0:SortExpr{}), Lbl'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(X0:SortExpr{}), Lbllet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr{}(Y0:SortId{}, Y1:SortExpr{}, Y2:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortList{}, \equals{SortList{}, R} (Val:SortList{}, Lbl'Stop'List{}())) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortMap{}, \equals{SortMap{}, R} (Val:SortMap{}, Lbl'Stop'Map{}())) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortSet{}, \equals{SortSet{}, R} (Val:SortSet{}, Lbl'Stop'Set{}())) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortEnvCell{}, \equals{SortEnvCell{}, R} (Val:SortEnvCell{}, Lbl'-LT-'env'-GT-'{}(K0:SortMap{}))) [functional{}()] // functional + axiom{}\implies{SortEnvCell{}} (\and{SortEnvCell{}} (Lbl'-LT-'env'-GT-'{}(X0:SortMap{}), Lbl'-LT-'env'-GT-'{}(Y0:SortMap{})), Lbl'-LT-'env'-GT-'{}(\and{SortMap{}} (X0:SortMap{}, Y0:SortMap{}))) [constructor{}()] // no confusion same constructor + axiom{R} \exists{R} (Val:SortGeneratedCounterCell{}, \equals{SortGeneratedCounterCell{}, R} (Val:SortGeneratedCounterCell{}, Lbl'-LT-'generatedCounter'-GT-'{}(K0:SortInt{}))) [functional{}()] // functional + axiom{}\implies{SortGeneratedCounterCell{}} (\and{SortGeneratedCounterCell{}} (Lbl'-LT-'generatedCounter'-GT-'{}(X0:SortInt{}), Lbl'-LT-'generatedCounter'-GT-'{}(Y0:SortInt{})), Lbl'-LT-'generatedCounter'-GT-'{}(\and{SortInt{}} (X0:SortInt{}, Y0:SortInt{}))) [constructor{}()] // no confusion same constructor + axiom{R} \exists{R} (Val:SortGeneratedTopCell{}, \equals{SortGeneratedTopCell{}, R} (Val:SortGeneratedTopCell{}, Lbl'-LT-'generatedTop'-GT-'{}(K0:SortKCell{}, K1:SortEnvCell{}, K2:SortGeneratedCounterCell{}))) [functional{}()] // functional + axiom{}\implies{SortGeneratedTopCell{}} (\and{SortGeneratedTopCell{}} (Lbl'-LT-'generatedTop'-GT-'{}(X0:SortKCell{}, X1:SortEnvCell{}, X2:SortGeneratedCounterCell{}), Lbl'-LT-'generatedTop'-GT-'{}(Y0:SortKCell{}, Y1:SortEnvCell{}, Y2:SortGeneratedCounterCell{})), Lbl'-LT-'generatedTop'-GT-'{}(\and{SortKCell{}} (X0:SortKCell{}, Y0:SortKCell{}), \and{SortEnvCell{}} (X1:SortEnvCell{}, Y1:SortEnvCell{}), \and{SortGeneratedCounterCell{}} (X2:SortGeneratedCounterCell{}, Y2:SortGeneratedCounterCell{}))) [constructor{}()] // no confusion same constructor + axiom{R} \exists{R} (Val:SortGeneratedTopCellFragment{}, \equals{SortGeneratedTopCellFragment{}, R} (Val:SortGeneratedTopCellFragment{}, Lbl'-LT-'generatedTop'-GT-'-fragment{}(K0:SortKCellOpt{}, K1:SortEnvCellOpt{}))) [functional{}()] // functional + axiom{}\implies{SortGeneratedTopCellFragment{}} (\and{SortGeneratedTopCellFragment{}} (Lbl'-LT-'generatedTop'-GT-'-fragment{}(X0:SortKCellOpt{}, X1:SortEnvCellOpt{}), Lbl'-LT-'generatedTop'-GT-'-fragment{}(Y0:SortKCellOpt{}, Y1:SortEnvCellOpt{})), Lbl'-LT-'generatedTop'-GT-'-fragment{}(\and{SortKCellOpt{}} (X0:SortKCellOpt{}, Y0:SortKCellOpt{}), \and{SortEnvCellOpt{}} (X1:SortEnvCellOpt{}, Y1:SortEnvCellOpt{}))) [constructor{}()] // no confusion same constructor + axiom{R} \exists{R} (Val:SortKCell{}, \equals{SortKCell{}, R} (Val:SortKCell{}, Lbl'-LT-'k'-GT-'{}(K0:SortK{}))) [functional{}()] // functional + axiom{}\implies{SortKCell{}} (\and{SortKCell{}} (Lbl'-LT-'k'-GT-'{}(X0:SortK{}), Lbl'-LT-'k'-GT-'{}(Y0:SortK{})), Lbl'-LT-'k'-GT-'{}(\and{SortK{}} (X0:SortK{}, Y0:SortK{}))) [constructor{}()] // no confusion same constructor + axiom{R} \exists{R} (Val:SortList{}, \equals{SortList{}, R} (Val:SortList{}, LblListItem{}(K0:SortKItem{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortMap{}, \equals{SortMap{}, R} (Val:SortMap{}, LblMap'Coln'update{}(K0:SortMap{}, K1:SortKItem{}, K2:SortKItem{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortSet{}, \equals{SortSet{}, R} (Val:SortSet{}, LblSet'Coln'difference{}(K0:SortSet{}, K1:SortSet{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, LblSet'Coln'in{}(K0:SortKItem{}, K1:SortSet{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortSet{}, \equals{SortSet{}, R} (Val:SortSet{}, LblSetItem{}(K0:SortKItem{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortExpr{}, \equals{SortExpr{}, R} (Val:SortExpr{}, Lbl'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(K0:SortExpr{}, K1:SortExpr{}))) [functional{}()] // functional + axiom{}\implies{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{})), Lbl'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(\and{SortExpr{}} (X0:SortExpr{}, Y0:SortExpr{}), \and{SortExpr{}} (X1:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbllet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr{}(Y0:SortId{}, Y1:SortExpr{}, Y2:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortExpr{}, \equals{SortExpr{}, R} (Val:SortExpr{}, Lbl'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(K0:SortExpr{}, K1:SortExpr{}))) [functional{}()] // functional + axiom{}\implies{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{})), Lbl'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(\and{SortExpr{}} (X0:SortExpr{}, Y0:SortExpr{}), \and{SortExpr{}} (X1:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbllet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr{}(Y0:SortId{}, Y1:SortExpr{}, Y2:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortInt{}, \equals{SortInt{}, R} (Val:SortInt{}, Lbl'UndsAnd-'Int'Unds'{}(K0:SortInt{}, K1:SortInt{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortInt{}, \equals{SortInt{}, R} (Val:SortInt{}, Lbl'UndsStar'Int'Unds'{}(K0:SortInt{}, K1:SortInt{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortExpr{}, \equals{SortExpr{}, R} (Val:SortExpr{}, Lbl'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(K0:SortExpr{}, K1:SortExpr{}))) [functional{}()] // functional + axiom{}\implies{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{})), Lbl'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(\and{SortExpr{}} (X0:SortExpr{}, Y0:SortExpr{}), \and{SortExpr{}} (X1:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbllet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr{}(Y0:SortId{}, Y1:SortExpr{}, Y2:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortInt{}, \equals{SortInt{}, R} (Val:SortInt{}, Lbl'UndsPlus'Int'Unds'{}(K0:SortInt{}, K1:SortInt{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortExpr{}, \equals{SortExpr{}, R} (Val:SortExpr{}, Lbl'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(K0:SortExpr{}, K1:SortExpr{}))) [functional{}()] // functional + axiom{}\implies{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{})), Lbl'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(\and{SortExpr{}} (X0:SortExpr{}, Y0:SortExpr{}), \and{SortExpr{}} (X1:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbllet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr{}(Y0:SortId{}, Y1:SortExpr{}, Y2:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortInt{}, \equals{SortInt{}, R} (Val:SortInt{}, Lbl'Unds'-Int'Unds'{}(K0:SortInt{}, K1:SortInt{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortMap{}, \equals{SortMap{}, R} (Val:SortMap{}, Lbl'Unds'-Map'UndsUnds'MAP'Unds'Map'Unds'Map'Unds'Map{}(K0:SortMap{}, K1:SortMap{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortExpr{}, \equals{SortExpr{}, R} (Val:SortExpr{}, Lbl'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(K0:SortExpr{}, K1:SortExpr{}))) [functional{}()] // functional + axiom{}\implies{SortExpr{}} (\and{SortExpr{}} (Lbl'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{})), Lbl'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(\and{SortExpr{}} (X0:SortExpr{}, Y0:SortExpr{}), \and{SortExpr{}} (X1:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbllet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr{}(Y0:SortId{}, Y1:SortExpr{}, Y2:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortExpr{}, \equals{SortExpr{}, R} (Val:SortExpr{}, Lbl'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(K0:SortExpr{}, K1:SortExpr{}))) [functional{}()] // functional + axiom{}\implies{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{})), Lbl'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(\and{SortExpr{}} (X0:SortExpr{}, Y0:SortExpr{}), \and{SortExpr{}} (X1:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbllet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr{}(Y0:SortId{}, Y1:SortExpr{}, Y2:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, Lbl'Unds-LT-Eqls'Int'Unds'{}(K0:SortInt{}, K1:SortInt{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, Lbl'Unds-LT-Eqls'Map'UndsUnds'MAP'Unds'Bool'Unds'Map'Unds'Map{}(K0:SortMap{}, K1:SortMap{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, Lbl'Unds-LT-Eqls'Set'UndsUnds'SET'Unds'Bool'Unds'Set'Unds'Set{}(K0:SortSet{}, K1:SortSet{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortExpr{}, \equals{SortExpr{}, R} (Val:SortExpr{}, Lbl'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(K0:SortExpr{}, K1:SortExpr{}))) [functional{}()] // functional + axiom{}\implies{SortExpr{}} (\and{SortExpr{}} (Lbl'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{})), Lbl'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(\and{SortExpr{}} (X0:SortExpr{}, Y0:SortExpr{}), \and{SortExpr{}} (X1:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbllet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr{}(Y0:SortId{}, Y1:SortExpr{}, Y2:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, Lbl'Unds-LT-'Int'Unds'{}(K0:SortInt{}, K1:SortInt{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortExpr{}, \equals{SortExpr{}, R} (Val:SortExpr{}, Lbl'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(K0:SortExpr{}, K1:SortExpr{}))) [functional{}()] // functional + axiom{}\implies{SortExpr{}} (\and{SortExpr{}} (Lbl'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{})), Lbl'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(\and{SortExpr{}} (X0:SortExpr{}, Y0:SortExpr{}), \and{SortExpr{}} (X1:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbllet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr{}(Y0:SortId{}, Y1:SortExpr{}, Y2:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, Lbl'UndsEqlsSlshEqls'Bool'Unds'{}(K0:SortBool{}, K1:SortBool{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, Lbl'UndsEqlsSlshEqls'Int'Unds'{}(K0:SortInt{}, K1:SortInt{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, Lbl'UndsEqlsSlshEqls'K'Unds'{}(K0:SortK{}, K1:SortK{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, Lbl'UndsEqlsEqls'Bool'Unds'{}(K0:SortBool{}, K1:SortBool{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, Lbl'UndsEqlsEqls'Int'Unds'{}(K0:SortInt{}, K1:SortInt{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, Lbl'UndsEqlsEqls'K'Unds'{}(K0:SortK{}, K1:SortK{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortExpr{}, \equals{SortExpr{}, R} (Val:SortExpr{}, Lbl'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(K0:SortExpr{}, K1:SortExpr{}))) [functional{}()] // functional + axiom{}\implies{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{})), Lbl'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(\and{SortExpr{}} (X0:SortExpr{}, Y0:SortExpr{}), \and{SortExpr{}} (X1:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbllet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr{}(Y0:SortId{}, Y1:SortExpr{}, Y2:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortStmt{}, \equals{SortStmt{}, R} (Val:SortStmt{}, Lbl'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr{}(K0:SortId{}, K1:SortExpr{}))) [functional{}()] // functional + axiom{}\implies{SortStmt{}} (\and{SortStmt{}} (Lbl'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr{}(X0:SortId{}, X1:SortExpr{}), Lbl'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr{}(Y0:SortId{}, Y1:SortExpr{})), Lbl'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr{}(\and{SortId{}} (X0:SortId{}, Y0:SortId{}), \and{SortExpr{}} (X1:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortStmt{}} (\and{SortStmt{}} (Lbl'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr{}(X0:SortId{}, X1:SortExpr{}), Lbl'UndsUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt'Unds'Stmt{}(Y0:SortStmt{}, Y1:SortStmt{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortStmt{}} (\and{SortStmt{}} (Lbl'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr{}(X0:SortId{}, X1:SortExpr{}), Lblif'LParUndsRParUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt{}(Y0:SortExpr{}, Y1:SortStmt{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortStmt{}} (\and{SortStmt{}} (Lbl'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr{}(X0:SortId{}, X1:SortExpr{}), Lblif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt{}(Y0:SortExpr{}, Y1:SortStmt{}, Y2:SortStmt{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortStmt{}} (\and{SortStmt{}} (Lbl'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr{}(X0:SortId{}, X1:SortExpr{}), Lblwhile'LParUndsRParUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt{}(Y0:SortExpr{}, Y1:SortStmt{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortStmt{}} (\and{SortStmt{}} (Lbl'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr{}(X0:SortId{}, X1:SortExpr{}), Lbl'LBraUndsRBraUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt{}(Y0:SortStmt{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortStmt{}} (\and{SortStmt{}} (Lbl'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr{}(X0:SortId{}, X1:SortExpr{}), Lbl'LBraRBraUnds'STATEMENTS-SYNTAX'Unds'Stmt{}())) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, Lbl'Unds-GT-Eqls'Int'Unds'{}(K0:SortInt{}, K1:SortInt{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortExpr{}, \equals{SortExpr{}, R} (Val:SortExpr{}, Lbl'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(K0:SortExpr{}, K1:SortExpr{}))) [functional{}()] // functional + axiom{}\implies{SortExpr{}} (\and{SortExpr{}} (Lbl'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{})), Lbl'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(\and{SortExpr{}} (X0:SortExpr{}, Y0:SortExpr{}), \and{SortExpr{}} (X1:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbllet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr{}(Y0:SortId{}, Y1:SortExpr{}, Y2:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, Lbl'Unds-GT-'Int'Unds'{}(K0:SortInt{}, K1:SortInt{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortExpr{}, \equals{SortExpr{}, R} (Val:SortExpr{}, Lbl'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(K0:SortExpr{}, K1:SortExpr{}))) [functional{}()] // functional + axiom{}\implies{SortExpr{}} (\and{SortExpr{}} (Lbl'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{})), Lbl'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(\and{SortExpr{}} (X0:SortExpr{}, Y0:SortExpr{}), \and{SortExpr{}} (X1:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbllet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr{}(Y0:SortId{}, Y1:SortExpr{}, Y2:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{R} \equals{SortList{}, R} (Lbl'Unds'List'Unds'{}(Lbl'Unds'List'Unds'{}(K1:SortList{},K2:SortList{}),K3:SortList{}),Lbl'Unds'List'Unds'{}(K1:SortList{},Lbl'Unds'List'Unds'{}(K2:SortList{},K3:SortList{}))) [assoc{}()] // associativity + axiom{R}\equals{SortList{}, R} (Lbl'Unds'List'Unds'{}(K:SortList{},Lbl'Stop'List{}()),K:SortList{}) [unit{}()] // right unit + axiom{R}\equals{SortList{}, R} (Lbl'Unds'List'Unds'{}(Lbl'Stop'List{}(),K:SortList{}),K:SortList{}) [unit{}()] // left unit + axiom{R} \exists{R} (Val:SortList{}, \equals{SortList{}, R} (Val:SortList{}, Lbl'Unds'List'Unds'{}(K0:SortList{}, K1:SortList{}))) [functional{}()] // functional + axiom{R} \equals{SortMap{}, R} (Lbl'Unds'Map'Unds'{}(Lbl'Unds'Map'Unds'{}(K1:SortMap{},K2:SortMap{}),K3:SortMap{}),Lbl'Unds'Map'Unds'{}(K1:SortMap{},Lbl'Unds'Map'Unds'{}(K2:SortMap{},K3:SortMap{}))) [assoc{}()] // associativity + axiom{R}\equals{SortMap{}, R} (Lbl'Unds'Map'Unds'{}(K:SortMap{},Lbl'Stop'Map{}()),K:SortMap{}) [unit{}()] // right unit + axiom{R}\equals{SortMap{}, R} (Lbl'Unds'Map'Unds'{}(Lbl'Stop'Map{}(),K:SortMap{}),K:SortMap{}) [unit{}()] // left unit + axiom{R} \equals{SortSet{}, R} (Lbl'Unds'Set'Unds'{}(Lbl'Unds'Set'Unds'{}(K1:SortSet{},K2:SortSet{}),K3:SortSet{}),Lbl'Unds'Set'Unds'{}(K1:SortSet{},Lbl'Unds'Set'Unds'{}(K2:SortSet{},K3:SortSet{}))) [assoc{}()] // associativity + axiom{R} \equals{SortSet{}, R} (Lbl'Unds'Set'Unds'{}(K:SortSet{},K:SortSet{}),K:SortSet{}) [idem{}()] // idempotency + axiom{R}\equals{SortSet{}, R} (Lbl'Unds'Set'Unds'{}(K:SortSet{},Lbl'Stop'Set{}()),K:SortSet{}) [unit{}()] // right unit + axiom{R}\equals{SortSet{}, R} (Lbl'Unds'Set'Unds'{}(Lbl'Stop'Set{}(),K:SortSet{}),K:SortSet{}) [unit{}()] // left unit + axiom{R} \exists{R} (Val:SortMap{}, \equals{SortMap{}, R} (Val:SortMap{}, Lbl'UndsLSqBUnds-LT-'-undef'RSqB'{}(K0:SortMap{}, K1:SortKItem{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortKItem{}, \equals{SortKItem{}, R} (Val:SortKItem{}, Lbl'UndsLSqBUndsRSqB'orDefault'UndsUnds'MAP'Unds'KItem'Unds'Map'Unds'KItem'Unds'KItem{}(K0:SortMap{}, K1:SortKItem{}, K2:SortKItem{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortStmt{}, \equals{SortStmt{}, R} (Val:SortStmt{}, Lbl'UndsUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt'Unds'Stmt{}(K0:SortStmt{}, K1:SortStmt{}))) [functional{}()] // functional + axiom{}\implies{SortStmt{}} (\and{SortStmt{}} (Lbl'UndsUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt'Unds'Stmt{}(X0:SortStmt{}, X1:SortStmt{}), Lbl'UndsUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt'Unds'Stmt{}(Y0:SortStmt{}, Y1:SortStmt{})), Lbl'UndsUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt'Unds'Stmt{}(\and{SortStmt{}} (X0:SortStmt{}, Y0:SortStmt{}), \and{SortStmt{}} (X1:SortStmt{}, Y1:SortStmt{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortStmt{}} (\and{SortStmt{}} (Lbl'UndsUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt'Unds'Stmt{}(X0:SortStmt{}, X1:SortStmt{}), Lblif'LParUndsRParUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt{}(Y0:SortExpr{}, Y1:SortStmt{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortStmt{}} (\and{SortStmt{}} (Lbl'UndsUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt'Unds'Stmt{}(X0:SortStmt{}, X1:SortStmt{}), Lblif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt{}(Y0:SortExpr{}, Y1:SortStmt{}, Y2:SortStmt{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortStmt{}} (\and{SortStmt{}} (Lbl'UndsUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt'Unds'Stmt{}(X0:SortStmt{}, X1:SortStmt{}), Lblwhile'LParUndsRParUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt{}(Y0:SortExpr{}, Y1:SortStmt{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortStmt{}} (\and{SortStmt{}} (Lbl'UndsUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt'Unds'Stmt{}(X0:SortStmt{}, X1:SortStmt{}), Lbl'LBraUndsRBraUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt{}(Y0:SortStmt{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortStmt{}} (\and{SortStmt{}} (Lbl'UndsUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt'Unds'Stmt{}(X0:SortStmt{}, X1:SortStmt{}), Lbl'LBraRBraUnds'STATEMENTS-SYNTAX'Unds'Stmt{}())) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, Lbl'Unds'andBool'Unds'{}(K0:SortBool{}, K1:SortBool{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, Lbl'Unds'andThenBool'Unds'{}(K0:SortBool{}, K1:SortBool{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, Lbl'Unds'impliesBool'Unds'{}(K0:SortBool{}, K1:SortBool{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, Lbl'Unds'in'UndsUnds'LIST'Unds'Bool'Unds'KItem'Unds'List{}(K0:SortKItem{}, K1:SortList{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, Lbl'Unds'in'Unds'keys'LParUndsRParUnds'MAP'Unds'Bool'Unds'KItem'Unds'Map{}(K0:SortKItem{}, K1:SortMap{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, Lbl'Unds'orBool'Unds'{}(K0:SortBool{}, K1:SortBool{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, Lbl'Unds'orElseBool'Unds'{}(K0:SortBool{}, K1:SortBool{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, Lbl'Unds'xorBool'Unds'{}(K0:SortBool{}, K1:SortBool{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortInt{}, \equals{SortInt{}, R} (Val:SortInt{}, Lbl'Unds'xorInt'Unds'{}(K0:SortInt{}, K1:SortInt{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortMap{}, \equals{SortMap{}, R} (Val:SortMap{}, Lbl'UndsPipe'-'-GT-Unds'{}(K0:SortKItem{}, K1:SortKItem{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortInt{}, \equals{SortInt{}, R} (Val:SortInt{}, Lbl'UndsPipe'Int'Unds'{}(K0:SortInt{}, K1:SortInt{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortSet{}, \equals{SortSet{}, R} (Val:SortSet{}, Lbl'UndsPipe'Set'UndsUnds'SET'Unds'Set'Unds'Set'Unds'Set{}(K0:SortSet{}, K1:SortSet{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortExpr{}, \equals{SortExpr{}, R} (Val:SortExpr{}, Lbl'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(K0:SortExpr{}, K1:SortExpr{}))) [functional{}()] // functional + axiom{}\implies{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbl'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(Y0:SortExpr{}, Y1:SortExpr{})), Lbl'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(\and{SortExpr{}} (X0:SortExpr{}, Y0:SortExpr{}), \and{SortExpr{}} (X1:SortExpr{}, Y1:SortExpr{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortExpr{}} (\and{SortExpr{}} (Lbl'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}), Lbllet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr{}(Y0:SortId{}, Y1:SortExpr{}, Y2:SortExpr{}))) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortInt{}, \equals{SortInt{}, R} (Val:SortInt{}, LblabsInt'LParUndsRParUnds'INT-COMMON'Unds'Int'Unds'Int{}(K0:SortInt{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortInt{}, \equals{SortInt{}, R} (Val:SortInt{}, LblfreshInt'LParUndsRParUnds'INT'Unds'Int'Unds'Int{}(K0:SortInt{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortStmt{}, \equals{SortStmt{}, R} (Val:SortStmt{}, Lblif'LParUndsRParUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt{}(K0:SortExpr{}, K1:SortStmt{}))) [functional{}()] // functional + axiom{}\implies{SortStmt{}} (\and{SortStmt{}} (Lblif'LParUndsRParUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt{}(X0:SortExpr{}, X1:SortStmt{}), Lblif'LParUndsRParUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt{}(Y0:SortExpr{}, Y1:SortStmt{})), Lblif'LParUndsRParUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt{}(\and{SortExpr{}} (X0:SortExpr{}, Y0:SortExpr{}), \and{SortStmt{}} (X1:SortStmt{}, Y1:SortStmt{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortStmt{}} (\and{SortStmt{}} (Lblif'LParUndsRParUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt{}(X0:SortExpr{}, X1:SortStmt{}), Lblif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt{}(Y0:SortExpr{}, Y1:SortStmt{}, Y2:SortStmt{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortStmt{}} (\and{SortStmt{}} (Lblif'LParUndsRParUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt{}(X0:SortExpr{}, X1:SortStmt{}), Lblwhile'LParUndsRParUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt{}(Y0:SortExpr{}, Y1:SortStmt{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortStmt{}} (\and{SortStmt{}} (Lblif'LParUndsRParUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt{}(X0:SortExpr{}, X1:SortStmt{}), Lbl'LBraUndsRBraUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt{}(Y0:SortStmt{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortStmt{}} (\and{SortStmt{}} (Lblif'LParUndsRParUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt{}(X0:SortExpr{}, X1:SortStmt{}), Lbl'LBraRBraUnds'STATEMENTS-SYNTAX'Unds'Stmt{}())) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortStmt{}, \equals{SortStmt{}, R} (Val:SortStmt{}, Lblif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt{}(K0:SortExpr{}, K1:SortStmt{}, K2:SortStmt{}))) [functional{}()] // functional + axiom{}\implies{SortStmt{}} (\and{SortStmt{}} (Lblif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt{}(X0:SortExpr{}, X1:SortStmt{}, X2:SortStmt{}), Lblif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt{}(Y0:SortExpr{}, Y1:SortStmt{}, Y2:SortStmt{})), Lblif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt{}(\and{SortExpr{}} (X0:SortExpr{}, Y0:SortExpr{}), \and{SortStmt{}} (X1:SortStmt{}, Y1:SortStmt{}), \and{SortStmt{}} (X2:SortStmt{}, Y2:SortStmt{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortStmt{}} (\and{SortStmt{}} (Lblif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt{}(X0:SortExpr{}, X1:SortStmt{}, X2:SortStmt{}), Lblwhile'LParUndsRParUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt{}(Y0:SortExpr{}, Y1:SortStmt{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortStmt{}} (\and{SortStmt{}} (Lblif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt{}(X0:SortExpr{}, X1:SortStmt{}, X2:SortStmt{}), Lbl'LBraUndsRBraUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt{}(Y0:SortStmt{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortStmt{}} (\and{SortStmt{}} (Lblif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt{}(X0:SortExpr{}, X1:SortStmt{}, X2:SortStmt{}), Lbl'LBraRBraUnds'STATEMENTS-SYNTAX'Unds'Stmt{}())) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortSet{}, \equals{SortSet{}, R} (Val:SortSet{}, LblintersectSet'LParUndsCommUndsRParUnds'SET'Unds'Set'Unds'Set'Unds'Set{}(K0:SortSet{}, K1:SortSet{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, LblisBool{}(K0:SortK{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, LblisEnvCell{}(K0:SortK{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, LblisEnvCellOpt{}(K0:SortK{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, LblisExpr{}(K0:SortK{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, LblisGeneratedCounterCell{}(K0:SortK{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, LblisGeneratedTopCell{}(K0:SortK{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, LblisGeneratedTopCellFragment{}(K0:SortK{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, LblisId{}(K0:SortK{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, LblisInt{}(K0:SortK{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, LblisK{}(K0:SortK{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, LblisKCell{}(K0:SortK{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, LblisKCellOpt{}(K0:SortK{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, LblisKConfigVar{}(K0:SortK{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, LblisKItem{}(K0:SortK{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, LblisKResult{}(K0:SortK{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, LblisList{}(K0:SortK{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, LblisMap{}(K0:SortK{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, LblisSet{}(K0:SortK{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, LblisStmt{}(K0:SortK{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, LblisValue{}(K0:SortK{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortSet{}, \equals{SortSet{}, R} (Val:SortSet{}, Lblkeys'LParUndsRParUnds'MAP'Unds'Set'Unds'Map{}(K0:SortMap{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortExpr{}, \equals{SortExpr{}, R} (Val:SortExpr{}, Lbllet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr{}(K0:SortId{}, K1:SortExpr{}, K2:SortExpr{}))) [functional{}()] // functional + axiom{}\implies{SortExpr{}} (\and{SortExpr{}} (Lbllet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr{}(X0:SortId{}, X1:SortExpr{}, X2:SortExpr{}), Lbllet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr{}(Y0:SortId{}, Y1:SortExpr{}, Y2:SortExpr{})), Lbllet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr{}(\and{SortId{}} (X0:SortId{}, Y0:SortId{}), \and{SortExpr{}} (X1:SortExpr{}, Y1:SortExpr{}), \and{SortExpr{}} (X2:SortExpr{}, Y2:SortExpr{}))) [constructor{}()] // no confusion same constructor + axiom{R} \exists{R} (Val:SortInt{}, \equals{SortInt{}, R} (Val:SortInt{}, LblmaxInt'LParUndsCommUndsRParUnds'INT-COMMON'Unds'Int'Unds'Int'Unds'Int{}(K0:SortInt{}, K1:SortInt{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortInt{}, \equals{SortInt{}, R} (Val:SortInt{}, LblminInt'LParUndsCommUndsRParUnds'INT-COMMON'Unds'Int'Unds'Int'Unds'Int{}(K0:SortInt{}, K1:SortInt{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortEnvCellOpt{}, \equals{SortEnvCellOpt{}, R} (Val:SortEnvCellOpt{}, LblnoEnvCell{}())) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortKCellOpt{}, \equals{SortKCellOpt{}, R} (Val:SortKCellOpt{}, LblnoKCell{}())) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortBool{}, \equals{SortBool{}, R} (Val:SortBool{}, LblnotBool'Unds'{}(K0:SortBool{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortMap{}, \equals{SortMap{}, R} (Val:SortMap{}, LblremoveAll'LParUndsCommUndsRParUnds'MAP'Unds'Map'Unds'Map'Unds'Set{}(K0:SortMap{}, K1:SortSet{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortInt{}, \equals{SortInt{}, R} (Val:SortInt{}, Lblsize'LParUndsRParUnds'LIST'Unds'Int'Unds'List{}(K0:SortList{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortInt{}, \equals{SortInt{}, R} (Val:SortInt{}, Lblsize'LParUndsRParUnds'MAP'Unds'Int'Unds'Map{}(K0:SortMap{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortInt{}, \equals{SortInt{}, R} (Val:SortInt{}, Lblsize'LParUndsRParUnds'SET'Unds'Int'Unds'Set{}(K0:SortSet{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortMap{}, \equals{SortMap{}, R} (Val:SortMap{}, LblupdateMap'LParUndsCommUndsRParUnds'MAP'Unds'Map'Unds'Map'Unds'Map{}(K0:SortMap{}, K1:SortMap{}))) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortStmt{}, \equals{SortStmt{}, R} (Val:SortStmt{}, Lblwhile'LParUndsRParUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt{}(K0:SortExpr{}, K1:SortStmt{}))) [functional{}()] // functional + axiom{}\implies{SortStmt{}} (\and{SortStmt{}} (Lblwhile'LParUndsRParUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt{}(X0:SortExpr{}, X1:SortStmt{}), Lblwhile'LParUndsRParUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt{}(Y0:SortExpr{}, Y1:SortStmt{})), Lblwhile'LParUndsRParUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt{}(\and{SortExpr{}} (X0:SortExpr{}, Y0:SortExpr{}), \and{SortStmt{}} (X1:SortStmt{}, Y1:SortStmt{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortStmt{}} (\and{SortStmt{}} (Lblwhile'LParUndsRParUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt{}(X0:SortExpr{}, X1:SortStmt{}), Lbl'LBraUndsRBraUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt{}(Y0:SortStmt{}))) [constructor{}()] // no confusion different constructors + axiom{}\not{SortStmt{}} (\and{SortStmt{}} (Lblwhile'LParUndsRParUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt{}(X0:SortExpr{}, X1:SortStmt{}), Lbl'LBraRBraUnds'STATEMENTS-SYNTAX'Unds'Stmt{}())) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortStmt{}, \equals{SortStmt{}, R} (Val:SortStmt{}, Lbl'LBraUndsRBraUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt{}(K0:SortStmt{}))) [functional{}()] // functional + axiom{}\implies{SortStmt{}} (\and{SortStmt{}} (Lbl'LBraUndsRBraUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt{}(X0:SortStmt{}), Lbl'LBraUndsRBraUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt{}(Y0:SortStmt{})), Lbl'LBraUndsRBraUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt{}(\and{SortStmt{}} (X0:SortStmt{}, Y0:SortStmt{}))) [constructor{}()] // no confusion same constructor + axiom{}\not{SortStmt{}} (\and{SortStmt{}} (Lbl'LBraUndsRBraUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt{}(X0:SortStmt{}), Lbl'LBraRBraUnds'STATEMENTS-SYNTAX'Unds'Stmt{}())) [constructor{}()] // no confusion different constructors + axiom{R} \exists{R} (Val:SortStmt{}, \equals{SortStmt{}, R} (Val:SortStmt{}, Lbl'LBraRBraUnds'STATEMENTS-SYNTAX'Unds'Stmt{}())) [functional{}()] // functional + axiom{R} \exists{R} (Val:SortInt{}, \equals{SortInt{}, R} (Val:SortInt{}, Lbl'Tild'Int'Unds'{}(K0:SortInt{}))) [functional{}()] // functional + axiom{} \or{SortKItem{}} (Lbl'Hash'freezer'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), Lbl'Hash'freezer-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(), \exists{SortKItem{}} (X0:SortK{}, Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{})), \exists{SortKItem{}} (X0:SortK{}, Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{})), \exists{SortKItem{}} (X0:SortK{}, Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{})), \exists{SortKItem{}} (X0:SortK{}, Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{})), \exists{SortKItem{}} (X0:SortK{}, Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{})), \exists{SortKItem{}} (X0:SortK{}, Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{})), \exists{SortKItem{}} (X0:SortK{}, Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{})), \exists{SortKItem{}} (X0:SortK{}, Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{})), \exists{SortKItem{}} (X0:SortK{}, Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{})), \exists{SortKItem{}} (X0:SortK{}, Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{})), \exists{SortKItem{}} (X0:SortK{}, Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{})), \exists{SortKItem{}} (X0:SortK{}, Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{})), \exists{SortKItem{}} (X0:SortK{}, Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{})), \exists{SortKItem{}} (X0:SortK{}, Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{})), \exists{SortKItem{}} (X0:SortK{}, Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{})), \exists{SortKItem{}} (X0:SortK{}, Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{})), \exists{SortKItem{}} (X0:SortK{}, Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{})), \exists{SortKItem{}} (X0:SortK{}, Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{})), \exists{SortKItem{}} (X0:SortK{}, Lbl'Hash'freezer'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr1'Unds'{}(X0:SortK{})), \exists{SortKItem{}} (X0:SortK{}, Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{})), \exists{SortKItem{}} (X0:SortK{}, Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{})), \exists{SortKItem{}} (X0:SortK{}, Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{})), \exists{SortKItem{}} (X0:SortK{}, Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{})), \exists{SortKItem{}} (X0:SortK{}, Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(X0:SortK{})), \exists{SortKItem{}} (X0:SortK{}, Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{})), \exists{SortKItem{}} (X0:SortK{}, \exists{SortKItem{}} (X1:SortK{}, Lbl'Hash'freezerif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt0'Unds'{}(X0:SortK{}, X1:SortK{}))), \exists{SortKItem{}} (X0:SortK{}, \exists{SortKItem{}} (X1:SortK{}, Lbl'Hash'freezerlet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr1'Unds'{}(X0:SortK{}, X1:SortK{}))), \exists{SortKItem{}} (Val:SortList{}, inj{SortList{}, SortKItem{}} (Val:SortList{})), \exists{SortKItem{}} (Val:SortKConfigVar{}, inj{SortKConfigVar{}, SortKItem{}} (Val:SortKConfigVar{})), \exists{SortKItem{}} (Val:SortValue{}, inj{SortValue{}, SortKItem{}} (Val:SortValue{})), \exists{SortKItem{}} (Val:SortExpr{}, inj{SortExpr{}, SortKItem{}} (Val:SortExpr{})), \exists{SortKItem{}} (Val:SortGeneratedCounterCell{}, inj{SortGeneratedCounterCell{}, SortKItem{}} (Val:SortGeneratedCounterCell{})), \exists{SortKItem{}} (Val:SortId{}, inj{SortId{}, SortKItem{}} (Val:SortId{})), \exists{SortKItem{}} (Val:SortBool{}, inj{SortBool{}, SortKItem{}} (Val:SortBool{})), \exists{SortKItem{}} (Val:SortKCell{}, inj{SortKCell{}, SortKItem{}} (Val:SortKCell{})), \exists{SortKItem{}} (Val:SortKResult{}, inj{SortKResult{}, SortKItem{}} (Val:SortKResult{})), \exists{SortKItem{}} (Val:SortMap{}, inj{SortMap{}, SortKItem{}} (Val:SortMap{})), \exists{SortKItem{}} (Val:SortEnvCell{}, inj{SortEnvCell{}, SortKItem{}} (Val:SortEnvCell{})), \exists{SortKItem{}} (Val:SortKCellOpt{}, inj{SortKCellOpt{}, SortKItem{}} (Val:SortKCellOpt{})), \exists{SortKItem{}} (Val:SortStmt{}, inj{SortStmt{}, SortKItem{}} (Val:SortStmt{})), \exists{SortKItem{}} (Val:SortInt{}, inj{SortInt{}, SortKItem{}} (Val:SortInt{})), \exists{SortKItem{}} (Val:SortGeneratedTopCell{}, inj{SortGeneratedTopCell{}, SortKItem{}} (Val:SortGeneratedTopCell{})), \exists{SortKItem{}} (Val:SortEnvCellOpt{}, inj{SortEnvCellOpt{}, SortKItem{}} (Val:SortEnvCellOpt{})), \exists{SortKItem{}} (Val:SortSet{}, inj{SortSet{}, SortKItem{}} (Val:SortSet{})), \exists{SortKItem{}} (Val:SortGeneratedTopCellFragment{}, inj{SortGeneratedTopCellFragment{}, SortKItem{}} (Val:SortGeneratedTopCellFragment{})), \bottom{SortKItem{}}()) [constructor{}()] // no junk + axiom{} \or{SortKConfigVar{}} (\top{SortKConfigVar{}}(), \bottom{SortKConfigVar{}}()) [constructor{}()] // no junk (TODO: fix bug with \dv) + axiom{} \or{SortValue{}} (\exists{SortValue{}} (Val:SortBool{}, inj{SortBool{}, SortValue{}} (Val:SortBool{})), \exists{SortValue{}} (Val:SortInt{}, inj{SortInt{}, SortValue{}} (Val:SortInt{})), \bottom{SortValue{}}()) [constructor{}()] // no junk + axiom{} \or{SortExpr{}} (\exists{SortExpr{}} (X0:SortExpr{}, Lbl'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(X0:SortExpr{})), \exists{SortExpr{}} (X0:SortExpr{}, Lbl-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(X0:SortExpr{})), \exists{SortExpr{}} (X0:SortExpr{}, \exists{SortExpr{}} (X1:SortExpr{}, Lbl'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}))), \exists{SortExpr{}} (X0:SortExpr{}, \exists{SortExpr{}} (X1:SortExpr{}, Lbl'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}))), \exists{SortExpr{}} (X0:SortExpr{}, \exists{SortExpr{}} (X1:SortExpr{}, Lbl'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}))), \exists{SortExpr{}} (X0:SortExpr{}, \exists{SortExpr{}} (X1:SortExpr{}, Lbl'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}))), \exists{SortExpr{}} (X0:SortExpr{}, \exists{SortExpr{}} (X1:SortExpr{}, Lbl'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}))), \exists{SortExpr{}} (X0:SortExpr{}, \exists{SortExpr{}} (X1:SortExpr{}, Lbl'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}))), \exists{SortExpr{}} (X0:SortExpr{}, \exists{SortExpr{}} (X1:SortExpr{}, Lbl'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}))), \exists{SortExpr{}} (X0:SortExpr{}, \exists{SortExpr{}} (X1:SortExpr{}, Lbl'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}))), \exists{SortExpr{}} (X0:SortExpr{}, \exists{SortExpr{}} (X1:SortExpr{}, Lbl'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}))), \exists{SortExpr{}} (X0:SortExpr{}, \exists{SortExpr{}} (X1:SortExpr{}, Lbl'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}))), \exists{SortExpr{}} (X0:SortExpr{}, \exists{SortExpr{}} (X1:SortExpr{}, Lbl'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}))), \exists{SortExpr{}} (X0:SortExpr{}, \exists{SortExpr{}} (X1:SortExpr{}, Lbl'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(X0:SortExpr{}, X1:SortExpr{}))), \exists{SortExpr{}} (X0:SortId{}, \exists{SortExpr{}} (X1:SortExpr{}, \exists{SortExpr{}} (X2:SortExpr{}, Lbllet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr{}(X0:SortId{}, X1:SortExpr{}, X2:SortExpr{})))), \exists{SortExpr{}} (Val:SortValue{}, inj{SortValue{}, SortExpr{}} (Val:SortValue{})), \exists{SortExpr{}} (Val:SortId{}, inj{SortId{}, SortExpr{}} (Val:SortId{})), \exists{SortExpr{}} (Val:SortBool{}, inj{SortBool{}, SortExpr{}} (Val:SortBool{})), \exists{SortExpr{}} (Val:SortInt{}, inj{SortInt{}, SortExpr{}} (Val:SortInt{})), \bottom{SortExpr{}}()) [constructor{}()] // no junk + axiom{} \or{SortGeneratedCounterCell{}} (\exists{SortGeneratedCounterCell{}} (X0:SortInt{}, Lbl'-LT-'generatedCounter'-GT-'{}(X0:SortInt{})), \bottom{SortGeneratedCounterCell{}}()) [constructor{}()] // no junk + axiom{} \or{SortId{}} (\top{SortId{}}(), \bottom{SortId{}}()) [constructor{}()] // no junk (TODO: fix bug with \dv) + axiom{} \or{SortBool{}} (\top{SortBool{}}(), \bottom{SortBool{}}()) [constructor{}()] // no junk (TODO: fix bug with \dv) + axiom{} \or{SortKCell{}} (\exists{SortKCell{}} (X0:SortK{}, Lbl'-LT-'k'-GT-'{}(X0:SortK{})), \bottom{SortKCell{}}()) [constructor{}()] // no junk + axiom{} \or{SortKResult{}} (\exists{SortKResult{}} (Val:SortValue{}, inj{SortValue{}, SortKResult{}} (Val:SortValue{})), \exists{SortKResult{}} (Val:SortBool{}, inj{SortBool{}, SortKResult{}} (Val:SortBool{})), \exists{SortKResult{}} (Val:SortInt{}, inj{SortInt{}, SortKResult{}} (Val:SortInt{})), \bottom{SortKResult{}}()) [constructor{}()] // no junk + axiom{} \or{SortEnvCell{}} (\exists{SortEnvCell{}} (X0:SortMap{}, Lbl'-LT-'env'-GT-'{}(X0:SortMap{})), \bottom{SortEnvCell{}}()) [constructor{}()] // no junk + axiom{} \or{SortKCellOpt{}} (LblnoKCell{}(), \exists{SortKCellOpt{}} (Val:SortKCell{}, inj{SortKCell{}, SortKCellOpt{}} (Val:SortKCell{})), \bottom{SortKCellOpt{}}()) [constructor{}()] // no junk + axiom{} \or{SortStmt{}} (\exists{SortStmt{}} (X0:SortId{}, \exists{SortStmt{}} (X1:SortExpr{}, Lbl'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr{}(X0:SortId{}, X1:SortExpr{}))), \exists{SortStmt{}} (X0:SortStmt{}, \exists{SortStmt{}} (X1:SortStmt{}, Lbl'UndsUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt'Unds'Stmt{}(X0:SortStmt{}, X1:SortStmt{}))), \exists{SortStmt{}} (X0:SortExpr{}, \exists{SortStmt{}} (X1:SortStmt{}, Lblif'LParUndsRParUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt{}(X0:SortExpr{}, X1:SortStmt{}))), \exists{SortStmt{}} (X0:SortExpr{}, \exists{SortStmt{}} (X1:SortStmt{}, \exists{SortStmt{}} (X2:SortStmt{}, Lblif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt{}(X0:SortExpr{}, X1:SortStmt{}, X2:SortStmt{})))), \exists{SortStmt{}} (X0:SortExpr{}, \exists{SortStmt{}} (X1:SortStmt{}, Lblwhile'LParUndsRParUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt{}(X0:SortExpr{}, X1:SortStmt{}))), \exists{SortStmt{}} (X0:SortStmt{}, Lbl'LBraUndsRBraUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt{}(X0:SortStmt{})), Lbl'LBraRBraUnds'STATEMENTS-SYNTAX'Unds'Stmt{}(), \bottom{SortStmt{}}()) [constructor{}()] // no junk + axiom{} \or{SortInt{}} (\top{SortInt{}}(), \bottom{SortInt{}}()) [constructor{}()] // no junk (TODO: fix bug with \dv) + axiom{} \or{SortGeneratedTopCell{}} (\exists{SortGeneratedTopCell{}} (X0:SortKCell{}, \exists{SortGeneratedTopCell{}} (X1:SortEnvCell{}, \exists{SortGeneratedTopCell{}} (X2:SortGeneratedCounterCell{}, Lbl'-LT-'generatedTop'-GT-'{}(X0:SortKCell{}, X1:SortEnvCell{}, X2:SortGeneratedCounterCell{})))), \bottom{SortGeneratedTopCell{}}()) [constructor{}()] // no junk + axiom{} \or{SortEnvCellOpt{}} (LblnoEnvCell{}(), \exists{SortEnvCellOpt{}} (Val:SortEnvCell{}, inj{SortEnvCell{}, SortEnvCellOpt{}} (Val:SortEnvCell{})), \bottom{SortEnvCellOpt{}}()) [constructor{}()] // no junk + axiom{} \or{SortGeneratedTopCellFragment{}} (\exists{SortGeneratedTopCellFragment{}} (X0:SortKCellOpt{}, \exists{SortGeneratedTopCellFragment{}} (X1:SortEnvCellOpt{}, Lbl'-LT-'generatedTop'-GT-'-fragment{}(X0:SortKCellOpt{}, X1:SortEnvCellOpt{}))), \bottom{SortGeneratedTopCellFragment{}}()) [constructor{}()] // no junk + +// rules +// rule #Ceil{Int,#SortParam}(`_%Int_`(@I1,@I2))=>#And{#SortParam}(#And{#SortParam}(#Equals{Bool,#SortParam}(`_=/=Int_`(@I2,#token("0","Int")),#token("true","Bool")),#Ceil{Int,#SortParam}(@I1)),#Ceil{Int,#SortParam}(@I2)) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(b622ef8c085d310116190556667c6c40158e0d40940b72ca0f29d51edc8c18bf), org.kframework.attributes.Location(Location(1369,8,1369,102)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, sortParams({Q0})] + axiom{R,Q0} \implies{R} ( + \top{R}(), + \equals{Q0,R} ( + \ceil{SortInt{}, Q0}(Lbl'UndsPerc'Int'Unds'{}(@VarI1:SortInt{},@VarI2:SortInt{})), + \and{Q0} ( + \and{Q0}(\and{Q0}(\equals{SortBool{}, Q0}(Lbl'UndsEqlsSlshEqls'Int'Unds'{}(@VarI2:SortInt{},\dv{SortInt{}}("0")),\dv{SortBool{}}("true")),\ceil{SortInt{}, Q0}(@VarI1:SortInt{})),\ceil{SortInt{}, Q0}(@VarI2:SortInt{})), + \top{Q0}()))) + [UNIQUE'Unds'ID{}("b622ef8c085d310116190556667c6c40158e0d40940b72ca0f29d51edc8c18bf"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1369,8,1369,102)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule #Ceil{Int,#SortParam}(`_/Int_`(@I1,@I2))=>#And{#SortParam}(#And{#SortParam}(#Equals{Bool,#SortParam}(`_=/=Int_`(@I2,#token("0","Int")),#token("true","Bool")),#Ceil{Int,#SortParam}(@I1)),#Ceil{Int,#SortParam}(@I2)) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(9a1834b97b96dc4289d7216a5db5a19e9778a92140ee2d6d0ee6e7b9bb629f0b), org.kframework.attributes.Location(Location(1368,8,1368,102)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, sortParams({Q0})] + axiom{R,Q0} \implies{R} ( + \top{R}(), + \equals{Q0,R} ( + \ceil{SortInt{}, Q0}(Lbl'UndsSlsh'Int'Unds'{}(@VarI1:SortInt{},@VarI2:SortInt{})), + \and{Q0} ( + \and{Q0}(\and{Q0}(\equals{SortBool{}, Q0}(Lbl'UndsEqlsSlshEqls'Int'Unds'{}(@VarI2:SortInt{},\dv{SortInt{}}("0")),\dv{SortBool{}}("true")),\ceil{SortInt{}, Q0}(@VarI1:SortInt{})),\ceil{SortInt{}, Q0}(@VarI2:SortInt{})), + \top{Q0}()))) + [UNIQUE'Unds'ID{}("9a1834b97b96dc4289d7216a5db5a19e9778a92140ee2d6d0ee6e7b9bb629f0b"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1368,8,1368,102)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule #Ceil{Int,#SortParam}(`_<#And{#SortParam}(#And{#SortParam}(#Equals{Bool,#SortParam}(`_>=Int_`(@I2,#token("0","Int")),#token("true","Bool")),#Ceil{Int,#SortParam}(@I1)),#Ceil{Int,#SortParam}(@I2)) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(5f8bf32bc6d29b1dd564aafa53735ab4af7bfa889111514aa98c4fa723f7552f), org.kframework.attributes.Location(Location(1372,8,1372,102)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, sortParams({Q0})] + axiom{R,Q0} \implies{R} ( + \top{R}(), + \equals{Q0,R} ( + \ceil{SortInt{}, Q0}(Lbl'Unds-LT--LT-'Int'Unds'{}(@VarI1:SortInt{},@VarI2:SortInt{})), + \and{Q0} ( + \and{Q0}(\and{Q0}(\equals{SortBool{}, Q0}(Lbl'Unds-GT-Eqls'Int'Unds'{}(@VarI2:SortInt{},\dv{SortInt{}}("0")),\dv{SortBool{}}("true")),\ceil{SortInt{}, Q0}(@VarI1:SortInt{})),\ceil{SortInt{}, Q0}(@VarI2:SortInt{})), + \top{Q0}()))) + [UNIQUE'Unds'ID{}("5f8bf32bc6d29b1dd564aafa53735ab4af7bfa889111514aa98c4fa723f7552f"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1372,8,1372,102)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule #Ceil{Int,#SortParam}(`_>>Int_`(@I1,@I2))=>#And{#SortParam}(#And{#SortParam}(#Equals{Bool,#SortParam}(`_>=Int_`(@I2,#token("0","Int")),#token("true","Bool")),#Ceil{Int,#SortParam}(@I1)),#Ceil{Int,#SortParam}(@I2)) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(c8752947aadc9d8ef2198aab097ebede2699aaac6eba9b2a816b0cdf19d318a3), org.kframework.attributes.Location(Location(1371,8,1371,102)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, sortParams({Q0})] + axiom{R,Q0} \implies{R} ( + \top{R}(), + \equals{Q0,R} ( + \ceil{SortInt{}, Q0}(Lbl'Unds-GT--GT-'Int'Unds'{}(@VarI1:SortInt{},@VarI2:SortInt{})), + \and{Q0} ( + \and{Q0}(\and{Q0}(\equals{SortBool{}, Q0}(Lbl'Unds-GT-Eqls'Int'Unds'{}(@VarI2:SortInt{},\dv{SortInt{}}("0")),\dv{SortBool{}}("true")),\ceil{SortInt{}, Q0}(@VarI1:SortInt{})),\ceil{SortInt{}, Q0}(@VarI2:SortInt{})), + \top{Q0}()))) + [UNIQUE'Unds'ID{}("c8752947aadc9d8ef2198aab097ebede2699aaac6eba9b2a816b0cdf19d318a3"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1371,8,1371,102)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule #Ceil{Int,#SortParam}(`_modInt_`(@I1,@I2))=>#And{#SortParam}(#And{#SortParam}(#Equals{Bool,#SortParam}(`_=/=Int_`(@I2,#token("0","Int")),#token("true","Bool")),#Ceil{Int,#SortParam}(@I1)),#Ceil{Int,#SortParam}(@I2)) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(ed8563f7c10f7082e32e3ba09e833bcd2568d081fd7a65b525bcf5b05040035b), org.kframework.attributes.Location(Location(1370,8,1370,102)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, sortParams({Q0})] + axiom{R,Q0} \implies{R} ( + \top{R}(), + \equals{Q0,R} ( + \ceil{SortInt{}, Q0}(Lbl'Unds'modInt'Unds'{}(@VarI1:SortInt{},@VarI2:SortInt{})), + \and{Q0} ( + \and{Q0}(\and{Q0}(\equals{SortBool{}, Q0}(Lbl'UndsEqlsSlshEqls'Int'Unds'{}(@VarI2:SortInt{},\dv{SortInt{}}("0")),\dv{SortBool{}}("true")),\ceil{SortInt{}, Q0}(@VarI1:SortInt{})),\ceil{SortInt{}, Q0}(@VarI2:SortInt{})), + \top{Q0}()))) + [UNIQUE'Unds'ID{}("ed8563f7c10f7082e32e3ba09e833bcd2568d081fd7a65b525bcf5b05040035b"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1370,8,1370,102)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule #Equals{Bool,#SortParam}(`_=/=Int_`(K1,K2),#token("false","Bool"))=>#Equals{Int,#SortParam}(K1,K2) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(795b359eb7defdb79755173ab8af1e9e2a1baa62035cef8bf05d869b4c9541c9), org.kframework.attributes.Location(Location(1387,8,1387,55)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, sortParams({Q0})] + axiom{R,Q0} \implies{R} ( + \top{R}(), + \equals{Q0,R} ( + \equals{SortBool{}, Q0}(Lbl'UndsEqlsSlshEqls'Int'Unds'{}(VarK1:SortInt{},VarK2:SortInt{}),\dv{SortBool{}}("false")), + \and{Q0} ( + \equals{SortInt{}, Q0}(VarK1:SortInt{},VarK2:SortInt{}), + \top{Q0}()))) + [UNIQUE'Unds'ID{}("795b359eb7defdb79755173ab8af1e9e2a1baa62035cef8bf05d869b4c9541c9"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1387,8,1387,55)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule #Equals{Bool,#SortParam}(`_=/=Int_`(K1,K2),#token("true","Bool"))=>#Not{#SortParam}(#Equals{Int,#SortParam}(K1,K2)) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(05a130417fde08afe4d6f16334376c84fc19905832dee217851085e64ad36565), org.kframework.attributes.Location(Location(1385,8,1385,60)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, sortParams({Q0})] + axiom{R,Q0} \implies{R} ( + \top{R}(), + \equals{Q0,R} ( + \equals{SortBool{}, Q0}(Lbl'UndsEqlsSlshEqls'Int'Unds'{}(VarK1:SortInt{},VarK2:SortInt{}),\dv{SortBool{}}("true")), + \and{Q0} ( + \not{Q0}(\equals{SortInt{}, Q0}(VarK1:SortInt{},VarK2:SortInt{})), + \top{Q0}()))) + [UNIQUE'Unds'ID{}("05a130417fde08afe4d6f16334376c84fc19905832dee217851085e64ad36565"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1385,8,1385,60)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule #Equals{Bool,#SortParam}(`_=/=K_`(K1,K2),#token("false","Bool"))=>#Equals{K,#SortParam}(K1,K2) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(9d66f4f4523150f66c090aecc98805e32e109e726f53d3eaf49d463bf591319d), org.kframework.attributes.Location(Location(2297,8,2297,53)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, sortParams({Q0})] + axiom{R,Q0} \implies{R} ( + \top{R}(), + \equals{Q0,R} ( + \equals{SortBool{}, Q0}(Lbl'UndsEqlsSlshEqls'K'Unds'{}(VarK1:SortK{},VarK2:SortK{}),\dv{SortBool{}}("false")), + \and{Q0} ( + \equals{SortK{}, Q0}(VarK1:SortK{},VarK2:SortK{}), + \top{Q0}()))) + [UNIQUE'Unds'ID{}("9d66f4f4523150f66c090aecc98805e32e109e726f53d3eaf49d463bf591319d"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(2297,8,2297,53)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule #Equals{Bool,#SortParam}(`_=/=K_`(K1,K2),#token("true","Bool"))=>#Not{#SortParam}(#Equals{K,#SortParam}(K1,K2)) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(bbc468285d9d1c57b0a62e5e63bde86c5308370a10572c3deb33d03e13456727), org.kframework.attributes.Location(Location(2295,8,2295,58)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, sortParams({Q0})] + axiom{R,Q0} \implies{R} ( + \top{R}(), + \equals{Q0,R} ( + \equals{SortBool{}, Q0}(Lbl'UndsEqlsSlshEqls'K'Unds'{}(VarK1:SortK{},VarK2:SortK{}),\dv{SortBool{}}("true")), + \and{Q0} ( + \not{Q0}(\equals{SortK{}, Q0}(VarK1:SortK{},VarK2:SortK{})), + \top{Q0}()))) + [UNIQUE'Unds'ID{}("bbc468285d9d1c57b0a62e5e63bde86c5308370a10572c3deb33d03e13456727"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(2295,8,2295,58)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule #Equals{Bool,#SortParam}(`_==Int_`(K1,K2),#token("false","Bool"))=>#Not{#SortParam}(#Equals{Int,#SortParam}(K1,K2)) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(b47d1ffbd21dc81cf1b7fd21570adff9e4287eda0dfe26e863e672351d90f2cb), org.kframework.attributes.Location(Location(1383,8,1383,60)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, sortParams({Q0})] + axiom{R,Q0} \implies{R} ( + \top{R}(), + \equals{Q0,R} ( + \equals{SortBool{}, Q0}(Lbl'UndsEqlsEqls'Int'Unds'{}(VarK1:SortInt{},VarK2:SortInt{}),\dv{SortBool{}}("false")), + \and{Q0} ( + \not{Q0}(\equals{SortInt{}, Q0}(VarK1:SortInt{},VarK2:SortInt{})), + \top{Q0}()))) + [UNIQUE'Unds'ID{}("b47d1ffbd21dc81cf1b7fd21570adff9e4287eda0dfe26e863e672351d90f2cb"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1383,8,1383,60)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule #Equals{Bool,#SortParam}(`_==Int_`(K1,K2),#token("true","Bool"))=>#Equals{Int,#SortParam}(K1,K2) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(c41b0da7f1db6ae2f2fe6efb586d75a961c154ed1d6977cec362db971c1ac799), org.kframework.attributes.Location(Location(1381,8,1381,53)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, sortParams({Q0})] + axiom{R,Q0} \implies{R} ( + \top{R}(), + \equals{Q0,R} ( + \equals{SortBool{}, Q0}(Lbl'UndsEqlsEqls'Int'Unds'{}(VarK1:SortInt{},VarK2:SortInt{}),\dv{SortBool{}}("true")), + \and{Q0} ( + \equals{SortInt{}, Q0}(VarK1:SortInt{},VarK2:SortInt{}), + \top{Q0}()))) + [UNIQUE'Unds'ID{}("c41b0da7f1db6ae2f2fe6efb586d75a961c154ed1d6977cec362db971c1ac799"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1381,8,1381,53)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule #Equals{Bool,#SortParam}(`_==K_`(K1,K2),#token("false","Bool"))=>#Not{#SortParam}(#Equals{K,#SortParam}(K1,K2)) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(fbb001dd1d8b9a3f8466f8188e21aaee68617e9bd3df6dc839b8cd337b34adcc), org.kframework.attributes.Location(Location(2293,8,2293,58)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, sortParams({Q0})] + axiom{R,Q0} \implies{R} ( + \top{R}(), + \equals{Q0,R} ( + \equals{SortBool{}, Q0}(Lbl'UndsEqlsEqls'K'Unds'{}(VarK1:SortK{},VarK2:SortK{}),\dv{SortBool{}}("false")), + \and{Q0} ( + \not{Q0}(\equals{SortK{}, Q0}(VarK1:SortK{},VarK2:SortK{})), + \top{Q0}()))) + [UNIQUE'Unds'ID{}("fbb001dd1d8b9a3f8466f8188e21aaee68617e9bd3df6dc839b8cd337b34adcc"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(2293,8,2293,58)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule #Equals{Bool,#SortParam}(`_==K_`(K1,K2),#token("true","Bool"))=>#Equals{K,#SortParam}(K1,K2) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(4f1df0fcbe5672da3e37bad79f0a8a2e8ac5474f49364d679a98e61b384a27ab), org.kframework.attributes.Location(Location(2291,8,2291,51)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, sortParams({Q0})] + axiom{R,Q0} \implies{R} ( + \top{R}(), + \equals{Q0,R} ( + \equals{SortBool{}, Q0}(Lbl'UndsEqlsEqls'K'Unds'{}(VarK1:SortK{},VarK2:SortK{}),\dv{SortBool{}}("true")), + \and{Q0} ( + \equals{SortK{}, Q0}(VarK1:SortK{},VarK2:SortK{}), + \top{Q0}()))) + [UNIQUE'Unds'ID{}("4f1df0fcbe5672da3e37bad79f0a8a2e8ac5474f49364d679a98e61b384a27ab"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(2291,8,2291,51)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule #Equals{Bool,#SortParam}(`_andBool_`(@B1,@B2),#token("true","Bool"))=>#And{#SortParam}(#Equals{Bool,#SortParam}(@B1,#token("true","Bool")),#Equals{Bool,#SortParam}(@B2,#token("true","Bool"))) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(9aad9b95f738d9a2205d9d25e4d74fe5383d9d760aeb20b454170cc72a594969), org.kframework.attributes.Location(Location(1162,8,1162,84)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, sortParams({Q0})] + axiom{R,Q0} \implies{R} ( + \top{R}(), + \equals{Q0,R} ( + \equals{SortBool{}, Q0}(Lbl'Unds'andBool'Unds'{}(@VarB1:SortBool{},@VarB2:SortBool{}),\dv{SortBool{}}("true")), + \and{Q0} ( + \and{Q0}(\equals{SortBool{}, Q0}(@VarB1:SortBool{},\dv{SortBool{}}("true")),\equals{SortBool{}, Q0}(@VarB2:SortBool{},\dv{SortBool{}}("true"))), + \top{Q0}()))) + [UNIQUE'Unds'ID{}("9aad9b95f738d9a2205d9d25e4d74fe5383d9d760aeb20b454170cc72a594969"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1162,8,1162,84)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule #Equals{Bool,#SortParam}(`_orBool_`(@B1,@B2),#token("false","Bool"))=>#And{#SortParam}(#Equals{Bool,#SortParam}(@B1,#token("false","Bool")),#Equals{Bool,#SortParam}(@B2,#token("false","Bool"))) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(8e69004f8524a0ef78bb9772df04f4e2dda461cf1d1803ddddb00fecc679e561), org.kframework.attributes.Location(Location(1164,8,1164,86)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, sortParams({Q0})] + axiom{R,Q0} \implies{R} ( + \top{R}(), + \equals{Q0,R} ( + \equals{SortBool{}, Q0}(Lbl'Unds'orBool'Unds'{}(@VarB1:SortBool{},@VarB2:SortBool{}),\dv{SortBool{}}("false")), + \and{Q0} ( + \and{Q0}(\equals{SortBool{}, Q0}(@VarB1:SortBool{},\dv{SortBool{}}("false")),\equals{SortBool{}, Q0}(@VarB2:SortBool{},\dv{SortBool{}}("false"))), + \top{Q0}()))) + [UNIQUE'Unds'ID{}("8e69004f8524a0ef78bb9772df04f4e2dda461cf1d1803ddddb00fecc679e561"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1164,8,1164,86)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule #Equals{Bool,#SortParam}(`notBool_`(@B),#token("false","Bool"))=>#Equals{Bool,#SortParam}(@B,#token("true","Bool")) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(f849e4d67d2a74b4cccc204cf2328d983402c10486394c6bb076c907351805ae), org.kframework.attributes.Location(Location(1159,8,1159,55)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, sortParams({Q0})] + axiom{R,Q0} \implies{R} ( + \top{R}(), + \equals{Q0,R} ( + \equals{SortBool{}, Q0}(LblnotBool'Unds'{}(@VarB:SortBool{}),\dv{SortBool{}}("false")), + \and{Q0} ( + \equals{SortBool{}, Q0}(@VarB:SortBool{},\dv{SortBool{}}("true")), + \top{Q0}()))) + [UNIQUE'Unds'ID{}("f849e4d67d2a74b4cccc204cf2328d983402c10486394c6bb076c907351805ae"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1159,8,1159,55)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule #Equals{Bool,#SortParam}(`notBool_`(@B),#token("true","Bool"))=>#Equals{Bool,#SortParam}(@B,#token("false","Bool")) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(0ac934b762853d8a5da4819f1a56c44c9311a77e5297e48c54e61a9a08697107), org.kframework.attributes.Location(Location(1157,8,1157,55)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, sortParams({Q0})] + axiom{R,Q0} \implies{R} ( + \top{R}(), + \equals{Q0,R} ( + \equals{SortBool{}, Q0}(LblnotBool'Unds'{}(@VarB:SortBool{}),\dv{SortBool{}}("true")), + \and{Q0} ( + \equals{SortBool{}, Q0}(@VarB:SortBool{},\dv{SortBool{}}("false")), + \top{Q0}()))) + [UNIQUE'Unds'ID{}("0ac934b762853d8a5da4819f1a56c44c9311a77e5297e48c54e61a9a08697107"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1157,8,1157,55)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule #Equals{Bool,#SortParam}(#token("false","Bool"),`_=/=Int_`(K1,K2))=>#Equals{Int,#SortParam}(K1,K2) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(9792bd7a5d2539a29ba29c1e32994d0f363d8d0ea982eb9090122b68c172e002), org.kframework.attributes.Location(Location(1388,8,1388,55)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, sortParams({Q0})] + axiom{R,Q0} \implies{R} ( + \top{R}(), + \equals{Q0,R} ( + \equals{SortBool{}, Q0}(\dv{SortBool{}}("false"),Lbl'UndsEqlsSlshEqls'Int'Unds'{}(VarK1:SortInt{},VarK2:SortInt{})), + \and{Q0} ( + \equals{SortInt{}, Q0}(VarK1:SortInt{},VarK2:SortInt{}), + \top{Q0}()))) + [UNIQUE'Unds'ID{}("9792bd7a5d2539a29ba29c1e32994d0f363d8d0ea982eb9090122b68c172e002"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1388,8,1388,55)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule #Equals{Bool,#SortParam}(#token("false","Bool"),`_=/=K_`(K1,K2))=>#Equals{K,#SortParam}(K1,K2) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(da8b62ee5fcd571267f5049d842316ff177fca6096d2d9cd356c72526a794fca), org.kframework.attributes.Location(Location(2298,8,2298,53)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, sortParams({Q0})] + axiom{R,Q0} \implies{R} ( + \top{R}(), + \equals{Q0,R} ( + \equals{SortBool{}, Q0}(\dv{SortBool{}}("false"),Lbl'UndsEqlsSlshEqls'K'Unds'{}(VarK1:SortK{},VarK2:SortK{})), + \and{Q0} ( + \equals{SortK{}, Q0}(VarK1:SortK{},VarK2:SortK{}), + \top{Q0}()))) + [UNIQUE'Unds'ID{}("da8b62ee5fcd571267f5049d842316ff177fca6096d2d9cd356c72526a794fca"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(2298,8,2298,53)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule #Equals{Bool,#SortParam}(#token("false","Bool"),`_==Int_`(K1,K2))=>#Not{#SortParam}(#Equals{Int,#SortParam}(K1,K2)) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(1079bc3ddec6c135ffdb2affa08dd6aa948cf49d75a5180e2c7ca82d0d1b8ce8), org.kframework.attributes.Location(Location(1384,8,1384,60)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, sortParams({Q0})] + axiom{R,Q0} \implies{R} ( + \top{R}(), + \equals{Q0,R} ( + \equals{SortBool{}, Q0}(\dv{SortBool{}}("false"),Lbl'UndsEqlsEqls'Int'Unds'{}(VarK1:SortInt{},VarK2:SortInt{})), + \and{Q0} ( + \not{Q0}(\equals{SortInt{}, Q0}(VarK1:SortInt{},VarK2:SortInt{})), + \top{Q0}()))) + [UNIQUE'Unds'ID{}("1079bc3ddec6c135ffdb2affa08dd6aa948cf49d75a5180e2c7ca82d0d1b8ce8"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1384,8,1384,60)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule #Equals{Bool,#SortParam}(#token("false","Bool"),`_==K_`(K1,K2))=>#Not{#SortParam}(#Equals{K,#SortParam}(K1,K2)) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(45bfda34ee15d29f413561463c9921671249c5879697cc5fe1c5ba8365c011d0), org.kframework.attributes.Location(Location(2294,8,2294,58)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, sortParams({Q0})] + axiom{R,Q0} \implies{R} ( + \top{R}(), + \equals{Q0,R} ( + \equals{SortBool{}, Q0}(\dv{SortBool{}}("false"),Lbl'UndsEqlsEqls'K'Unds'{}(VarK1:SortK{},VarK2:SortK{})), + \and{Q0} ( + \not{Q0}(\equals{SortK{}, Q0}(VarK1:SortK{},VarK2:SortK{})), + \top{Q0}()))) + [UNIQUE'Unds'ID{}("45bfda34ee15d29f413561463c9921671249c5879697cc5fe1c5ba8365c011d0"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(2294,8,2294,58)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule #Equals{Bool,#SortParam}(#token("false","Bool"),`_orBool_`(@B1,@B2))=>#And{#SortParam}(#Equals{Bool,#SortParam}(#token("false","Bool"),@B1),#Equals{Bool,#SortParam}(#token("false","Bool"),@B2)) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(defa1852968a34529c2e1cf9e575104f4efa985725f1c8e0ee558a5eda315a9e), org.kframework.attributes.Location(Location(1163,8,1163,86)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, sortParams({Q0})] + axiom{R,Q0} \implies{R} ( + \top{R}(), + \equals{Q0,R} ( + \equals{SortBool{}, Q0}(\dv{SortBool{}}("false"),Lbl'Unds'orBool'Unds'{}(@VarB1:SortBool{},@VarB2:SortBool{})), + \and{Q0} ( + \and{Q0}(\equals{SortBool{}, Q0}(\dv{SortBool{}}("false"),@VarB1:SortBool{}),\equals{SortBool{}, Q0}(\dv{SortBool{}}("false"),@VarB2:SortBool{})), + \top{Q0}()))) + [UNIQUE'Unds'ID{}("defa1852968a34529c2e1cf9e575104f4efa985725f1c8e0ee558a5eda315a9e"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1163,8,1163,86)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule #Equals{Bool,#SortParam}(#token("false","Bool"),`notBool_`(@B))=>#Equals{Bool,#SortParam}(#token("true","Bool"),@B) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(3c3fe078896d0d71271c80ee4bf02a715d9103274cb4b3b613abdb99a362a323), org.kframework.attributes.Location(Location(1158,8,1158,55)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, sortParams({Q0})] + axiom{R,Q0} \implies{R} ( + \top{R}(), + \equals{Q0,R} ( + \equals{SortBool{}, Q0}(\dv{SortBool{}}("false"),LblnotBool'Unds'{}(@VarB:SortBool{})), + \and{Q0} ( + \equals{SortBool{}, Q0}(\dv{SortBool{}}("true"),@VarB:SortBool{}), + \top{Q0}()))) + [UNIQUE'Unds'ID{}("3c3fe078896d0d71271c80ee4bf02a715d9103274cb4b3b613abdb99a362a323"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1158,8,1158,55)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule #Equals{Bool,#SortParam}(#token("true","Bool"),`_=/=Int_`(K1,K2))=>#Not{#SortParam}(#Equals{Int,#SortParam}(K1,K2)) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(7c6945e9f9c097f33467f54fb43978a62371b48434726f253052176b905b885c), org.kframework.attributes.Location(Location(1386,8,1386,60)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, sortParams({Q0})] + axiom{R,Q0} \implies{R} ( + \top{R}(), + \equals{Q0,R} ( + \equals{SortBool{}, Q0}(\dv{SortBool{}}("true"),Lbl'UndsEqlsSlshEqls'Int'Unds'{}(VarK1:SortInt{},VarK2:SortInt{})), + \and{Q0} ( + \not{Q0}(\equals{SortInt{}, Q0}(VarK1:SortInt{},VarK2:SortInt{})), + \top{Q0}()))) + [UNIQUE'Unds'ID{}("7c6945e9f9c097f33467f54fb43978a62371b48434726f253052176b905b885c"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1386,8,1386,60)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule #Equals{Bool,#SortParam}(#token("true","Bool"),`_=/=K_`(K1,K2))=>#Not{#SortParam}(#Equals{K,#SortParam}(K1,K2)) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(fdc517cb9fb2fd5aedf681fc31fd3214b997bc9a717a0f978cd49cc24db6fe7c), org.kframework.attributes.Location(Location(2296,8,2296,58)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, sortParams({Q0})] + axiom{R,Q0} \implies{R} ( + \top{R}(), + \equals{Q0,R} ( + \equals{SortBool{}, Q0}(\dv{SortBool{}}("true"),Lbl'UndsEqlsSlshEqls'K'Unds'{}(VarK1:SortK{},VarK2:SortK{})), + \and{Q0} ( + \not{Q0}(\equals{SortK{}, Q0}(VarK1:SortK{},VarK2:SortK{})), + \top{Q0}()))) + [UNIQUE'Unds'ID{}("fdc517cb9fb2fd5aedf681fc31fd3214b997bc9a717a0f978cd49cc24db6fe7c"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(2296,8,2296,58)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule #Equals{Bool,#SortParam}(#token("true","Bool"),`_==Int_`(K1,K2))=>#Equals{Int,#SortParam}(K1,K2) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(435d5e3c9c81148294a952394bc0164963a226f169ab6175d7d1ebd4ec19c13e), org.kframework.attributes.Location(Location(1382,8,1382,53)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, sortParams({Q0})] + axiom{R,Q0} \implies{R} ( + \top{R}(), + \equals{Q0,R} ( + \equals{SortBool{}, Q0}(\dv{SortBool{}}("true"),Lbl'UndsEqlsEqls'Int'Unds'{}(VarK1:SortInt{},VarK2:SortInt{})), + \and{Q0} ( + \equals{SortInt{}, Q0}(VarK1:SortInt{},VarK2:SortInt{}), + \top{Q0}()))) + [UNIQUE'Unds'ID{}("435d5e3c9c81148294a952394bc0164963a226f169ab6175d7d1ebd4ec19c13e"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1382,8,1382,53)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule #Equals{Bool,#SortParam}(#token("true","Bool"),`_==K_`(K1,K2))=>#Equals{K,#SortParam}(K1,K2) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(9a4b74e345447735b5c093e8c87dc9950d0a498adcd67b709212e4b0ffc5c1ff), org.kframework.attributes.Location(Location(2292,8,2292,51)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, sortParams({Q0})] + axiom{R,Q0} \implies{R} ( + \top{R}(), + \equals{Q0,R} ( + \equals{SortBool{}, Q0}(\dv{SortBool{}}("true"),Lbl'UndsEqlsEqls'K'Unds'{}(VarK1:SortK{},VarK2:SortK{})), + \and{Q0} ( + \equals{SortK{}, Q0}(VarK1:SortK{},VarK2:SortK{}), + \top{Q0}()))) + [UNIQUE'Unds'ID{}("9a4b74e345447735b5c093e8c87dc9950d0a498adcd67b709212e4b0ffc5c1ff"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(2292,8,2292,51)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule #Equals{Bool,#SortParam}(#token("true","Bool"),`_andBool_`(@B1,@B2))=>#And{#SortParam}(#Equals{Bool,#SortParam}(#token("true","Bool"),@B1),#Equals{Bool,#SortParam}(#token("true","Bool"),@B2)) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(300cf41da7d529cc248e588cad6803b76fcbbb65e52839df4abc4bc96dbe0df7), org.kframework.attributes.Location(Location(1161,8,1161,84)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, sortParams({Q0})] + axiom{R,Q0} \implies{R} ( + \top{R}(), + \equals{Q0,R} ( + \equals{SortBool{}, Q0}(\dv{SortBool{}}("true"),Lbl'Unds'andBool'Unds'{}(@VarB1:SortBool{},@VarB2:SortBool{})), + \and{Q0} ( + \and{Q0}(\equals{SortBool{}, Q0}(\dv{SortBool{}}("true"),@VarB1:SortBool{}),\equals{SortBool{}, Q0}(\dv{SortBool{}}("true"),@VarB2:SortBool{})), + \top{Q0}()))) + [UNIQUE'Unds'ID{}("300cf41da7d529cc248e588cad6803b76fcbbb65e52839df4abc4bc96dbe0df7"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1161,8,1161,84)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule #Equals{Bool,#SortParam}(#token("true","Bool"),`notBool_`(@B))=>#Equals{Bool,#SortParam}(#token("false","Bool"),@B) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(88327456f82448e5a8387e1b180240db11201dd91cad6b2086350a57ec6598c4), org.kframework.attributes.Location(Location(1156,8,1156,55)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, sortParams({Q0})] + axiom{R,Q0} \implies{R} ( + \top{R}(), + \equals{Q0,R} ( + \equals{SortBool{}, Q0}(\dv{SortBool{}}("true"),LblnotBool'Unds'{}(@VarB:SortBool{})), + \and{Q0} ( + \equals{SortBool{}, Q0}(\dv{SortBool{}}("false"),@VarB:SortBool{}), + \top{Q0}()))) + [UNIQUE'Unds'ID{}("88327456f82448e5a8387e1b180240db11201dd91cad6b2086350a57ec6598c4"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1156,8,1156,55)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule `#if_#then_#else_#fi_K-EQUAL-SYNTAX_Sort_Bool_Sort_Sort`{K}(C,B1,_Gen0)=>B1 requires C ensures #token("true","Bool") [UNIQUE_ID(2b32069ac3f589174502fa507ebc88fab7c902854c0a9baa8ab09beb551232e2), org.kframework.attributes.Location(Location(2309,8,2309,59)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody "requires" Bool [klabel(#ruleRequires), symbol])] + axiom{R} \implies{R} ( + \and{R}( + \equals{SortBool{},R}( + VarC:SortBool{}, + \dv{SortBool{}}("true")), + \and{R} ( + \in{SortBool{}, R} ( + X0:SortBool{}, + VarC:SortBool{} + ),\and{R} ( + \in{SortK{}, R} ( + X1:SortK{}, + VarB1:SortK{} + ),\and{R} ( + \in{SortK{}, R} ( + X2:SortK{}, + Var'Unds'Gen0:SortK{} + ), + \top{R} () + )))), + \equals{SortK{},R} ( + Lbl'Hash'if'UndsHash'then'UndsHash'else'UndsHash'fi'Unds'K-EQUAL-SYNTAX'Unds'Sort'Unds'Bool'Unds'Sort'Unds'Sort{SortK{}}(X0:SortBool{},X1:SortK{},X2:SortK{}), + \and{SortK{}} ( + VarB1:SortK{}, + \top{SortK{}}()))) + [UNIQUE'Unds'ID{}("2b32069ac3f589174502fa507ebc88fab7c902854c0a9baa8ab09beb551232e2"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(2309,8,2309,59)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)")] + +// rule `#if_#then_#else_#fi_K-EQUAL-SYNTAX_Sort_Bool_Sort_Sort`{K}(C,_Gen0,B2)=>B2 requires `notBool_`(C) ensures #token("true","Bool") [UNIQUE_ID(651bff3fa53d464ac7dd7aa77e1ef6071e14c959eb6df97baa325e2ad300daaa), org.kframework.attributes.Location(Location(2310,8,2310,67)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody "requires" Bool [klabel(#ruleRequires), symbol])] + axiom{R} \implies{R} ( + \and{R}( + \equals{SortBool{},R}( + LblnotBool'Unds'{}(VarC:SortBool{}), + \dv{SortBool{}}("true")), + \and{R} ( + \in{SortBool{}, R} ( + X0:SortBool{}, + VarC:SortBool{} + ),\and{R} ( + \in{SortK{}, R} ( + X1:SortK{}, + Var'Unds'Gen0:SortK{} + ),\and{R} ( + \in{SortK{}, R} ( + X2:SortK{}, + VarB2:SortK{} + ), + \top{R} () + )))), + \equals{SortK{},R} ( + Lbl'Hash'if'UndsHash'then'UndsHash'else'UndsHash'fi'Unds'K-EQUAL-SYNTAX'Unds'Sort'Unds'Bool'Unds'Sort'Unds'Sort{SortK{}}(X0:SortBool{},X1:SortK{},X2:SortK{}), + \and{SortK{}} ( + VarB2:SortK{}, + \top{SortK{}}()))) + [UNIQUE'Unds'ID{}("651bff3fa53d464ac7dd7aa77e1ef6071e14c959eb6df97baa325e2ad300daaa"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(2310,8,2310,67)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)")] + +// rule ``(``(``inj{Expr,KItem}(HOLE) #as _Gen4``~>`#freezer!__EXPRESSIONS-SYNTAX_Expr_Expr0_`(.KList)~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(`!__EXPRESSIONS-SYNTAX_Expr_Expr`(HOLE))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),isKResult(_Gen4)) ensures #token("true","Bool") [UNIQUE_ID(28f395c2f029144cab225e78d4bc6d7d6c54b12b2b14d0f806934911bc8ed0d1), cool, cool-like, group(unary), label(EXPRESSIONS-SYNTAX.!__EXPRESSIONS-SYNTAX_Expr_Expr1-cool), non-assoc, org.kframework.attributes.Location(Location(32,23,32,71)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), strict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(\and{SortKItem{}}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),Var'Unds'Gen4:SortKItem{}),kseq{}(Lbl'Hash'freezer'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblisKResult{}(kseq{}(Var'Unds'Gen4:SortKItem{},dotk{}()))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(VarHOLE:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("28f395c2f029144cab225e78d4bc6d7d6c54b12b2b14d0f806934911bc8ed0d1"), cool{}(), cool-like{}(), label{}("EXPRESSIONS-SYNTAX.!__EXPRESSIONS-SYNTAX_Expr_Expr1-cool"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(32,23,32,71)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(``inj{Expr,KItem}(HOLE) #as _Gen4``~>`#freezer-__EXPRESSIONS-SYNTAX_Expr_Expr0_`(.KList)~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(`-__EXPRESSIONS-SYNTAX_Expr_Expr`(HOLE))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),isKResult(_Gen4)) ensures #token("true","Bool") [UNIQUE_ID(89c997e8c8a65eee9d8c290408c5047013371983782f31ab96abcacc8d33ba6d), cool, cool-like, group(unary), label(EXPRESSIONS-SYNTAX.-__EXPRESSIONS-SYNTAX_Expr_Expr1-cool), non-assoc, org.kframework.attributes.Location(Location(17,23,17,70)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), strict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(\and{SortKItem{}}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),Var'Unds'Gen4:SortKItem{}),kseq{}(Lbl'Hash'freezer-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblisKResult{}(kseq{}(Var'Unds'Gen4:SortKItem{},dotk{}()))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(VarHOLE:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("89c997e8c8a65eee9d8c290408c5047013371983782f31ab96abcacc8d33ba6d"), cool{}(), cool-like{}(), label{}("EXPRESSIONS-SYNTAX.-__EXPRESSIONS-SYNTAX_Expr_Expr1-cool"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(17,23,17,70)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(``inj{Expr,KItem}(HOLE) #as _Gen4``~>`#freezer_!=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr0_`(inj{Expr,KItem}(K1))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(`_!=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(HOLE,K1))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),isKResult(_Gen4)) ensures #token("true","Bool") [UNIQUE_ID(945b3e3877e1bcef12e34b1459e03715929fb06f27c36d5f040f4ea1bbf4b0a1), cool, cool-like, group(comp), label(EXPRESSIONS-SYNTAX._!=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-cool), non-assoc, org.kframework.attributes.Location(Location(26,23,26,73)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(\and{SortKItem{}}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),Var'Unds'Gen4:SortKItem{}),kseq{}(Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK1:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblisKResult{}(kseq{}(Var'Unds'Gen4:SortKItem{},dotk{}()))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarHOLE:SortExpr{},VarK1:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("945b3e3877e1bcef12e34b1459e03715929fb06f27c36d5f040f4ea1bbf4b0a1"), cool{}(), cool-like{}(), label{}("EXPRESSIONS-SYNTAX._!=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-cool"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(26,23,26,73)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(``inj{Expr,KItem}(HOLE) #as _Gen4``~>`#freezer_!=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1_`(inj{Expr,KItem}(K0))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(`_!=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(K0,HOLE))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),isKResult(_Gen4)) ensures #token("true","Bool") [UNIQUE_ID(61667f85580d671f01c5a3eaa7bf52f2a9d135b1ae4ce5e077479bc561f406bd), cool, cool-like, group(comp), label(EXPRESSIONS-SYNTAX._!=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-cool), non-assoc, org.kframework.attributes.Location(Location(26,23,26,73)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(\and{SortKItem{}}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),Var'Unds'Gen4:SortKItem{}),kseq{}(Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK0:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblisKResult{}(kseq{}(Var'Unds'Gen4:SortKItem{},dotk{}()))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarK0:SortExpr{},VarHOLE:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("61667f85580d671f01c5a3eaa7bf52f2a9d135b1ae4ce5e077479bc561f406bd"), cool{}(), cool-like{}(), label{}("EXPRESSIONS-SYNTAX._!=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-cool"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(26,23,26,73)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(``inj{Expr,KItem}(HOLE) #as _Gen4``~>`#freezer_&&__EXPRESSIONS-SYNTAX_Expr_Expr_Expr0_`(inj{Expr,KItem}(K1))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(`_&&__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(HOLE,K1))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),isKResult(_Gen4)) ensures #token("true","Bool") [UNIQUE_ID(27268d67aa8be53d3a4b25a407a281edc33fdd07fa33d3888843b6f27e0c10d6), cool, cool-like, group(bool), label(EXPRESSIONS-SYNTAX._&&__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-cool), left, org.kframework.attributes.Location(Location(33,23,33,68)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(\and{SortKItem{}}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),Var'Unds'Gen4:SortKItem{}),kseq{}(Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK1:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblisKResult{}(kseq{}(Var'Unds'Gen4:SortKItem{},dotk{}()))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarHOLE:SortExpr{},VarK1:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("27268d67aa8be53d3a4b25a407a281edc33fdd07fa33d3888843b6f27e0c10d6"), cool{}(), cool-like{}(), label{}("EXPRESSIONS-SYNTAX._&&__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-cool"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(33,23,33,68)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(``inj{Expr,KItem}(HOLE) #as _Gen4``~>`#freezer_&&__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1_`(inj{Expr,KItem}(K0))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(`_&&__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(K0,HOLE))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),isKResult(_Gen4)) ensures #token("true","Bool") [UNIQUE_ID(6a788904e3d255281cb2804f4927d2fb2906a898d1d627801b4f28555357b860), cool, cool-like, group(bool), label(EXPRESSIONS-SYNTAX._&&__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-cool), left, org.kframework.attributes.Location(Location(33,23,33,68)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(\and{SortKItem{}}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),Var'Unds'Gen4:SortKItem{}),kseq{}(Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK0:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblisKResult{}(kseq{}(Var'Unds'Gen4:SortKItem{},dotk{}()))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarK0:SortExpr{},VarHOLE:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("6a788904e3d255281cb2804f4927d2fb2906a898d1d627801b4f28555357b860"), cool{}(), cool-like{}(), label{}("EXPRESSIONS-SYNTAX._&&__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-cool"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(33,23,33,68)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(``inj{Expr,KItem}(HOLE) #as _Gen4``~>`#freezer_*__EXPRESSIONS-SYNTAX_Expr_Expr_Expr0_`(inj{Expr,KItem}(K1))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(`_*__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(HOLE,K1))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),isKResult(_Gen4)) ensures #token("true","Bool") [UNIQUE_ID(a40a086e5187c37776a5dbe76a1db62602f2d724e241a297fd8e04b70aef15f2), cool, cool-like, group(mul), label(EXPRESSIONS-SYNTAX._*__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-cool), org.kframework.attributes.Location(Location(19,23,19,60)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(\and{SortKItem{}}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),Var'Unds'Gen4:SortKItem{}),kseq{}(Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK1:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblisKResult{}(kseq{}(Var'Unds'Gen4:SortKItem{},dotk{}()))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarHOLE:SortExpr{},VarK1:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("a40a086e5187c37776a5dbe76a1db62602f2d724e241a297fd8e04b70aef15f2"), cool{}(), cool-like{}(), label{}("EXPRESSIONS-SYNTAX._*__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-cool"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(19,23,19,60)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(``inj{Expr,KItem}(HOLE) #as _Gen4``~>`#freezer_*__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1_`(inj{Expr,KItem}(K0))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(`_*__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(K0,HOLE))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),isKResult(_Gen4)) ensures #token("true","Bool") [UNIQUE_ID(9077957941e7bc9d4839ea3238fec47750d842eb00efbffcd7414bb0eb0aef39), cool, cool-like, group(mul), label(EXPRESSIONS-SYNTAX._*__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-cool), org.kframework.attributes.Location(Location(19,23,19,60)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(\and{SortKItem{}}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),Var'Unds'Gen4:SortKItem{}),kseq{}(Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK0:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblisKResult{}(kseq{}(Var'Unds'Gen4:SortKItem{},dotk{}()))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarK0:SortExpr{},VarHOLE:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("9077957941e7bc9d4839ea3238fec47750d842eb00efbffcd7414bb0eb0aef39"), cool{}(), cool-like{}(), label{}("EXPRESSIONS-SYNTAX._*__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-cool"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(19,23,19,60)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(``inj{Expr,KItem}(HOLE) #as _Gen4``~>`#freezer_+__EXPRESSIONS-SYNTAX_Expr_Expr_Expr0_`(inj{Expr,KItem}(K1))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(`_+__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(HOLE,K1))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),isKResult(_Gen4)) ensures #token("true","Bool") [UNIQUE_ID(49fffa1e097e00e7918a5d95c3c39f03410b805cc1011a297bd0c70e639c4b1d), cool, cool-like, group(add), label(EXPRESSIONS-SYNTAX._+__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-cool), org.kframework.attributes.Location(Location(22,23,22,60)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(\and{SortKItem{}}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),Var'Unds'Gen4:SortKItem{}),kseq{}(Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK1:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblisKResult{}(kseq{}(Var'Unds'Gen4:SortKItem{},dotk{}()))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarHOLE:SortExpr{},VarK1:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("49fffa1e097e00e7918a5d95c3c39f03410b805cc1011a297bd0c70e639c4b1d"), cool{}(), cool-like{}(), label{}("EXPRESSIONS-SYNTAX._+__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-cool"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(22,23,22,60)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(``inj{Expr,KItem}(HOLE) #as _Gen4``~>`#freezer_+__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1_`(inj{Expr,KItem}(K0))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(`_+__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(K0,HOLE))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),isKResult(_Gen4)) ensures #token("true","Bool") [UNIQUE_ID(f2a3211c1cfd42eb5c41fd6f6d59181fcf0d3d4749077a6357c131284b99ec31), cool, cool-like, group(add), label(EXPRESSIONS-SYNTAX._+__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-cool), org.kframework.attributes.Location(Location(22,23,22,60)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(\and{SortKItem{}}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),Var'Unds'Gen4:SortKItem{}),kseq{}(Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK0:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblisKResult{}(kseq{}(Var'Unds'Gen4:SortKItem{},dotk{}()))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarK0:SortExpr{},VarHOLE:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("f2a3211c1cfd42eb5c41fd6f6d59181fcf0d3d4749077a6357c131284b99ec31"), cool{}(), cool-like{}(), label{}("EXPRESSIONS-SYNTAX._+__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-cool"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(22,23,22,60)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(``inj{Expr,KItem}(HOLE) #as _Gen4``~>`#freezer_-__EXPRESSIONS-SYNTAX_Expr_Expr_Expr0_`(inj{Expr,KItem}(K1))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(`_-__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(HOLE,K1))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),isKResult(_Gen4)) ensures #token("true","Bool") [UNIQUE_ID(4cfd8bf1620769dda389a4d89a5356bc60f1013e153236d668b9fbf2b42bbcf4), cool, cool-like, group(add), label(EXPRESSIONS-SYNTAX._-__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-cool), org.kframework.attributes.Location(Location(23,23,23,57)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), strict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(\and{SortKItem{}}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),Var'Unds'Gen4:SortKItem{}),kseq{}(Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK1:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblisKResult{}(kseq{}(Var'Unds'Gen4:SortKItem{},dotk{}()))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarHOLE:SortExpr{},VarK1:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("4cfd8bf1620769dda389a4d89a5356bc60f1013e153236d668b9fbf2b42bbcf4"), cool{}(), cool-like{}(), label{}("EXPRESSIONS-SYNTAX._-__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-cool"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(23,23,23,57)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(``inj{Expr,KItem}(HOLE) #as _Gen4``~>`#freezer_-__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1_`(inj{Expr,KItem}(K0))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(`_-__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(K0,HOLE))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),isKResult(_Gen4)) ensures #token("true","Bool") [UNIQUE_ID(3f882ec8e7868b84cb14bd791314118af41d92827feab25666d05caba612fab7), cool, cool-like, group(add), label(EXPRESSIONS-SYNTAX._-__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-cool), org.kframework.attributes.Location(Location(23,23,23,57)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), strict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(\and{SortKItem{}}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),Var'Unds'Gen4:SortKItem{}),kseq{}(Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK0:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblisKResult{}(kseq{}(Var'Unds'Gen4:SortKItem{},dotk{}()))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarK0:SortExpr{},VarHOLE:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("3f882ec8e7868b84cb14bd791314118af41d92827feab25666d05caba612fab7"), cool{}(), cool-like{}(), label{}("EXPRESSIONS-SYNTAX._-__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-cool"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(23,23,23,57)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(``inj{Expr,KItem}(HOLE) #as _Gen4``~>`#freezer_/__EXPRESSIONS-SYNTAX_Expr_Expr_Expr0_`(inj{Expr,KItem}(K1))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(`_/__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(HOLE,K1))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),isKResult(_Gen4)) ensures #token("true","Bool") [UNIQUE_ID(271caa470c063dbcd3f93d2a63ec39d374bf6594ad3a08f2b263c8fdb000e3f5), cool, cool-like, group(mul), label(EXPRESSIONS-SYNTAX._/__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-cool), org.kframework.attributes.Location(Location(20,23,20,60)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(\and{SortKItem{}}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),Var'Unds'Gen4:SortKItem{}),kseq{}(Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK1:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblisKResult{}(kseq{}(Var'Unds'Gen4:SortKItem{},dotk{}()))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarHOLE:SortExpr{},VarK1:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("271caa470c063dbcd3f93d2a63ec39d374bf6594ad3a08f2b263c8fdb000e3f5"), cool{}(), cool-like{}(), label{}("EXPRESSIONS-SYNTAX._/__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-cool"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(20,23,20,60)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(``inj{Expr,KItem}(HOLE) #as _Gen4``~>`#freezer_/__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1_`(inj{Expr,KItem}(K0))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(`_/__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(K0,HOLE))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),isKResult(_Gen4)) ensures #token("true","Bool") [UNIQUE_ID(3dccad0353894e206e5667e5de8c0807c383fce435a86773a0822216090b8eb1), cool, cool-like, group(mul), label(EXPRESSIONS-SYNTAX._/__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-cool), org.kframework.attributes.Location(Location(20,23,20,60)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(\and{SortKItem{}}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),Var'Unds'Gen4:SortKItem{}),kseq{}(Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK0:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblisKResult{}(kseq{}(Var'Unds'Gen4:SortKItem{},dotk{}()))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarK0:SortExpr{},VarHOLE:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("3dccad0353894e206e5667e5de8c0807c383fce435a86773a0822216090b8eb1"), cool{}(), cool-like{}(), label{}("EXPRESSIONS-SYNTAX._/__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-cool"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(20,23,20,60)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(``inj{Expr,KItem}(HOLE) #as _Gen4``~>`#freezer_<=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr0_`(inj{Expr,KItem}(K1))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(`_<=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(HOLE,K1))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),isKResult(_Gen4)) ensures #token("true","Bool") [UNIQUE_ID(45286489d58bcd9b23df3023d9efddcdde80fdfe2603d7a5b07669acd2a1d540), cool, cool-like, group(comp), label(EXPRESSIONS-SYNTAX._<=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-cool), non-assoc, org.kframework.attributes.Location(Location(29,23,29,73)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(\and{SortKItem{}}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),Var'Unds'Gen4:SortKItem{}),kseq{}(Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK1:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblisKResult{}(kseq{}(Var'Unds'Gen4:SortKItem{},dotk{}()))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarHOLE:SortExpr{},VarK1:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("45286489d58bcd9b23df3023d9efddcdde80fdfe2603d7a5b07669acd2a1d540"), cool{}(), cool-like{}(), label{}("EXPRESSIONS-SYNTAX._<=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-cool"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(29,23,29,73)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(``inj{Expr,KItem}(HOLE) #as _Gen4``~>`#freezer_<=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1_`(inj{Expr,KItem}(K0))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(`_<=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(K0,HOLE))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),isKResult(_Gen4)) ensures #token("true","Bool") [UNIQUE_ID(725814ee903fd62a732d60a582fe9e33a8717a95331d6dc800ce0ccd65852a07), cool, cool-like, group(comp), label(EXPRESSIONS-SYNTAX._<=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-cool), non-assoc, org.kframework.attributes.Location(Location(29,23,29,73)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(\and{SortKItem{}}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),Var'Unds'Gen4:SortKItem{}),kseq{}(Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK0:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblisKResult{}(kseq{}(Var'Unds'Gen4:SortKItem{},dotk{}()))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarK0:SortExpr{},VarHOLE:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("725814ee903fd62a732d60a582fe9e33a8717a95331d6dc800ce0ccd65852a07"), cool{}(), cool-like{}(), label{}("EXPRESSIONS-SYNTAX._<=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-cool"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(29,23,29,73)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(``inj{Expr,KItem}(HOLE) #as _Gen4``~>`#freezer_<__EXPRESSIONS-SYNTAX_Expr_Expr_Expr0_`(inj{Expr,KItem}(K1))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(`_<__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(HOLE,K1))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),isKResult(_Gen4)) ensures #token("true","Bool") [UNIQUE_ID(a07f99c72e78e062b87269d927655e3cd0e6b2b3bbd953db6434cefdab2be8ca), cool, cool-like, group(comp), label(EXPRESSIONS-SYNTAX._<__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-cool), non-assoc, org.kframework.attributes.Location(Location(30,23,30,70)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), strict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(\and{SortKItem{}}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),Var'Unds'Gen4:SortKItem{}),kseq{}(Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK1:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblisKResult{}(kseq{}(Var'Unds'Gen4:SortKItem{},dotk{}()))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarHOLE:SortExpr{},VarK1:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("a07f99c72e78e062b87269d927655e3cd0e6b2b3bbd953db6434cefdab2be8ca"), cool{}(), cool-like{}(), label{}("EXPRESSIONS-SYNTAX._<__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-cool"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(30,23,30,70)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(``inj{Expr,KItem}(HOLE) #as _Gen4``~>`#freezer_<__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1_`(inj{Expr,KItem}(K0))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(`_<__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(K0,HOLE))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),isKResult(_Gen4)) ensures #token("true","Bool") [UNIQUE_ID(604cce1371217ba25604936505a4137b2b7bffc38fcd47c4cbd0af9bdf3b49a8), cool, cool-like, group(comp), label(EXPRESSIONS-SYNTAX._<__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-cool), non-assoc, org.kframework.attributes.Location(Location(30,23,30,70)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), strict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(\and{SortKItem{}}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),Var'Unds'Gen4:SortKItem{}),kseq{}(Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK0:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblisKResult{}(kseq{}(Var'Unds'Gen4:SortKItem{},dotk{}()))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarK0:SortExpr{},VarHOLE:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("604cce1371217ba25604936505a4137b2b7bffc38fcd47c4cbd0af9bdf3b49a8"), cool{}(), cool-like{}(), label{}("EXPRESSIONS-SYNTAX._<__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-cool"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(30,23,30,70)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(``inj{Expr,KItem}(HOLE) #as _Gen4``~>`#freezer_==__EXPRESSIONS-SYNTAX_Expr_Expr_Expr0_`(inj{Expr,KItem}(K1))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(`_==__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(HOLE,K1))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),isKResult(_Gen4)) ensures #token("true","Bool") [UNIQUE_ID(6777fe21046802ec8ed8fd3cd1f6ca5084e77c78c705205b4678787c4d3d8bdd), cool, cool-like, group(comp), label(EXPRESSIONS-SYNTAX._==__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-cool), non-assoc, org.kframework.attributes.Location(Location(25,23,25,73)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(\and{SortKItem{}}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),Var'Unds'Gen4:SortKItem{}),kseq{}(Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK1:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblisKResult{}(kseq{}(Var'Unds'Gen4:SortKItem{},dotk{}()))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarHOLE:SortExpr{},VarK1:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("6777fe21046802ec8ed8fd3cd1f6ca5084e77c78c705205b4678787c4d3d8bdd"), cool{}(), cool-like{}(), label{}("EXPRESSIONS-SYNTAX._==__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-cool"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(25,23,25,73)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(``inj{Expr,KItem}(HOLE) #as _Gen4``~>`#freezer_==__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1_`(inj{Expr,KItem}(K0))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(`_==__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(K0,HOLE))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),isKResult(_Gen4)) ensures #token("true","Bool") [UNIQUE_ID(ff599703bddad40f7212b8eeaa3cf7186dccbaaa0ef0f254be3eeb2867371ec7), cool, cool-like, group(comp), label(EXPRESSIONS-SYNTAX._==__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-cool), non-assoc, org.kframework.attributes.Location(Location(25,23,25,73)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(\and{SortKItem{}}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),Var'Unds'Gen4:SortKItem{}),kseq{}(Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK0:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblisKResult{}(kseq{}(Var'Unds'Gen4:SortKItem{},dotk{}()))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarK0:SortExpr{},VarHOLE:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("ff599703bddad40f7212b8eeaa3cf7186dccbaaa0ef0f254be3eeb2867371ec7"), cool{}(), cool-like{}(), label{}("EXPRESSIONS-SYNTAX._==__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-cool"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(25,23,25,73)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(``inj{Expr,KItem}(HOLE) #as _Gen4``~>`#freezer_=_;_STATEMENTS-SYNTAX_Stmt_Id_Expr1_`(inj{Id,KItem}(K0))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Stmt,KItem}(`_=_;_STATEMENTS-SYNTAX_Stmt_Id_Expr`(K0,HOLE))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),isKResult(_Gen4)) ensures #token("true","Bool") [UNIQUE_ID(5e532c19b7fb7f2972ed120b7d75e53639723e88d97ea11da3ce5e4920e5a548), cool, cool-like, label(STATEMENTS-SYNTAX._=_;_STATEMENTS-SYNTAX_Stmt_Id_Expr2-cool), org.kframework.attributes.Location(Location(8,19,8,65)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/statements.k)), strict(2)] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(\and{SortKItem{}}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),Var'Unds'Gen4:SortKItem{}),kseq{}(Lbl'Hash'freezer'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr1'Unds'{}(kseq{}(inj{SortId{}, SortKItem{}}(VarK0:SortId{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblisKResult{}(kseq{}(Var'Unds'Gen4:SortKItem{},dotk{}()))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortStmt{}, SortKItem{}}(Lbl'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr{}(VarK0:SortId{},VarHOLE:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("5e532c19b7fb7f2972ed120b7d75e53639723e88d97ea11da3ce5e4920e5a548"), cool{}(), cool-like{}(), label{}("STATEMENTS-SYNTAX._=_;_STATEMENTS-SYNTAX_Stmt_Id_Expr2-cool"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(8,19,8,65)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/statements.k)")] + +// rule ``(``(``inj{Expr,KItem}(HOLE) #as _Gen4``~>`#freezer_>=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr0_`(inj{Expr,KItem}(K1))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(`_>=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(HOLE,K1))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),isKResult(_Gen4)) ensures #token("true","Bool") [UNIQUE_ID(02d872b181a39280dcb59dc24fac756f7b98233c028617e420e137743f5ab585), cool, cool-like, group(comp), label(EXPRESSIONS-SYNTAX._>=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-cool), non-assoc, org.kframework.attributes.Location(Location(27,23,27,73)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(\and{SortKItem{}}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),Var'Unds'Gen4:SortKItem{}),kseq{}(Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK1:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblisKResult{}(kseq{}(Var'Unds'Gen4:SortKItem{},dotk{}()))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarHOLE:SortExpr{},VarK1:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("02d872b181a39280dcb59dc24fac756f7b98233c028617e420e137743f5ab585"), cool{}(), cool-like{}(), label{}("EXPRESSIONS-SYNTAX._>=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-cool"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(27,23,27,73)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(``inj{Expr,KItem}(HOLE) #as _Gen4``~>`#freezer_>=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1_`(inj{Expr,KItem}(K0))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(`_>=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(K0,HOLE))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),isKResult(_Gen4)) ensures #token("true","Bool") [UNIQUE_ID(1b19044d0422197f0c8f684562cea31b2c7a794d94839c8b5832128e53d48652), cool, cool-like, group(comp), label(EXPRESSIONS-SYNTAX._>=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-cool), non-assoc, org.kframework.attributes.Location(Location(27,23,27,73)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(\and{SortKItem{}}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),Var'Unds'Gen4:SortKItem{}),kseq{}(Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK0:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblisKResult{}(kseq{}(Var'Unds'Gen4:SortKItem{},dotk{}()))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarK0:SortExpr{},VarHOLE:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("1b19044d0422197f0c8f684562cea31b2c7a794d94839c8b5832128e53d48652"), cool{}(), cool-like{}(), label{}("EXPRESSIONS-SYNTAX._>=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-cool"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(27,23,27,73)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(``inj{Expr,KItem}(HOLE) #as _Gen4``~>`#freezer_>__EXPRESSIONS-SYNTAX_Expr_Expr_Expr0_`(inj{Expr,KItem}(K1))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(`_>__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(HOLE,K1))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),isKResult(_Gen4)) ensures #token("true","Bool") [UNIQUE_ID(e6db30729109eb3283885df6d9dda61280ebccef1d87af8d153d504da4fe766f), cool, cool-like, group(comp), label(EXPRESSIONS-SYNTAX._>__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-cool), non-assoc, org.kframework.attributes.Location(Location(28,23,28,73)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(\and{SortKItem{}}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),Var'Unds'Gen4:SortKItem{}),kseq{}(Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK1:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblisKResult{}(kseq{}(Var'Unds'Gen4:SortKItem{},dotk{}()))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarHOLE:SortExpr{},VarK1:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("e6db30729109eb3283885df6d9dda61280ebccef1d87af8d153d504da4fe766f"), cool{}(), cool-like{}(), label{}("EXPRESSIONS-SYNTAX._>__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-cool"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(28,23,28,73)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(``inj{Expr,KItem}(HOLE) #as _Gen4``~>`#freezer_>__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1_`(inj{Expr,KItem}(K0))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(`_>__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(K0,HOLE))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),isKResult(_Gen4)) ensures #token("true","Bool") [UNIQUE_ID(08d9fa253071cb8a1be39ce111702fcad797bd6ff1ef6a0efd4e3644a392c8c9), cool, cool-like, group(comp), label(EXPRESSIONS-SYNTAX._>__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-cool), non-assoc, org.kframework.attributes.Location(Location(28,23,28,73)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(\and{SortKItem{}}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),Var'Unds'Gen4:SortKItem{}),kseq{}(Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK0:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblisKResult{}(kseq{}(Var'Unds'Gen4:SortKItem{},dotk{}()))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarK0:SortExpr{},VarHOLE:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("08d9fa253071cb8a1be39ce111702fcad797bd6ff1ef6a0efd4e3644a392c8c9"), cool{}(), cool-like{}(), label{}("EXPRESSIONS-SYNTAX._>__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-cool"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(28,23,28,73)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(``inj{Expr,KItem}(HOLE) #as _Gen4``~>`#freezer_||__EXPRESSIONS-SYNTAX_Expr_Expr_Expr0_`(inj{Expr,KItem}(K1))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(`_||__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(HOLE,K1))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),isKResult(_Gen4)) ensures #token("true","Bool") [UNIQUE_ID(013c187c734f9124efa123de84103bf7921ef37163081174c4b7e27c0c47a638), cool, cool-like, group(bool), label(EXPRESSIONS-SYNTAX._||__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-cool), left, org.kframework.attributes.Location(Location(34,23,34,68)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(\and{SortKItem{}}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),Var'Unds'Gen4:SortKItem{}),kseq{}(Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK1:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblisKResult{}(kseq{}(Var'Unds'Gen4:SortKItem{},dotk{}()))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarHOLE:SortExpr{},VarK1:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("013c187c734f9124efa123de84103bf7921ef37163081174c4b7e27c0c47a638"), cool{}(), cool-like{}(), label{}("EXPRESSIONS-SYNTAX._||__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-cool"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(34,23,34,68)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(``inj{Expr,KItem}(HOLE) #as _Gen4``~>`#freezer_||__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1_`(inj{Expr,KItem}(K0))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(`_||__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(K0,HOLE))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),isKResult(_Gen4)) ensures #token("true","Bool") [UNIQUE_ID(6503c7662722d24846e571b2ab1d78de57e4a154a2286332a3090e19f8a3ff1c), cool, cool-like, group(bool), label(EXPRESSIONS-SYNTAX._||__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-cool), left, org.kframework.attributes.Location(Location(34,23,34,68)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(\and{SortKItem{}}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),Var'Unds'Gen4:SortKItem{}),kseq{}(Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK0:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblisKResult{}(kseq{}(Var'Unds'Gen4:SortKItem{},dotk{}()))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarK0:SortExpr{},VarHOLE:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("6503c7662722d24846e571b2ab1d78de57e4a154a2286332a3090e19f8a3ff1c"), cool{}(), cool-like{}(), label{}("EXPRESSIONS-SYNTAX._||__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-cool"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(34,23,34,68)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(``inj{Expr,KItem}(HOLE) #as _Gen4``~>`#freezerif(_)_else__STATEMENTS-SYNTAX_Stmt_Expr_Stmt_Stmt0_`(inj{Stmt,KItem}(K1),inj{Stmt,KItem}(K2))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Stmt,KItem}(`if(_)_else__STATEMENTS-SYNTAX_Stmt_Expr_Stmt_Stmt`(HOLE,K1,K2))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),isKResult(_Gen4)) ensures #token("true","Bool") [UNIQUE_ID(029649977a189d0740b894b184f10ed8b77b043ff935d356dca9fa87ffbffc58), avoid, cool, cool-like, label(STATEMENTS-SYNTAX.if(_)_else__STATEMENTS-SYNTAX_Stmt_Expr_Stmt_Stmt1-cool), org.kframework.attributes.Location(Location(9,19,9,72)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/statements.k)), strict(1)] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(\and{SortKItem{}}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),Var'Unds'Gen4:SortKItem{}),kseq{}(Lbl'Hash'freezerif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt0'Unds'{}(kseq{}(inj{SortStmt{}, SortKItem{}}(VarK1:SortStmt{}),dotk{}()),kseq{}(inj{SortStmt{}, SortKItem{}}(VarK2:SortStmt{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblisKResult{}(kseq{}(Var'Unds'Gen4:SortKItem{},dotk{}()))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortStmt{}, SortKItem{}}(Lblif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt{}(VarHOLE:SortExpr{},VarK1:SortStmt{},VarK2:SortStmt{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("029649977a189d0740b894b184f10ed8b77b043ff935d356dca9fa87ffbffc58"), cool{}(), cool-like{}(), label{}("STATEMENTS-SYNTAX.if(_)_else__STATEMENTS-SYNTAX_Stmt_Expr_Stmt_Stmt1-cool"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(9,19,9,72)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/statements.k)")] + +// rule ``(``(``inj{Expr,KItem}(HOLE) #as _Gen4``~>`#freezerlet_=_in__VARIABLES-SYNTAX_Expr_Id_Expr_Expr1_`(inj{Id,KItem}(K0),inj{Expr,KItem}(K2))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(`let_=_in__VARIABLES-SYNTAX_Expr_Id_Expr_Expr`(K0,HOLE,K2))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),isKResult(_Gen4)) ensures #token("true","Bool") [UNIQUE_ID(a2ab4e7dec027ffce7ce59d992838c52f8d2a4a44d880dc455760c6e266fb35e), avoid, cool, cool-like, label(VARIABLES-SYNTAX.let_=_in__VARIABLES-SYNTAX_Expr_Id_Expr_Expr2-cool), org.kframework.attributes.Location(Location(8,19,8,65)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/variables.k)), strict(2)] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(\and{SortKItem{}}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),Var'Unds'Gen4:SortKItem{}),kseq{}(Lbl'Hash'freezerlet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr1'Unds'{}(kseq{}(inj{SortId{}, SortKItem{}}(VarK0:SortId{}),dotk{}()),kseq{}(inj{SortExpr{}, SortKItem{}}(VarK2:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblisKResult{}(kseq{}(Var'Unds'Gen4:SortKItem{},dotk{}()))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbllet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr{}(VarK0:SortId{},VarHOLE:SortExpr{},VarK2:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("a2ab4e7dec027ffce7ce59d992838c52f8d2a4a44d880dc455760c6e266fb35e"), cool{}(), cool-like{}(), label{}("VARIABLES-SYNTAX.let_=_in__VARIABLES-SYNTAX_Expr_Id_Expr_Expr2-cool"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(8,19,8,65)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/variables.k)")] + +// rule ``(``(inj{Stmt,KItem}(`while(_)__STATEMENTS-SYNTAX_Stmt_Expr_Stmt`(C,E) #as _Gen5)~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Stmt,KItem}(`if(_)__STATEMENTS-SYNTAX_Stmt_Expr_Stmt`(C,`{_}_STATEMENTS-SYNTAX_Stmt_Stmt`(`___STATEMENTS-SYNTAX_Stmt_Stmt_Stmt`(E,_Gen5))))~>_DotVar1),_Gen0,_Gen1) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(3b3bdbfd6ad19f3452015c16b62109440b520c9e9e3f3eb58383bfc175f68b2d), label(STATEMENTS-RULES.while), org.kframework.attributes.Location(Location(28,5,32,9)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/statements.k)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortStmt{}, SortKItem{}}(\and{SortStmt{}}(Lblwhile'LParUndsRParUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt{}(VarC:SortExpr{},VarE:SortStmt{}),Var'Unds'Gen5:SortStmt{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \top{SortGeneratedTopCell{}}()), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortStmt{}, SortKItem{}}(Lblif'LParUndsRParUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt{}(VarC:SortExpr{},Lbl'LBraUndsRBraUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt{}(Lbl'UndsUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt'Unds'Stmt{}(VarE:SortStmt{},Var'Unds'Gen5:SortStmt{})))),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("3b3bdbfd6ad19f3452015c16b62109440b520c9e9e3f3eb58383bfc175f68b2d"), label{}("STATEMENTS-RULES.while"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(28,5,32,9)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/statements.k)")] + +// rule ``(``(inj{Id,KItem}(X)~>_DotVar1),``(`_Map_`(`_|->_`(inj{Id,KItem}(X),V),_DotVar2)) #as _Gen3,_DotVar0)=>``(``(V~>_DotVar1),_Gen3,_DotVar0) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(78012d436b58ec231f534a83b65353d212ab0de17f5cfcfa5fe76696ad9dd7e0), cool-like, org.kframework.attributes.Location(Location(54,5,55,28)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/statements.k)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortId{}, SortKItem{}}(VarX:SortId{}),Var'Unds'DotVar1:SortK{})),\and{SortEnvCell{}}(Lbl'-LT-'env'-GT-'{}(Lbl'Unds'Map'Unds'{}(Lbl'UndsPipe'-'-GT-Unds'{}(inj{SortId{}, SortKItem{}}(VarX:SortId{}),VarV:SortKItem{}),Var'Unds'DotVar2:SortMap{})),Var'Unds'Gen3:SortEnvCell{}),Var'Unds'DotVar0:SortGeneratedCounterCell{}), + \top{SortGeneratedTopCell{}}()), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(VarV:SortKItem{},Var'Unds'DotVar1:SortK{})),Var'Unds'Gen3:SortEnvCell{},Var'Unds'DotVar0:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("78012d436b58ec231f534a83b65353d212ab0de17f5cfcfa5fe76696ad9dd7e0"), cool-like{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(54,5,55,28)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/statements.k)")] + +// rule ``(``(inj{Expr,KItem}(`!__EXPRESSIONS-SYNTAX_Expr_Expr`(HOLE))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(HOLE)~>`#freezer!__EXPRESSIONS-SYNTAX_Expr_Expr0_`(.KList)~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),`notBool_`(isKResult(inj{Expr,KItem}(HOLE)))) ensures #token("true","Bool") [UNIQUE_ID(95ae0624ed05bd9fda100afe3522e14997852a9753240caa90be72f16a32414f), group(unary), heat, label(EXPRESSIONS-SYNTAX.!__EXPRESSIONS-SYNTAX_Expr_Expr1-heat), non-assoc, org.kframework.attributes.Location(Location(32,23,32,71)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), strict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(VarHOLE:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblnotBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),dotk{}())))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),kseq{}(Lbl'Hash'freezer'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("95ae0624ed05bd9fda100afe3522e14997852a9753240caa90be72f16a32414f"), label{}("EXPRESSIONS-SYNTAX.!__EXPRESSIONS-SYNTAX_Expr_Expr1-heat"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(32,23,32,71)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`!__EXPRESSIONS-SYNTAX_Expr_Expr`(inj{Bool,Expr}(B)))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Bool,KItem}(`notBool_`(B))~>_DotVar1),_Gen0,_Gen1) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(1cc2a7c57da9531b8569014acf2fe5c96323e33d18f165682c67ae9308820d11), org.kframework.attributes.Location(Location(63,8,63,24)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(inj{SortBool{}, SortExpr{}}(VarB:SortBool{}))),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \top{SortGeneratedTopCell{}}()), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortBool{}, SortKItem{}}(LblnotBool'Unds'{}(VarB:SortBool{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("1cc2a7c57da9531b8569014acf2fe5c96323e33d18f165682c67ae9308820d11"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(63,8,63,24)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`-__EXPRESSIONS-SYNTAX_Expr_Expr`(HOLE))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(HOLE)~>`#freezer-__EXPRESSIONS-SYNTAX_Expr_Expr0_`(.KList)~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),`notBool_`(isKResult(inj{Expr,KItem}(HOLE)))) ensures #token("true","Bool") [UNIQUE_ID(08eccd312e42517f9e4c66e5a71e5f007a0eceee66ac24b391c61c9e3286e569), group(unary), heat, label(EXPRESSIONS-SYNTAX.-__EXPRESSIONS-SYNTAX_Expr_Expr1-heat), non-assoc, org.kframework.attributes.Location(Location(17,23,17,70)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), strict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(VarHOLE:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblnotBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),dotk{}())))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),kseq{}(Lbl'Hash'freezer-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr0'Unds'{}(),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("08eccd312e42517f9e4c66e5a71e5f007a0eceee66ac24b391c61c9e3286e569"), label{}("EXPRESSIONS-SYNTAX.-__EXPRESSIONS-SYNTAX_Expr_Expr1-heat"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(17,23,17,70)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`-__EXPRESSIONS-SYNTAX_Expr_Expr`(inj{Int,Expr}(X)))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Int,KItem}(`_-Int_`(#token("0","Int"),X))~>_DotVar1),_Gen0,_Gen1) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(37adb0183fa3001761c0428b1c60f1cf3b011a88e92e9a3fe8b6787b33feb6d5), org.kframework.attributes.Location(Location(45,10,45,25)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr{}(inj{SortInt{}, SortExpr{}}(VarX:SortInt{}))),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \top{SortGeneratedTopCell{}}()), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortInt{}, SortKItem{}}(Lbl'Unds'-Int'Unds'{}(\dv{SortInt{}}("0"),VarX:SortInt{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("37adb0183fa3001761c0428b1c60f1cf3b011a88e92e9a3fe8b6787b33feb6d5"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(45,10,45,25)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`_!=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(HOLE,K1))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(HOLE)~>`#freezer_!=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr0_`(inj{Expr,KItem}(K1))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),`notBool_`(isKResult(inj{Expr,KItem}(HOLE)))) ensures #token("true","Bool") [UNIQUE_ID(28ebff085a892e95890ac899022e743230053d71ba8460d788421e047ed749d1), group(comp), heat, label(EXPRESSIONS-SYNTAX._!=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-heat), non-assoc, org.kframework.attributes.Location(Location(26,23,26,73)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarHOLE:SortExpr{},VarK1:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblnotBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),dotk{}())))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),kseq{}(Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK1:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("28ebff085a892e95890ac899022e743230053d71ba8460d788421e047ed749d1"), label{}("EXPRESSIONS-SYNTAX._!=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-heat"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(26,23,26,73)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`_!=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(K0,HOLE))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(HOLE)~>`#freezer_!=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1_`(inj{Expr,KItem}(K0))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(`_andBool_`(isKResult(inj{Expr,KItem}(K0)),#token("true","Bool")),`notBool_`(isKResult(inj{Expr,KItem}(HOLE)))) ensures #token("true","Bool") [UNIQUE_ID(7e1232750a701950ad0fa64a308771538a27ab1fb294a5c5925fd270621610b3), group(comp), heat, label(EXPRESSIONS-SYNTAX._!=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-heat), non-assoc, org.kframework.attributes.Location(Location(26,23,26,73)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarK0:SortExpr{},VarHOLE:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(Lbl'Unds'andBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK0:SortExpr{}),dotk{}())),\dv{SortBool{}}("true")),LblnotBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),dotk{}())))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),kseq{}(Lbl'Hash'freezer'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK0:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("7e1232750a701950ad0fa64a308771538a27ab1fb294a5c5925fd270621610b3"), label{}("EXPRESSIONS-SYNTAX._!=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-heat"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(26,23,26,73)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`_!=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(inj{Bool,Expr}(B1),inj{Bool,Expr}(B2)))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Bool,KItem}(`_=/=Bool_`(B1,B2))~>_DotVar1),_Gen0,_Gen1) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(72e1291c0cc05d3bdcd530e2bd05993c54f89e79a81bd00e3453f1ca67124830), org.kframework.attributes.Location(Location(55,8,55,33)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(inj{SortBool{}, SortExpr{}}(VarB1:SortBool{}),inj{SortBool{}, SortExpr{}}(VarB2:SortBool{}))),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \top{SortGeneratedTopCell{}}()), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortBool{}, SortKItem{}}(Lbl'UndsEqlsSlshEqls'Bool'Unds'{}(VarB1:SortBool{},VarB2:SortBool{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("72e1291c0cc05d3bdcd530e2bd05993c54f89e79a81bd00e3453f1ca67124830"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(55,8,55,33)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`_!=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(inj{Int,Expr}(I1),inj{Int,Expr}(I2)))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Bool,KItem}(`_=/=Int_`(I1,I2))~>_DotVar1),_Gen0,_Gen1) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(1c7c7d2395379ded5d8891ac2b2f76a04b23029a96362e852decaa6ed0714971), org.kframework.attributes.Location(Location(56,8,56,33)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'UndsBangEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(inj{SortInt{}, SortExpr{}}(VarI1:SortInt{}),inj{SortInt{}, SortExpr{}}(VarI2:SortInt{}))),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \top{SortGeneratedTopCell{}}()), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortBool{}, SortKItem{}}(Lbl'UndsEqlsSlshEqls'Int'Unds'{}(VarI1:SortInt{},VarI2:SortInt{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("1c7c7d2395379ded5d8891ac2b2f76a04b23029a96362e852decaa6ed0714971"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(56,8,56,33)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`_&&__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(HOLE,K1))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(HOLE)~>`#freezer_&&__EXPRESSIONS-SYNTAX_Expr_Expr_Expr0_`(inj{Expr,KItem}(K1))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),`notBool_`(isKResult(inj{Expr,KItem}(HOLE)))) ensures #token("true","Bool") [UNIQUE_ID(ade3e10d95f33b8d4bb4a31b1d70483af5835a138af0ddbf45856f599da34113), group(bool), heat, label(EXPRESSIONS-SYNTAX._&&__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-heat), left, org.kframework.attributes.Location(Location(33,23,33,68)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarHOLE:SortExpr{},VarK1:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblnotBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),dotk{}())))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),kseq{}(Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK1:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("ade3e10d95f33b8d4bb4a31b1d70483af5835a138af0ddbf45856f599da34113"), label{}("EXPRESSIONS-SYNTAX._&&__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-heat"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(33,23,33,68)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`_&&__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(K0,HOLE))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(HOLE)~>`#freezer_&&__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1_`(inj{Expr,KItem}(K0))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(`_andBool_`(isKResult(inj{Expr,KItem}(K0)),#token("true","Bool")),`notBool_`(isKResult(inj{Expr,KItem}(HOLE)))) ensures #token("true","Bool") [UNIQUE_ID(89a1f6a2484dcc9576a343d592003508184de549e80122fc769766d7805f3f03), group(bool), heat, label(EXPRESSIONS-SYNTAX._&&__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-heat), left, org.kframework.attributes.Location(Location(33,23,33,68)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarK0:SortExpr{},VarHOLE:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(Lbl'Unds'andBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK0:SortExpr{}),dotk{}())),\dv{SortBool{}}("true")),LblnotBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),dotk{}())))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),kseq{}(Lbl'Hash'freezer'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK0:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("89a1f6a2484dcc9576a343d592003508184de549e80122fc769766d7805f3f03"), label{}("EXPRESSIONS-SYNTAX._&&__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-heat"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(33,23,33,68)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`_&&__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(inj{Bool,Expr}(B1),inj{Bool,Expr}(B2)))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Bool,KItem}(`_andBool_`(B1,B2))~>_DotVar1),_Gen0,_Gen1) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(e40e78b78059c2fcf6e58ca2a001b71a567ebc8484d8fcb824a6dee45784f706), org.kframework.attributes.Location(Location(64,8,64,33)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'UndsAnd-And-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(inj{SortBool{}, SortExpr{}}(VarB1:SortBool{}),inj{SortBool{}, SortExpr{}}(VarB2:SortBool{}))),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \top{SortGeneratedTopCell{}}()), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortBool{}, SortKItem{}}(Lbl'Unds'andBool'Unds'{}(VarB1:SortBool{},VarB2:SortBool{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("e40e78b78059c2fcf6e58ca2a001b71a567ebc8484d8fcb824a6dee45784f706"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(64,8,64,33)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`_*__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(HOLE,K1))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(HOLE)~>`#freezer_*__EXPRESSIONS-SYNTAX_Expr_Expr_Expr0_`(inj{Expr,KItem}(K1))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),`notBool_`(isKResult(inj{Expr,KItem}(HOLE)))) ensures #token("true","Bool") [UNIQUE_ID(c312ad32d00180c8269dcaf62226b7d0c3124e56580d2b970f0a9c2afab27a16), group(mul), heat, label(EXPRESSIONS-SYNTAX._*__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-heat), org.kframework.attributes.Location(Location(19,23,19,60)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarHOLE:SortExpr{},VarK1:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblnotBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),dotk{}())))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),kseq{}(Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK1:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("c312ad32d00180c8269dcaf62226b7d0c3124e56580d2b970f0a9c2afab27a16"), label{}("EXPRESSIONS-SYNTAX._*__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-heat"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(19,23,19,60)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`_*__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(K0,HOLE))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(HOLE)~>`#freezer_*__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1_`(inj{Expr,KItem}(K0))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(`_andBool_`(isKResult(inj{Expr,KItem}(K0)),#token("true","Bool")),`notBool_`(isKResult(inj{Expr,KItem}(HOLE)))) ensures #token("true","Bool") [UNIQUE_ID(d650380447c8b7ad2720b4e81a6f81b3da041e14d907f416f148dd3e65a978f4), group(mul), heat, label(EXPRESSIONS-SYNTAX._*__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-heat), org.kframework.attributes.Location(Location(19,23,19,60)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarK0:SortExpr{},VarHOLE:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(Lbl'Unds'andBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK0:SortExpr{}),dotk{}())),\dv{SortBool{}}("true")),LblnotBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),dotk{}())))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),kseq{}(Lbl'Hash'freezer'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK0:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("d650380447c8b7ad2720b4e81a6f81b3da041e14d907f416f148dd3e65a978f4"), label{}("EXPRESSIONS-SYNTAX._*__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-heat"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(19,23,19,60)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`_*__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(inj{Int,Expr}(X),inj{Int,Expr}(Y)))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Int,KItem}(`_*Int_`(X,Y))~>_DotVar1),_Gen0,_Gen1) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(332da738fe5a7b8f253ef9ec81cc98310eb3fad44d9aa09868c87a8eb5eb6c84), org.kframework.attributes.Location(Location(49,8,49,25)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'UndsStarUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(inj{SortInt{}, SortExpr{}}(VarX:SortInt{}),inj{SortInt{}, SortExpr{}}(VarY:SortInt{}))),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \top{SortGeneratedTopCell{}}()), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortInt{}, SortKItem{}}(Lbl'UndsStar'Int'Unds'{}(VarX:SortInt{},VarY:SortInt{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("332da738fe5a7b8f253ef9ec81cc98310eb3fad44d9aa09868c87a8eb5eb6c84"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(49,8,49,25)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`_+__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(HOLE,K1))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(HOLE)~>`#freezer_+__EXPRESSIONS-SYNTAX_Expr_Expr_Expr0_`(inj{Expr,KItem}(K1))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),`notBool_`(isKResult(inj{Expr,KItem}(HOLE)))) ensures #token("true","Bool") [UNIQUE_ID(5e6155827524638ad4bda281fafdec514117515cc69b4b98aed35165ac962160), group(add), heat, label(EXPRESSIONS-SYNTAX._+__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-heat), org.kframework.attributes.Location(Location(22,23,22,60)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarHOLE:SortExpr{},VarK1:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblnotBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),dotk{}())))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),kseq{}(Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK1:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("5e6155827524638ad4bda281fafdec514117515cc69b4b98aed35165ac962160"), label{}("EXPRESSIONS-SYNTAX._+__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-heat"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(22,23,22,60)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`_+__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(K0,HOLE))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(HOLE)~>`#freezer_+__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1_`(inj{Expr,KItem}(K0))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(`_andBool_`(isKResult(inj{Expr,KItem}(K0)),#token("true","Bool")),`notBool_`(isKResult(inj{Expr,KItem}(HOLE)))) ensures #token("true","Bool") [UNIQUE_ID(337fabb9183cb919b033208bcc6da5206578fc75915fb986b5d41ac76061f5dd), group(add), heat, label(EXPRESSIONS-SYNTAX._+__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-heat), org.kframework.attributes.Location(Location(22,23,22,60)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarK0:SortExpr{},VarHOLE:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(Lbl'Unds'andBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK0:SortExpr{}),dotk{}())),\dv{SortBool{}}("true")),LblnotBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),dotk{}())))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),kseq{}(Lbl'Hash'freezer'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK0:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("337fabb9183cb919b033208bcc6da5206578fc75915fb986b5d41ac76061f5dd"), label{}("EXPRESSIONS-SYNTAX._+__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-heat"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(22,23,22,60)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`_+__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(inj{Int,Expr}(X),inj{Int,Expr}(Y)))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Int,KItem}(`_+Int_`(X,Y))~>_DotVar1),_Gen0,_Gen1) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(d24e12e04a61f9f4bb88403fe5e9e1283d5d0c362890531538bd7ba5ad01c7d4), org.kframework.attributes.Location(Location(47,8,47,25)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(inj{SortInt{}, SortExpr{}}(VarX:SortInt{}),inj{SortInt{}, SortExpr{}}(VarY:SortInt{}))),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \top{SortGeneratedTopCell{}}()), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortInt{}, SortKItem{}}(Lbl'UndsPlus'Int'Unds'{}(VarX:SortInt{},VarY:SortInt{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("d24e12e04a61f9f4bb88403fe5e9e1283d5d0c362890531538bd7ba5ad01c7d4"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(47,8,47,25)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`_-__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(HOLE,K1))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(HOLE)~>`#freezer_-__EXPRESSIONS-SYNTAX_Expr_Expr_Expr0_`(inj{Expr,KItem}(K1))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),`notBool_`(isKResult(inj{Expr,KItem}(HOLE)))) ensures #token("true","Bool") [UNIQUE_ID(f9f11a2006888a6113479c322878129d96f3e56d9fdd6fa623d48164c9cef293), group(add), heat, label(EXPRESSIONS-SYNTAX._-__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-heat), org.kframework.attributes.Location(Location(23,23,23,57)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), strict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarHOLE:SortExpr{},VarK1:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblnotBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),dotk{}())))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),kseq{}(Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK1:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("f9f11a2006888a6113479c322878129d96f3e56d9fdd6fa623d48164c9cef293"), label{}("EXPRESSIONS-SYNTAX._-__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-heat"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(23,23,23,57)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`_-__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(K0,HOLE))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(HOLE)~>`#freezer_-__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1_`(inj{Expr,KItem}(K0))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),`notBool_`(isKResult(inj{Expr,KItem}(HOLE)))) ensures #token("true","Bool") [UNIQUE_ID(f08312e37d26dcddecb9a78d194ff1ce40015ac753ce196fb581a0880886db1f), group(add), heat, label(EXPRESSIONS-SYNTAX._-__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-heat), org.kframework.attributes.Location(Location(23,23,23,57)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), strict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarK0:SortExpr{},VarHOLE:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblnotBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),dotk{}())))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),kseq{}(Lbl'Hash'freezer'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK0:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("f08312e37d26dcddecb9a78d194ff1ce40015ac753ce196fb581a0880886db1f"), label{}("EXPRESSIONS-SYNTAX._-__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-heat"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(23,23,23,57)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`_-__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(inj{Int,Expr}(X),inj{Int,Expr}(Y)))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Int,KItem}(`_-Int_`(X,Y))~>_DotVar1),_Gen0,_Gen1) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(485f2c5001444640a0c7674bbe83259366bf51f5373dddca91dfc2907bdf0fd1), org.kframework.attributes.Location(Location(48,8,48,25)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'Unds'-'UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(inj{SortInt{}, SortExpr{}}(VarX:SortInt{}),inj{SortInt{}, SortExpr{}}(VarY:SortInt{}))),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \top{SortGeneratedTopCell{}}()), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortInt{}, SortKItem{}}(Lbl'Unds'-Int'Unds'{}(VarX:SortInt{},VarY:SortInt{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("485f2c5001444640a0c7674bbe83259366bf51f5373dddca91dfc2907bdf0fd1"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(48,8,48,25)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`_/__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(HOLE,K1))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(HOLE)~>`#freezer_/__EXPRESSIONS-SYNTAX_Expr_Expr_Expr0_`(inj{Expr,KItem}(K1))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),`notBool_`(isKResult(inj{Expr,KItem}(HOLE)))) ensures #token("true","Bool") [UNIQUE_ID(2c6ced035eebbb06706ce49b43b3a6c81609ada2703e06d5e51952a4e4c87364), group(mul), heat, label(EXPRESSIONS-SYNTAX._/__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-heat), org.kframework.attributes.Location(Location(20,23,20,60)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarHOLE:SortExpr{},VarK1:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblnotBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),dotk{}())))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),kseq{}(Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK1:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("2c6ced035eebbb06706ce49b43b3a6c81609ada2703e06d5e51952a4e4c87364"), label{}("EXPRESSIONS-SYNTAX._/__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-heat"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(20,23,20,60)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`_/__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(K0,HOLE))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(HOLE)~>`#freezer_/__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1_`(inj{Expr,KItem}(K0))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(`_andBool_`(isKResult(inj{Expr,KItem}(K0)),#token("true","Bool")),`notBool_`(isKResult(inj{Expr,KItem}(HOLE)))) ensures #token("true","Bool") [UNIQUE_ID(7639d2b1eeee3449bb47b7165f996a746a1a319f460bfbcfffca24fcd16201b5), group(mul), heat, label(EXPRESSIONS-SYNTAX._/__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-heat), org.kframework.attributes.Location(Location(20,23,20,60)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarK0:SortExpr{},VarHOLE:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(Lbl'Unds'andBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK0:SortExpr{}),dotk{}())),\dv{SortBool{}}("true")),LblnotBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),dotk{}())))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),kseq{}(Lbl'Hash'freezer'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK0:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("7639d2b1eeee3449bb47b7165f996a746a1a319f460bfbcfffca24fcd16201b5"), label{}("EXPRESSIONS-SYNTAX._/__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-heat"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(20,23,20,60)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`_/__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(inj{Int,Expr}(X),inj{Int,Expr}(Y)))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Int,KItem}(`_/Int_`(X,Y))~>_DotVar1),_Gen0,_Gen1) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(cc5cce917902e3889d054d42b1e5dc5ec550e8575d67fd02ebb48b944e7a91d6), org.kframework.attributes.Location(Location(50,8,50,25)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'UndsSlshUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(inj{SortInt{}, SortExpr{}}(VarX:SortInt{}),inj{SortInt{}, SortExpr{}}(VarY:SortInt{}))),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \top{SortGeneratedTopCell{}}()), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortInt{}, SortKItem{}}(Lbl'UndsSlsh'Int'Unds'{}(VarX:SortInt{},VarY:SortInt{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("cc5cce917902e3889d054d42b1e5dc5ec550e8575d67fd02ebb48b944e7a91d6"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(50,8,50,25)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`_<=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(HOLE,K1))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(HOLE)~>`#freezer_<=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr0_`(inj{Expr,KItem}(K1))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),`notBool_`(isKResult(inj{Expr,KItem}(HOLE)))) ensures #token("true","Bool") [UNIQUE_ID(6b84f401532c1b66bd9dab31a7b06181c1b2a4cee891e9c3936f39ecea75c8fc), group(comp), heat, label(EXPRESSIONS-SYNTAX._<=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-heat), non-assoc, org.kframework.attributes.Location(Location(29,23,29,73)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarHOLE:SortExpr{},VarK1:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblnotBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),dotk{}())))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),kseq{}(Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK1:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("6b84f401532c1b66bd9dab31a7b06181c1b2a4cee891e9c3936f39ecea75c8fc"), label{}("EXPRESSIONS-SYNTAX._<=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-heat"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(29,23,29,73)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`_<=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(K0,HOLE))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(HOLE)~>`#freezer_<=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1_`(inj{Expr,KItem}(K0))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(`_andBool_`(isKResult(inj{Expr,KItem}(K0)),#token("true","Bool")),`notBool_`(isKResult(inj{Expr,KItem}(HOLE)))) ensures #token("true","Bool") [UNIQUE_ID(b3a22c24b0d945e521d86b44dadfa10beda45b356f9941753e93183cabef0351), group(comp), heat, label(EXPRESSIONS-SYNTAX._<=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-heat), non-assoc, org.kframework.attributes.Location(Location(29,23,29,73)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarK0:SortExpr{},VarHOLE:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(Lbl'Unds'andBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK0:SortExpr{}),dotk{}())),\dv{SortBool{}}("true")),LblnotBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),dotk{}())))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),kseq{}(Lbl'Hash'freezer'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK0:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("b3a22c24b0d945e521d86b44dadfa10beda45b356f9941753e93183cabef0351"), label{}("EXPRESSIONS-SYNTAX._<=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-heat"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(29,23,29,73)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`_<=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(inj{Int,Expr}(I1),inj{Int,Expr}(I2)))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Bool,KItem}(`_<=Int_`(I1,I2))~>_DotVar1),_Gen0,_Gen1) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(04b0d1024ef9cfc7a4cf17ac6377549a04c6eb4139e6551e66b23ac96c734620), org.kframework.attributes.Location(Location(60,8,60,31)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(inj{SortInt{}, SortExpr{}}(VarI1:SortInt{}),inj{SortInt{}, SortExpr{}}(VarI2:SortInt{}))),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \top{SortGeneratedTopCell{}}()), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortBool{}, SortKItem{}}(Lbl'Unds-LT-Eqls'Int'Unds'{}(VarI1:SortInt{},VarI2:SortInt{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("04b0d1024ef9cfc7a4cf17ac6377549a04c6eb4139e6551e66b23ac96c734620"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(60,8,60,31)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`_<__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(HOLE,K1))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(HOLE)~>`#freezer_<__EXPRESSIONS-SYNTAX_Expr_Expr_Expr0_`(inj{Expr,KItem}(K1))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),`notBool_`(isKResult(inj{Expr,KItem}(HOLE)))) ensures #token("true","Bool") [UNIQUE_ID(8e199e06075b724fde483686198a7a53844912b38905b6f01faa38bdbdf1a3f2), group(comp), heat, label(EXPRESSIONS-SYNTAX._<__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-heat), non-assoc, org.kframework.attributes.Location(Location(30,23,30,70)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), strict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarHOLE:SortExpr{},VarK1:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblnotBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),dotk{}())))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),kseq{}(Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK1:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("8e199e06075b724fde483686198a7a53844912b38905b6f01faa38bdbdf1a3f2"), label{}("EXPRESSIONS-SYNTAX._<__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-heat"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(30,23,30,70)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`_<__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(K0,HOLE))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(HOLE)~>`#freezer_<__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1_`(inj{Expr,KItem}(K0))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),`notBool_`(isKResult(inj{Expr,KItem}(HOLE)))) ensures #token("true","Bool") [UNIQUE_ID(eabba584056be4e0648f5763f7e951b523fb7b88d2087faa4978c919e04237ed), group(comp), heat, label(EXPRESSIONS-SYNTAX._<__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-heat), non-assoc, org.kframework.attributes.Location(Location(30,23,30,70)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), strict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarK0:SortExpr{},VarHOLE:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblnotBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),dotk{}())))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),kseq{}(Lbl'Hash'freezer'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK0:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("eabba584056be4e0648f5763f7e951b523fb7b88d2087faa4978c919e04237ed"), label{}("EXPRESSIONS-SYNTAX._<__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-heat"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(30,23,30,70)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`_<__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(inj{Int,Expr}(I1),inj{Int,Expr}(I2)))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Bool,KItem}(`__DotVar1),_Gen0,_Gen1) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(fc47316d513c399b9c060cb57a6d8f5517f0ca21ad9b0d9e41f8e844c32e0d46), org.kframework.attributes.Location(Location(61,8,61,31)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'Unds-LT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(inj{SortInt{}, SortExpr{}}(VarI1:SortInt{}),inj{SortInt{}, SortExpr{}}(VarI2:SortInt{}))),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \top{SortGeneratedTopCell{}}()), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortBool{}, SortKItem{}}(Lbl'Unds-LT-'Int'Unds'{}(VarI1:SortInt{},VarI2:SortInt{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("fc47316d513c399b9c060cb57a6d8f5517f0ca21ad9b0d9e41f8e844c32e0d46"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(61,8,61,31)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`_==__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(HOLE,K1))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(HOLE)~>`#freezer_==__EXPRESSIONS-SYNTAX_Expr_Expr_Expr0_`(inj{Expr,KItem}(K1))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),`notBool_`(isKResult(inj{Expr,KItem}(HOLE)))) ensures #token("true","Bool") [UNIQUE_ID(a79dc53eb41313c48f36828f28e054e103e7fbae146618afc73cf28908da6a98), group(comp), heat, label(EXPRESSIONS-SYNTAX._==__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-heat), non-assoc, org.kframework.attributes.Location(Location(25,23,25,73)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarHOLE:SortExpr{},VarK1:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblnotBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),dotk{}())))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),kseq{}(Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK1:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("a79dc53eb41313c48f36828f28e054e103e7fbae146618afc73cf28908da6a98"), label{}("EXPRESSIONS-SYNTAX._==__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-heat"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(25,23,25,73)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`_==__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(K0,HOLE))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(HOLE)~>`#freezer_==__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1_`(inj{Expr,KItem}(K0))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(`_andBool_`(isKResult(inj{Expr,KItem}(K0)),#token("true","Bool")),`notBool_`(isKResult(inj{Expr,KItem}(HOLE)))) ensures #token("true","Bool") [UNIQUE_ID(d3ccd190db79ac9f1acf5cafac2b2930f3cbe8b3f8761f3a155926c86cf8ed06), group(comp), heat, label(EXPRESSIONS-SYNTAX._==__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-heat), non-assoc, org.kframework.attributes.Location(Location(25,23,25,73)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarK0:SortExpr{},VarHOLE:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(Lbl'Unds'andBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK0:SortExpr{}),dotk{}())),\dv{SortBool{}}("true")),LblnotBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),dotk{}())))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),kseq{}(Lbl'Hash'freezer'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK0:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("d3ccd190db79ac9f1acf5cafac2b2930f3cbe8b3f8761f3a155926c86cf8ed06"), label{}("EXPRESSIONS-SYNTAX._==__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-heat"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(25,23,25,73)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`_==__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(inj{Bool,Expr}(B1),inj{Bool,Expr}(B2)))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Bool,KItem}(`_==Bool_`(B1,B2))~>_DotVar1),_Gen0,_Gen1) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(60af10e6c1e6fece3362933f3f0bf49f208f64048727b10634409795b9e2c7fc), org.kframework.attributes.Location(Location(52,8,52,32)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(inj{SortBool{}, SortExpr{}}(VarB1:SortBool{}),inj{SortBool{}, SortExpr{}}(VarB2:SortBool{}))),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \top{SortGeneratedTopCell{}}()), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortBool{}, SortKItem{}}(Lbl'UndsEqlsEqls'Bool'Unds'{}(VarB1:SortBool{},VarB2:SortBool{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("60af10e6c1e6fece3362933f3f0bf49f208f64048727b10634409795b9e2c7fc"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(52,8,52,32)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`_==__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(inj{Int,Expr}(I1),inj{Int,Expr}(I2)))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Bool,KItem}(`_==Int_`(I1,I2))~>_DotVar1),_Gen0,_Gen1) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(c4e845f6dd7e4ff3753ee79613b86a28489d2ed6093077fd3dc58b73f666a460), org.kframework.attributes.Location(Location(53,8,53,31)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'UndsEqlsEqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(inj{SortInt{}, SortExpr{}}(VarI1:SortInt{}),inj{SortInt{}, SortExpr{}}(VarI2:SortInt{}))),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \top{SortGeneratedTopCell{}}()), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortBool{}, SortKItem{}}(Lbl'UndsEqlsEqls'Int'Unds'{}(VarI1:SortInt{},VarI2:SortInt{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("c4e845f6dd7e4ff3753ee79613b86a28489d2ed6093077fd3dc58b73f666a460"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(53,8,53,31)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Stmt,KItem}(`_=_;_STATEMENTS-SYNTAX_Stmt_Id_Expr`(K0,HOLE))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(HOLE)~>`#freezer_=_;_STATEMENTS-SYNTAX_Stmt_Id_Expr1_`(inj{Id,KItem}(K0))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),`notBool_`(isKResult(inj{Expr,KItem}(HOLE)))) ensures #token("true","Bool") [UNIQUE_ID(eef4f61aeb9803e98b0bc17591262664b47295705b51848e2bfc1706a2455b3e), heat, label(STATEMENTS-SYNTAX._=_;_STATEMENTS-SYNTAX_Stmt_Id_Expr2-heat), org.kframework.attributes.Location(Location(8,19,8,65)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/statements.k)), strict(2)] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortStmt{}, SortKItem{}}(Lbl'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr{}(VarK0:SortId{},VarHOLE:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblnotBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),dotk{}())))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),kseq{}(Lbl'Hash'freezer'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr1'Unds'{}(kseq{}(inj{SortId{}, SortKItem{}}(VarK0:SortId{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("eef4f61aeb9803e98b0bc17591262664b47295705b51848e2bfc1706a2455b3e"), label{}("STATEMENTS-SYNTAX._=_;_STATEMENTS-SYNTAX_Stmt_Id_Expr2-heat"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(8,19,8,65)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/statements.k)")] + +// rule ``(``(inj{Stmt,KItem}(`_=_;_STATEMENTS-SYNTAX_Stmt_Id_Expr`(X,inj{Value,Expr}(V)))~>_DotVar1),``(E),_DotVar0)=>``(``(_DotVar1),``(`Map:update`(E,inj{Id,KItem}(X),inj{Value,KItem}(V))),_DotVar0) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(4988fd4d75f2273c259c25967abc065ec2c6844d5d14979e2e33a77a61692459), org.kframework.attributes.Location(Location(59,5,60,35)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/statements.k)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortStmt{}, SortKItem{}}(Lbl'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr{}(VarX:SortId{},inj{SortValue{}, SortExpr{}}(VarV:SortValue{}))),Var'Unds'DotVar1:SortK{})),Lbl'-LT-'env'-GT-'{}(VarE:SortMap{}),Var'Unds'DotVar0:SortGeneratedCounterCell{}), + \top{SortGeneratedTopCell{}}()), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(Var'Unds'DotVar1:SortK{}),Lbl'-LT-'env'-GT-'{}(LblMap'Coln'update{}(VarE:SortMap{},inj{SortId{}, SortKItem{}}(VarX:SortId{}),inj{SortValue{}, SortKItem{}}(VarV:SortValue{}))),Var'Unds'DotVar0:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("4988fd4d75f2273c259c25967abc065ec2c6844d5d14979e2e33a77a61692459"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(59,5,60,35)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/statements.k)")] + +// rule ``(``(inj{Expr,KItem}(`_>=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(HOLE,K1))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(HOLE)~>`#freezer_>=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr0_`(inj{Expr,KItem}(K1))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),`notBool_`(isKResult(inj{Expr,KItem}(HOLE)))) ensures #token("true","Bool") [UNIQUE_ID(e7066a93c449ab50453c62969d55f91a63fdc50b07cadcbbfa58e6d132af13c2), group(comp), heat, label(EXPRESSIONS-SYNTAX._>=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-heat), non-assoc, org.kframework.attributes.Location(Location(27,23,27,73)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarHOLE:SortExpr{},VarK1:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblnotBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),dotk{}())))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),kseq{}(Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK1:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("e7066a93c449ab50453c62969d55f91a63fdc50b07cadcbbfa58e6d132af13c2"), label{}("EXPRESSIONS-SYNTAX._>=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-heat"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(27,23,27,73)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`_>=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(K0,HOLE))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(HOLE)~>`#freezer_>=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1_`(inj{Expr,KItem}(K0))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(`_andBool_`(isKResult(inj{Expr,KItem}(K0)),#token("true","Bool")),`notBool_`(isKResult(inj{Expr,KItem}(HOLE)))) ensures #token("true","Bool") [UNIQUE_ID(51e5a87245826938fb42988a166b48d7908f68ace2d75d8f5a3e82a2031233f0), group(comp), heat, label(EXPRESSIONS-SYNTAX._>=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-heat), non-assoc, org.kframework.attributes.Location(Location(27,23,27,73)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarK0:SortExpr{},VarHOLE:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(Lbl'Unds'andBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK0:SortExpr{}),dotk{}())),\dv{SortBool{}}("true")),LblnotBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),dotk{}())))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),kseq{}(Lbl'Hash'freezer'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK0:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("51e5a87245826938fb42988a166b48d7908f68ace2d75d8f5a3e82a2031233f0"), label{}("EXPRESSIONS-SYNTAX._>=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-heat"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(27,23,27,73)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`_>=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(inj{Int,Expr}(I1),inj{Int,Expr}(I2)))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Bool,KItem}(`_>=Int_`(I1,I2))~>_DotVar1),_Gen0,_Gen1) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(3e307dbcb56af725a8615d75d6708e7af1b431b8397dc43cd66154bb502f9d9f), org.kframework.attributes.Location(Location(58,8,58,31)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'Unds-GT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(inj{SortInt{}, SortExpr{}}(VarI1:SortInt{}),inj{SortInt{}, SortExpr{}}(VarI2:SortInt{}))),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \top{SortGeneratedTopCell{}}()), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortBool{}, SortKItem{}}(Lbl'Unds-GT-Eqls'Int'Unds'{}(VarI1:SortInt{},VarI2:SortInt{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("3e307dbcb56af725a8615d75d6708e7af1b431b8397dc43cd66154bb502f9d9f"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(58,8,58,31)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`_>__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(HOLE,K1))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(HOLE)~>`#freezer_>__EXPRESSIONS-SYNTAX_Expr_Expr_Expr0_`(inj{Expr,KItem}(K1))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),`notBool_`(isKResult(inj{Expr,KItem}(HOLE)))) ensures #token("true","Bool") [UNIQUE_ID(9b21d283bf130351771f85a098c1713ae7cf9269af7045b726d9342f33fa957a), group(comp), heat, label(EXPRESSIONS-SYNTAX._>__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-heat), non-assoc, org.kframework.attributes.Location(Location(28,23,28,73)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarHOLE:SortExpr{},VarK1:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblnotBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),dotk{}())))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),kseq{}(Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK1:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("9b21d283bf130351771f85a098c1713ae7cf9269af7045b726d9342f33fa957a"), label{}("EXPRESSIONS-SYNTAX._>__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-heat"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(28,23,28,73)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`_>__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(K0,HOLE))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(HOLE)~>`#freezer_>__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1_`(inj{Expr,KItem}(K0))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(`_andBool_`(isKResult(inj{Expr,KItem}(K0)),#token("true","Bool")),`notBool_`(isKResult(inj{Expr,KItem}(HOLE)))) ensures #token("true","Bool") [UNIQUE_ID(2cf386492a6a7cdfb6e4ae7d109ef79af343cafb80b7a597ff41dbd2204fb926), group(comp), heat, label(EXPRESSIONS-SYNTAX._>__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-heat), non-assoc, org.kframework.attributes.Location(Location(28,23,28,73)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarK0:SortExpr{},VarHOLE:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(Lbl'Unds'andBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK0:SortExpr{}),dotk{}())),\dv{SortBool{}}("true")),LblnotBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),dotk{}())))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),kseq{}(Lbl'Hash'freezer'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK0:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("2cf386492a6a7cdfb6e4ae7d109ef79af343cafb80b7a597ff41dbd2204fb926"), label{}("EXPRESSIONS-SYNTAX._>__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-heat"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(28,23,28,73)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`_>__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(inj{Int,Expr}(I1),inj{Int,Expr}(I2)))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Bool,KItem}(`_>Int_`(I1,I2))~>_DotVar1),_Gen0,_Gen1) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(e3256493cb1185e0b2ff12e0f6454cf9f3f6ea874365d3ab98f3b2dbf7b4904b), org.kframework.attributes.Location(Location(59,8,59,31)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'Unds-GT-UndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(inj{SortInt{}, SortExpr{}}(VarI1:SortInt{}),inj{SortInt{}, SortExpr{}}(VarI2:SortInt{}))),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \top{SortGeneratedTopCell{}}()), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortBool{}, SortKItem{}}(Lbl'Unds-GT-'Int'Unds'{}(VarI1:SortInt{},VarI2:SortInt{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("e3256493cb1185e0b2ff12e0f6454cf9f3f6ea874365d3ab98f3b2dbf7b4904b"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(59,8,59,31)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Stmt,KItem}(`___STATEMENTS-SYNTAX_Stmt_Stmt_Stmt`(S1,S2))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Stmt,KItem}(S1)~>inj{Stmt,KItem}(S2)~>_DotVar1),_Gen0,_Gen1) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(28a83dd86d61bee883a17d224e2e928c49ae27d00b9df39aeda61cc86844f408), label(STATEMENTS-RULES.step), org.kframework.attributes.Location(Location(38,16,38,43)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/statements.k)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortStmt{}, SortKItem{}}(Lbl'UndsUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt'Unds'Stmt{}(VarS1:SortStmt{},VarS2:SortStmt{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \top{SortGeneratedTopCell{}}()), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortStmt{}, SortKItem{}}(VarS1:SortStmt{}),kseq{}(inj{SortStmt{}, SortKItem{}}(VarS2:SortStmt{}),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("28a83dd86d61bee883a17d224e2e928c49ae27d00b9df39aeda61cc86844f408"), label{}("STATEMENTS-RULES.step"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(38,16,38,43)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/statements.k)")] + +// rule ``(``(inj{Expr,KItem}(`_||__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(HOLE,K1))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(HOLE)~>`#freezer_||__EXPRESSIONS-SYNTAX_Expr_Expr_Expr0_`(inj{Expr,KItem}(K1))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),`notBool_`(isKResult(inj{Expr,KItem}(HOLE)))) ensures #token("true","Bool") [UNIQUE_ID(c2c387da68ba5844ff3e16f107e57523597b513a9ca1ec6420f729576bc11809), group(bool), heat, label(EXPRESSIONS-SYNTAX._||__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-heat), left, org.kframework.attributes.Location(Location(34,23,34,68)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarHOLE:SortExpr{},VarK1:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblnotBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),dotk{}())))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),kseq{}(Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr0'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK1:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("c2c387da68ba5844ff3e16f107e57523597b513a9ca1ec6420f729576bc11809"), label{}("EXPRESSIONS-SYNTAX._||__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1-heat"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(34,23,34,68)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`_||__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(K0,HOLE))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(HOLE)~>`#freezer_||__EXPRESSIONS-SYNTAX_Expr_Expr_Expr1_`(inj{Expr,KItem}(K0))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(`_andBool_`(isKResult(inj{Expr,KItem}(K0)),#token("true","Bool")),`notBool_`(isKResult(inj{Expr,KItem}(HOLE)))) ensures #token("true","Bool") [UNIQUE_ID(6e33cb12f0017a0838caad30b8536ca226ed71f2984c89d258bef9123c8d5533), group(bool), heat, label(EXPRESSIONS-SYNTAX._||__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-heat), left, org.kframework.attributes.Location(Location(34,23,34,68)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), seqstrict] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(VarK0:SortExpr{},VarHOLE:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(Lbl'Unds'andBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK0:SortExpr{}),dotk{}())),\dv{SortBool{}}("true")),LblnotBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),dotk{}())))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),kseq{}(Lbl'Hash'freezer'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr1'Unds'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarK0:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("6e33cb12f0017a0838caad30b8536ca226ed71f2984c89d258bef9123c8d5533"), label{}("EXPRESSIONS-SYNTAX._||__EXPRESSIONS-SYNTAX_Expr_Expr_Expr2-heat"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(34,23,34,68)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Expr,KItem}(`_||__EXPRESSIONS-SYNTAX_Expr_Expr_Expr`(inj{Bool,Expr}(B1),inj{Bool,Expr}(B2)))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Bool,KItem}(`_orBool_`(B1,B2))~>_DotVar1),_Gen0,_Gen1) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(99a9872005572476c100854a8b529815848a5e0edb5482e305a7b584aee64bc5), org.kframework.attributes.Location(Location(65,8,65,32)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbl'UndsPipePipeUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr{}(inj{SortBool{}, SortExpr{}}(VarB1:SortBool{}),inj{SortBool{}, SortExpr{}}(VarB2:SortBool{}))),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \top{SortGeneratedTopCell{}}()), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortBool{}, SortKItem{}}(Lbl'Unds'orBool'Unds'{}(VarB1:SortBool{},VarB2:SortBool{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("99a9872005572476c100854a8b529815848a5e0edb5482e305a7b584aee64bc5"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(65,8,65,32)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/expressions.k)")] + +// rule ``(``(inj{Stmt,KItem}(`if(_)__STATEMENTS-SYNTAX_Stmt_Expr_Stmt`(C,E))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Stmt,KItem}(`if(_)_else__STATEMENTS-SYNTAX_Stmt_Expr_Stmt_Stmt`(C,E,`{}_STATEMENTS-SYNTAX_Stmt`(.KList)))~>_DotVar1),_Gen0,_Gen1) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(ebd98daab62cf807c78332a65802f4c44b25fdd8db5a54cee17fe291f4f6c926), org.kframework.attributes.Location(Location(25,8,25,40)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/statements.k)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortStmt{}, SortKItem{}}(Lblif'LParUndsRParUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt{}(VarC:SortExpr{},VarE:SortStmt{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \top{SortGeneratedTopCell{}}()), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortStmt{}, SortKItem{}}(Lblif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt{}(VarC:SortExpr{},VarE:SortStmt{},Lbl'LBraRBraUnds'STATEMENTS-SYNTAX'Unds'Stmt{}())),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("ebd98daab62cf807c78332a65802f4c44b25fdd8db5a54cee17fe291f4f6c926"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(25,8,25,40)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/statements.k)")] + +// rule ``(``(inj{Stmt,KItem}(`if(_)_else__STATEMENTS-SYNTAX_Stmt_Expr_Stmt_Stmt`(HOLE,K1,K2))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(HOLE)~>`#freezerif(_)_else__STATEMENTS-SYNTAX_Stmt_Expr_Stmt_Stmt0_`(inj{Stmt,KItem}(K1),inj{Stmt,KItem}(K2))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),`notBool_`(isKResult(inj{Expr,KItem}(HOLE)))) ensures #token("true","Bool") [UNIQUE_ID(2821768ca76231d9d23da884f160f8a8a67b03f3575f41bd4fc76649c39a94fb), avoid, heat, label(STATEMENTS-SYNTAX.if(_)_else__STATEMENTS-SYNTAX_Stmt_Expr_Stmt_Stmt1-heat), org.kframework.attributes.Location(Location(9,19,9,72)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/statements.k)), strict(1)] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortStmt{}, SortKItem{}}(Lblif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt{}(VarHOLE:SortExpr{},VarK1:SortStmt{},VarK2:SortStmt{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblnotBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),dotk{}())))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),kseq{}(Lbl'Hash'freezerif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt0'Unds'{}(kseq{}(inj{SortStmt{}, SortKItem{}}(VarK1:SortStmt{}),dotk{}()),kseq{}(inj{SortStmt{}, SortKItem{}}(VarK2:SortStmt{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("2821768ca76231d9d23da884f160f8a8a67b03f3575f41bd4fc76649c39a94fb"), label{}("STATEMENTS-SYNTAX.if(_)_else__STATEMENTS-SYNTAX_Stmt_Expr_Stmt_Stmt1-heat"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(9,19,9,72)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/statements.k)")] + +// rule ``(``(inj{Stmt,KItem}(`if(_)_else__STATEMENTS-SYNTAX_Stmt_Expr_Stmt_Stmt`(inj{Bool,Expr}(#token("false","Bool")),_Gen0,E2))~>_DotVar1),_Gen1,_Gen2)=>``(``(inj{Stmt,KItem}(E2)~>_DotVar1),_Gen1,_Gen2) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(98c72e4b1dfbb059f9d610fbf7c44220ae5c201e13f9c083075b8d840b2f124b), org.kframework.attributes.Location(Location(23,8,23,37)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/statements.k)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortStmt{}, SortKItem{}}(Lblif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt{}(inj{SortBool{}, SortExpr{}}(\dv{SortBool{}}("false")),Var'Unds'Gen0:SortStmt{},VarE2:SortStmt{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen1:SortEnvCell{},Var'Unds'Gen2:SortGeneratedCounterCell{}), + \top{SortGeneratedTopCell{}}()), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortStmt{}, SortKItem{}}(VarE2:SortStmt{}),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen1:SortEnvCell{},Var'Unds'Gen2:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("98c72e4b1dfbb059f9d610fbf7c44220ae5c201e13f9c083075b8d840b2f124b"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(23,8,23,37)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/statements.k)")] + +// rule ``(``(inj{Stmt,KItem}(`if(_)_else__STATEMENTS-SYNTAX_Stmt_Expr_Stmt_Stmt`(inj{Bool,Expr}(#token("true","Bool")),E1,_Gen0))~>_DotVar1),_Gen1,_Gen2)=>``(``(inj{Stmt,KItem}(E1)~>_DotVar1),_Gen1,_Gen2) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(2db61d4afbcd6d16de16c6d57fc538e56ac02e398a43b43a2936efc334a4ffdd), org.kframework.attributes.Location(Location(22,8,22,37)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/statements.k)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortStmt{}, SortKItem{}}(Lblif'LParUndsRParUnds'else'UndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt'Unds'Stmt{}(inj{SortBool{}, SortExpr{}}(\dv{SortBool{}}("true")),VarE1:SortStmt{},Var'Unds'Gen0:SortStmt{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen1:SortEnvCell{},Var'Unds'Gen2:SortGeneratedCounterCell{}), + \top{SortGeneratedTopCell{}}()), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortStmt{}, SortKItem{}}(VarE1:SortStmt{}),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen1:SortEnvCell{},Var'Unds'Gen2:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("2db61d4afbcd6d16de16c6d57fc538e56ac02e398a43b43a2936efc334a4ffdd"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(22,8,22,37)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/statements.k)")] + +// rule ``(``(inj{Expr,KItem}(`let_=_in__VARIABLES-SYNTAX_Expr_Id_Expr_Expr`(K0,HOLE,K2))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Expr,KItem}(HOLE)~>`#freezerlet_=_in__VARIABLES-SYNTAX_Expr_Id_Expr_Expr1_`(inj{Id,KItem}(K0),inj{Expr,KItem}(K2))~>_DotVar1),_Gen0,_Gen1) requires `_andBool_`(#token("true","Bool"),`notBool_`(isKResult(inj{Expr,KItem}(HOLE)))) ensures #token("true","Bool") [UNIQUE_ID(602726b4c89eec7e829d9bf47fc2dc26c2b16d96b8f8fb53713fc758a0f38772), avoid, heat, label(VARIABLES-SYNTAX.let_=_in__VARIABLES-SYNTAX_Expr_Id_Expr_Expr2-heat), org.kframework.attributes.Location(Location(8,19,8,65)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/variables.k)), strict(2)] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(Lbllet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr{}(VarK0:SortId{},VarHOLE:SortExpr{},VarK2:SortExpr{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \equals{SortBool{},SortGeneratedTopCell{}}( + Lbl'Unds'andBool'Unds'{}(\dv{SortBool{}}("true"),LblnotBool'Unds'{}(LblisKResult{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),dotk{}())))), + \dv{SortBool{}}("true"))), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortExpr{}, SortKItem{}}(VarHOLE:SortExpr{}),kseq{}(Lbl'Hash'freezerlet'UndsEqlsUnds'in'UndsUnds'VARIABLES-SYNTAX'Unds'Expr'Unds'Id'Unds'Expr'Unds'Expr1'Unds'{}(kseq{}(inj{SortId{}, SortKItem{}}(VarK0:SortId{}),dotk{}()),kseq{}(inj{SortExpr{}, SortKItem{}}(VarK2:SortExpr{}),dotk{}())),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("602726b4c89eec7e829d9bf47fc2dc26c2b16d96b8f8fb53713fc758a0f38772"), label{}("VARIABLES-SYNTAX.let_=_in__VARIABLES-SYNTAX_Expr_Id_Expr_Expr2-heat"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(8,19,8,65)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/variables.k)")] + +// rule ``(``(inj{Stmt,KItem}(`{_}_STATEMENTS-SYNTAX_Stmt_Stmt`(E))~>_DotVar1),_Gen0,_Gen1)=>``(``(inj{Stmt,KItem}(E)~>inj{Stmt,KItem}(`{}_STATEMENTS-SYNTAX_Stmt`(.KList))~>_DotVar1),_Gen0,_Gen1) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(fcd9286d2e88527a29ef882d7ffffcc0f7b713d368e37215e4d4692a9216db0c), label(STATEMENTS-RULES.block), org.kframework.attributes.Location(Location(34,17,34,33)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/statements.k)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortStmt{}, SortKItem{}}(Lbl'LBraUndsRBraUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt{}(VarE:SortStmt{})),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \top{SortGeneratedTopCell{}}()), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortStmt{}, SortKItem{}}(VarE:SortStmt{}),kseq{}(inj{SortStmt{}, SortKItem{}}(Lbl'LBraRBraUnds'STATEMENTS-SYNTAX'Unds'Stmt{}()),Var'Unds'DotVar1:SortK{}))),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("fcd9286d2e88527a29ef882d7ffffcc0f7b713d368e37215e4d4692a9216db0c"), label{}("STATEMENTS-RULES.block"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(34,17,34,33)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/statements.k)")] + +// rule ``(``(inj{Stmt,KItem}(`{}_STATEMENTS-SYNTAX_Stmt`(.KList))~>_DotVar1),_Gen0,_Gen1)=>``(``(_DotVar1),_Gen0,_Gen1) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(92ee315f94fb25bceb9636dfa56dfddf381885e2c9fdd7b40a9a72015c73b3fc), label(STATEMENTS-RULES.done), org.kframework.attributes.Location(Location(36,16,36,24)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/statements.k)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{} \rewrites{SortGeneratedTopCell{}} ( + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortStmt{}, SortKItem{}}(Lbl'LBraRBraUnds'STATEMENTS-SYNTAX'Unds'Stmt{}()),Var'Unds'DotVar1:SortK{})),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), + \top{SortGeneratedTopCell{}}()), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(Lbl'-LT-'k'-GT-'{}(Var'Unds'DotVar1:SortK{}),Var'Unds'Gen0:SortEnvCell{},Var'Unds'Gen1:SortGeneratedCounterCell{}), \top{SortGeneratedTopCell{}}())) + [UNIQUE'Unds'ID{}("92ee315f94fb25bceb9636dfa56dfddf381885e2c9fdd7b40a9a72015c73b3fc"), label{}("STATEMENTS-RULES.done"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(36,16,36,24)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/statements.k)")] + +// rule `_%Int_`(X,N)=>X requires `_andBool_`(`_<=Int_`(#token("0","Int"),X),`_`_&Int_`(`_&Int_`(I1,I2),C) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(9421412631227297d710a8a128250546172d603a3ba4ab733f0b457ab951b222), concrete(I1, I2), org.kframework.attributes.Location(Location(1404,8,1404,50)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, symbolic(C)] + axiom{R} \implies{R} ( + \top{R}(), + \equals{SortInt{},R} ( + Lbl'UndsAnd-'Int'Unds'{}(VarI1:SortInt{},Lbl'UndsAnd-'Int'Unds'{}(VarI2:SortInt{},VarC:SortInt{})), + \and{SortInt{}} ( + Lbl'UndsAnd-'Int'Unds'{}(Lbl'UndsAnd-'Int'Unds'{}(VarI1:SortInt{},VarI2:SortInt{}),VarC:SortInt{}), + \top{SortInt{}}()))) + [UNIQUE'Unds'ID{}("9421412631227297d710a8a128250546172d603a3ba4ab733f0b457ab951b222"), concrete{}(VarI1:SortInt{},VarI2:SortInt{}), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1404,8,1404,50)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}(""), symbolic{}(VarC:SortInt{})] + +// rule `_+Int_`(I,B)=>`_+Int_`(B,I) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(2e6bd1d3ddd7c597337b36e863b9ba7467879e84d355c4249c7ac49a7bc6994a), concrete(I), org.kframework.attributes.Location(Location(1391,8,1391,28)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification(51), symbolic(B)] + axiom{R} \implies{R} ( + \top{R}(), + \equals{SortInt{},R} ( + Lbl'UndsPlus'Int'Unds'{}(VarI:SortInt{},VarB:SortInt{}), + \and{SortInt{}} ( + Lbl'UndsPlus'Int'Unds'{}(VarB:SortInt{},VarI:SortInt{}), + \top{SortInt{}}()))) + [UNIQUE'Unds'ID{}("2e6bd1d3ddd7c597337b36e863b9ba7467879e84d355c4249c7ac49a7bc6994a"), concrete{}(VarI:SortInt{}), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1391,8,1391,28)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("51"), symbolic{}(VarB:SortInt{})] + +// rule `_+Int_`(I,#token("0","Int"))=>I requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(aabd26e6a15f1496fc7553673d4106436d66316bc405364e4e45307483e4abba), org.kframework.attributes.Location(Location(1349,8,1349,21)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification] + axiom{R} \implies{R} ( + \top{R}(), + \equals{SortInt{},R} ( + Lbl'UndsPlus'Int'Unds'{}(VarI:SortInt{},\dv{SortInt{}}("0")), + \and{SortInt{}} ( + VarI:SortInt{}, + \top{SortInt{}}()))) + [UNIQUE'Unds'ID{}("aabd26e6a15f1496fc7553673d4106436d66316bc405364e4e45307483e4abba"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1349,8,1349,21)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule `_+Int_`(I1,`_+Int_`(B,I3))=>`_+Int_`(B,`_+Int_`(I1,I3)) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(7308565e50371e986b204a58ec60ca02ff2d988d32b932c40b04f3aeee3bd97c), concrete(I1, I3), org.kframework.attributes.Location(Location(1395,8,1395,50)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, symbolic(B)] + axiom{R} \implies{R} ( + \top{R}(), + \equals{SortInt{},R} ( + Lbl'UndsPlus'Int'Unds'{}(VarI1:SortInt{},Lbl'UndsPlus'Int'Unds'{}(VarB:SortInt{},VarI3:SortInt{})), + \and{SortInt{}} ( + Lbl'UndsPlus'Int'Unds'{}(VarB:SortInt{},Lbl'UndsPlus'Int'Unds'{}(VarI1:SortInt{},VarI3:SortInt{})), + \top{SortInt{}}()))) + [UNIQUE'Unds'ID{}("7308565e50371e986b204a58ec60ca02ff2d988d32b932c40b04f3aeee3bd97c"), concrete{}(VarI1:SortInt{},VarI3:SortInt{}), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1395,8,1395,50)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}(""), symbolic{}(VarB:SortInt{})] + +// rule `_+Int_`(I1,`_+Int_`(I2,C))=>`_+Int_`(`_+Int_`(I1,I2),C) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(c1ab8935c1473aad2156d430c77351ca90186ddcabc44e7f88b0d40d019eff6c), concrete(I1, I2), org.kframework.attributes.Location(Location(1397,8,1397,50)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, symbolic(C)] + axiom{R} \implies{R} ( + \top{R}(), + \equals{SortInt{},R} ( + Lbl'UndsPlus'Int'Unds'{}(VarI1:SortInt{},Lbl'UndsPlus'Int'Unds'{}(VarI2:SortInt{},VarC:SortInt{})), + \and{SortInt{}} ( + Lbl'UndsPlus'Int'Unds'{}(Lbl'UndsPlus'Int'Unds'{}(VarI1:SortInt{},VarI2:SortInt{}),VarC:SortInt{}), + \top{SortInt{}}()))) + [UNIQUE'Unds'ID{}("c1ab8935c1473aad2156d430c77351ca90186ddcabc44e7f88b0d40d019eff6c"), concrete{}(VarI1:SortInt{},VarI2:SortInt{}), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1397,8,1397,50)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}(""), symbolic{}(VarC:SortInt{})] + +// rule `_+Int_`(I1,`_-Int_`(I2,C))=>`_-Int_`(`_+Int_`(I1,I2),C) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(935f82fd8fdd7b6117b1e5133b5e9d7eb694bc4b7bca25656b679697465e9392), concrete(I1, I2), org.kframework.attributes.Location(Location(1398,8,1398,50)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, symbolic(C)] + axiom{R} \implies{R} ( + \top{R}(), + \equals{SortInt{},R} ( + Lbl'UndsPlus'Int'Unds'{}(VarI1:SortInt{},Lbl'Unds'-Int'Unds'{}(VarI2:SortInt{},VarC:SortInt{})), + \and{SortInt{}} ( + Lbl'Unds'-Int'Unds'{}(Lbl'UndsPlus'Int'Unds'{}(VarI1:SortInt{},VarI2:SortInt{}),VarC:SortInt{}), + \top{SortInt{}}()))) + [UNIQUE'Unds'ID{}("935f82fd8fdd7b6117b1e5133b5e9d7eb694bc4b7bca25656b679697465e9392"), concrete{}(VarI1:SortInt{},VarI2:SortInt{}), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1398,8,1398,50)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}(""), symbolic{}(VarC:SortInt{})] + +// rule `_+Int_`(`_+Int_`(A,I2),I3)=>`_+Int_`(A,`_+Int_`(I2,I3)) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(905f980f1bfa6646fa489ee8f1a217ce3516cb046d9bdb2c71aeac8af25bff94), concrete(I2, I3), org.kframework.attributes.Location(Location(1394,8,1394,50)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, symbolic(A)] + axiom{R} \implies{R} ( + \top{R}(), + \equals{SortInt{},R} ( + Lbl'UndsPlus'Int'Unds'{}(Lbl'UndsPlus'Int'Unds'{}(VarA:SortInt{},VarI2:SortInt{}),VarI3:SortInt{}), + \and{SortInt{}} ( + Lbl'UndsPlus'Int'Unds'{}(VarA:SortInt{},Lbl'UndsPlus'Int'Unds'{}(VarI2:SortInt{},VarI3:SortInt{})), + \top{SortInt{}}()))) + [UNIQUE'Unds'ID{}("905f980f1bfa6646fa489ee8f1a217ce3516cb046d9bdb2c71aeac8af25bff94"), concrete{}(VarI2:SortInt{},VarI3:SortInt{}), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1394,8,1394,50)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}(""), symbolic{}(VarA:SortInt{})] + +// rule `_+Int_`(`_-Int_`(I1,B),I3)=>`_-Int_`(`_+Int_`(I1,I3),B) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(a05a3720b49f61f248c0054620ef36c21bfc387bc87ccadff8b25a64b516abaa), concrete(I1, I3), org.kframework.attributes.Location(Location(1399,8,1399,50)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, symbolic(B)] + axiom{R} \implies{R} ( + \top{R}(), + \equals{SortInt{},R} ( + Lbl'UndsPlus'Int'Unds'{}(Lbl'Unds'-Int'Unds'{}(VarI1:SortInt{},VarB:SortInt{}),VarI3:SortInt{}), + \and{SortInt{}} ( + Lbl'Unds'-Int'Unds'{}(Lbl'UndsPlus'Int'Unds'{}(VarI1:SortInt{},VarI3:SortInt{}),VarB:SortInt{}), + \top{SortInt{}}()))) + [UNIQUE'Unds'ID{}("a05a3720b49f61f248c0054620ef36c21bfc387bc87ccadff8b25a64b516abaa"), concrete{}(VarI1:SortInt{},VarI3:SortInt{}), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1399,8,1399,50)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}(""), symbolic{}(VarB:SortInt{})] + +// rule `_-Int_`(A,I)=>`_+Int_`(A,`_-Int_`(#token("0","Int"),I)) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(d74a5051d6c5db6f1cd82d246016e530a2c889e65ad1871d4ef3c794a0ebbfdb), concrete(I), org.kframework.attributes.Location(Location(1392,8,1392,37)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification(51), symbolic(A)] + axiom{R} \implies{R} ( + \top{R}(), + \equals{SortInt{},R} ( + Lbl'Unds'-Int'Unds'{}(VarA:SortInt{},VarI:SortInt{}), + \and{SortInt{}} ( + Lbl'UndsPlus'Int'Unds'{}(VarA:SortInt{},Lbl'Unds'-Int'Unds'{}(\dv{SortInt{}}("0"),VarI:SortInt{})), + \top{SortInt{}}()))) + [UNIQUE'Unds'ID{}("d74a5051d6c5db6f1cd82d246016e530a2c889e65ad1871d4ef3c794a0ebbfdb"), concrete{}(VarI:SortInt{}), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1392,8,1392,37)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("51"), symbolic{}(VarA:SortInt{})] + +// rule `_-Int_`(I,#token("0","Int"))=>I requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(ce5b8e5bfd73c95b45c6910a804fef7292859a81b2a0b1cf7aceb97a42f68ea5), org.kframework.attributes.Location(Location(1350,8,1350,21)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification] + axiom{R} \implies{R} ( + \top{R}(), + \equals{SortInt{},R} ( + Lbl'Unds'-Int'Unds'{}(VarI:SortInt{},\dv{SortInt{}}("0")), + \and{SortInt{}} ( + VarI:SortInt{}, + \top{SortInt{}}()))) + [UNIQUE'Unds'ID{}("ce5b8e5bfd73c95b45c6910a804fef7292859a81b2a0b1cf7aceb97a42f68ea5"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1350,8,1350,21)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule `_-Int_`(I1,`_+Int_`(B,I3))=>`_-Int_`(`_-Int_`(I1,I3),B) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(65fc58d60e6d0a418216dd3bc1bcb0d69a4fe2d05ff984269e650ce61fe7ac57), concrete(I1, I3), org.kframework.attributes.Location(Location(1396,8,1396,50)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, symbolic(B)] + axiom{R} \implies{R} ( + \top{R}(), + \equals{SortInt{},R} ( + Lbl'Unds'-Int'Unds'{}(VarI1:SortInt{},Lbl'UndsPlus'Int'Unds'{}(VarB:SortInt{},VarI3:SortInt{})), + \and{SortInt{}} ( + Lbl'Unds'-Int'Unds'{}(Lbl'Unds'-Int'Unds'{}(VarI1:SortInt{},VarI3:SortInt{}),VarB:SortInt{}), + \top{SortInt{}}()))) + [UNIQUE'Unds'ID{}("65fc58d60e6d0a418216dd3bc1bcb0d69a4fe2d05ff984269e650ce61fe7ac57"), concrete{}(VarI1:SortInt{},VarI3:SortInt{}), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1396,8,1396,50)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}(""), symbolic{}(VarB:SortInt{})] + +// rule `_-Int_`(I1,`_+Int_`(I2,C))=>`_-Int_`(`_-Int_`(I1,I2),C) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(56750a45b2b2a148f36488eecc4e1f9b06a87aaf87f8d327a7d2ea64bb8e97a6), concrete(I1, I2), org.kframework.attributes.Location(Location(1400,8,1400,50)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, symbolic(C)] + axiom{R} \implies{R} ( + \top{R}(), + \equals{SortInt{},R} ( + Lbl'Unds'-Int'Unds'{}(VarI1:SortInt{},Lbl'UndsPlus'Int'Unds'{}(VarI2:SortInt{},VarC:SortInt{})), + \and{SortInt{}} ( + Lbl'Unds'-Int'Unds'{}(Lbl'Unds'-Int'Unds'{}(VarI1:SortInt{},VarI2:SortInt{}),VarC:SortInt{}), + \top{SortInt{}}()))) + [UNIQUE'Unds'ID{}("56750a45b2b2a148f36488eecc4e1f9b06a87aaf87f8d327a7d2ea64bb8e97a6"), concrete{}(VarI1:SortInt{},VarI2:SortInt{}), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1400,8,1400,50)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}(""), symbolic{}(VarC:SortInt{})] + +// rule `_-Int_`(I1,`_-Int_`(I2,C))=>`_+Int_`(`_-Int_`(I1,I2),C) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(e2166a2b9e9f92c4a42d187b79cc7cfffd29e649f29e5b5a880ca4a3a47bc215), concrete(I1, I2), org.kframework.attributes.Location(Location(1401,8,1401,50)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, symbolic(C)] + axiom{R} \implies{R} ( + \top{R}(), + \equals{SortInt{},R} ( + Lbl'Unds'-Int'Unds'{}(VarI1:SortInt{},Lbl'Unds'-Int'Unds'{}(VarI2:SortInt{},VarC:SortInt{})), + \and{SortInt{}} ( + Lbl'UndsPlus'Int'Unds'{}(Lbl'Unds'-Int'Unds'{}(VarI1:SortInt{},VarI2:SortInt{}),VarC:SortInt{}), + \top{SortInt{}}()))) + [UNIQUE'Unds'ID{}("e2166a2b9e9f92c4a42d187b79cc7cfffd29e649f29e5b5a880ca4a3a47bc215"), concrete{}(VarI1:SortInt{},VarI2:SortInt{}), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1401,8,1401,50)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}(""), symbolic{}(VarC:SortInt{})] + +// rule `_-Int_`(`_-Int_`(C,I2),I3)=>`_-Int_`(C,`_+Int_`(I2,I3)) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(8f97bbde4900d5ebbd39edd662bb87c3dbc0934fbe1f4db06d9a2050bd7a9a82), concrete(I2, I3), org.kframework.attributes.Location(Location(1402,8,1402,50)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification, symbolic(C)] + axiom{R} \implies{R} ( + \top{R}(), + \equals{SortInt{},R} ( + Lbl'Unds'-Int'Unds'{}(Lbl'Unds'-Int'Unds'{}(VarC:SortInt{},VarI2:SortInt{}),VarI3:SortInt{}), + \and{SortInt{}} ( + Lbl'Unds'-Int'Unds'{}(VarC:SortInt{},Lbl'UndsPlus'Int'Unds'{}(VarI2:SortInt{},VarI3:SortInt{})), + \top{SortInt{}}()))) + [UNIQUE'Unds'ID{}("8f97bbde4900d5ebbd39edd662bb87c3dbc0934fbe1f4db06d9a2050bd7a9a82"), concrete{}(VarI2:SortInt{},VarI3:SortInt{}), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1402,8,1402,50)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}(""), symbolic{}(VarC:SortInt{})] + +// rule `_<X requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(8b63843b7b419179c23c249a139981f1190cf52ec41e7e453e6d5edd73ff8725), org.kframework.attributes.Location(Location(1356,8,1356,22)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification] + axiom{R} \implies{R} ( + \top{R}(), + \equals{SortInt{},R} ( + Lbl'Unds-LT--LT-'Int'Unds'{}(VarX:SortInt{},\dv{SortInt{}}("0")), + \and{SortInt{}} ( + VarX:SortInt{}, + \top{SortInt{}}()))) + [UNIQUE'Unds'ID{}("8b63843b7b419179c23c249a139981f1190cf52ec41e7e453e6d5edd73ff8725"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1356,8,1356,22)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule `_<#token("0","Int") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(7df97c560c3aec2963fa8634969e665cf56694fd7f3aa22fb29f055b3e6a6cfe), org.kframework.attributes.Location(Location(1357,8,1357,22)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification] + axiom{R} \implies{R} ( + \top{R}(), + \equals{SortInt{},R} ( + Lbl'Unds-LT--LT-'Int'Unds'{}(\dv{SortInt{}}("0"),Var'Unds'Gen0:SortInt{}), + \and{SortInt{}} ( + \dv{SortInt{}}("0"), + \top{SortInt{}}()))) + [UNIQUE'Unds'ID{}("7df97c560c3aec2963fa8634969e665cf56694fd7f3aa22fb29f055b3e6a6cfe"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1357,8,1357,22)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule `_=/=Bool_`(B1,B2)=>`notBool_`(`_==Bool_`(B1,B2)) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(31fe72efcfddcd8588a11d9d10c1b1a9f96ae3da46b647d4cb9d1e8b1bd1654f), org.kframework.attributes.Location(Location(1150,8,1150,57)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortBool{}, R} ( + X0:SortBool{}, + VarB1:SortBool{} + ),\and{R} ( + \in{SortBool{}, R} ( + X1:SortBool{}, + VarB2:SortBool{} + ), + \top{R} () + ))), + \equals{SortBool{},R} ( + Lbl'UndsEqlsSlshEqls'Bool'Unds'{}(X0:SortBool{},X1:SortBool{}), + \and{SortBool{}} ( + LblnotBool'Unds'{}(Lbl'UndsEqlsEqls'Bool'Unds'{}(VarB1:SortBool{},VarB2:SortBool{})), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("31fe72efcfddcd8588a11d9d10c1b1a9f96ae3da46b647d4cb9d1e8b1bd1654f"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1150,8,1150,57)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)")] + +// rule `_=/=Int_`(I1,I2)=>`notBool_`(`_==Int_`(I1,I2)) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(4de6e05b11cdbed7ef5cb4c952127924661af4744c1e495370e1c8a962ba7be3), org.kframework.attributes.Location(Location(1429,8,1429,53)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortInt{}, R} ( + X0:SortInt{}, + VarI1:SortInt{} + ),\and{R} ( + \in{SortInt{}, R} ( + X1:SortInt{}, + VarI2:SortInt{} + ), + \top{R} () + ))), + \equals{SortBool{},R} ( + Lbl'UndsEqlsSlshEqls'Int'Unds'{}(X0:SortInt{},X1:SortInt{}), + \and{SortBool{}} ( + LblnotBool'Unds'{}(Lbl'UndsEqlsEqls'Int'Unds'{}(VarI1:SortInt{},VarI2:SortInt{})), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("4de6e05b11cdbed7ef5cb4c952127924661af4744c1e495370e1c8a962ba7be3"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1429,8,1429,53)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)")] + +// rule `_=/=K_`(K1,K2)=>`notBool_`(`_==K_`(K1,K2)) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(bccaba7335e4cd77501a0667f2f7b3eb4a2105d5f60d804915dd4b1b08902c0c), org.kframework.attributes.Location(Location(2307,8,2307,45)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + VarK1:SortK{} + ),\and{R} ( + \in{SortK{}, R} ( + X1:SortK{}, + VarK2:SortK{} + ), + \top{R} () + ))), + \equals{SortBool{},R} ( + Lbl'UndsEqlsSlshEqls'K'Unds'{}(X0:SortK{},X1:SortK{}), + \and{SortBool{}} ( + LblnotBool'Unds'{}(Lbl'UndsEqlsEqls'K'Unds'{}(VarK1:SortK{},VarK2:SortK{})), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("bccaba7335e4cd77501a0667f2f7b3eb4a2105d5f60d804915dd4b1b08902c0c"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(2307,8,2307,45)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)")] + +// rule `_==K_`(inj{Int,KItem}(I1),inj{Int,KItem}(I2))=>`_==Int_`(I1,I2) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(d95370e01038361235da9cb6be0a627d07365d6fbb0db1cb2214912410fb11a0), org.kframework.attributes.Location(Location(1380,8,1380,40)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification] + axiom{R} \implies{R} ( + \top{R}(), + \equals{SortBool{},R} ( + Lbl'UndsEqlsEqls'K'Unds'{}(kseq{}(inj{SortInt{}, SortKItem{}}(VarI1:SortInt{}),dotk{}()),kseq{}(inj{SortInt{}, SortKItem{}}(VarI2:SortInt{}),dotk{}())), + \and{SortBool{}} ( + Lbl'UndsEqlsEqls'Int'Unds'{}(VarI1:SortInt{},VarI2:SortInt{}), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("d95370e01038361235da9cb6be0a627d07365d6fbb0db1cb2214912410fb11a0"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1380,8,1380,40)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule `_==K_`(inj{Bool,KItem}(K1),inj{Bool,KItem}(K2))=>`_==Bool_`(K1,K2) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(2397e65cf548d4502dc45b4ec2578e036f0fbe6dadf1386d567be77e811975e2), org.kframework.attributes.Location(Location(2290,8,2290,43)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification] + axiom{R} \implies{R} ( + \top{R}(), + \equals{SortBool{},R} ( + Lbl'UndsEqlsEqls'K'Unds'{}(kseq{}(inj{SortBool{}, SortKItem{}}(VarK1:SortBool{}),dotk{}()),kseq{}(inj{SortBool{}, SortKItem{}}(VarK2:SortBool{}),dotk{}())), + \and{SortBool{}} ( + Lbl'UndsEqlsEqls'Bool'Unds'{}(VarK1:SortBool{},VarK2:SortBool{}), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("2397e65cf548d4502dc45b4ec2578e036f0fbe6dadf1386d567be77e811975e2"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(2290,8,2290,43)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule `_>=Int_`(A,B)=>`_<=Int_`(B,A) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(abac09336a3cbc3a36ec07e3dfa1757f32ba8643e2e498f797adee8a5d4affdc), org.kframework.attributes.Location(Location(22,19,22,42)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/imp-verification.k)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification] + axiom{R} \implies{R} ( + \top{R}(), + \equals{SortBool{},R} ( + Lbl'Unds-GT-Eqls'Int'Unds'{}(VarA:SortInt{},VarB:SortInt{}), + \and{SortBool{}} ( + Lbl'Unds-LT-Eqls'Int'Unds'{}(VarB:SortInt{},VarA:SortInt{}), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("abac09336a3cbc3a36ec07e3dfa1757f32ba8643e2e498f797adee8a5d4affdc"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(22,19,22,42)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/imp-verification.k)"), simplification{}("")] + +// rule `_>>Int_`(X,#token("0","Int"))=>X requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(afa10f58a41b4395b68f473579a1833eb2b310b16fa4bc45f363dd269b7f6088), org.kframework.attributes.Location(Location(1358,8,1358,22)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification] + axiom{R} \implies{R} ( + \top{R}(), + \equals{SortInt{},R} ( + Lbl'Unds-GT--GT-'Int'Unds'{}(VarX:SortInt{},\dv{SortInt{}}("0")), + \and{SortInt{}} ( + VarX:SortInt{}, + \top{SortInt{}}()))) + [UNIQUE'Unds'ID{}("afa10f58a41b4395b68f473579a1833eb2b310b16fa4bc45f363dd269b7f6088"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1358,8,1358,22)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule `_>>Int_`(#token("0","Int"),_Gen0)=>#token("0","Int") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(a156c8612a9d4dd3439eb2df95a172243c4c7cf248ac791810f01138ae7c1fc9), org.kframework.attributes.Location(Location(1359,8,1359,22)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification] + axiom{R} \implies{R} ( + \top{R}(), + \equals{SortInt{},R} ( + Lbl'Unds-GT--GT-'Int'Unds'{}(\dv{SortInt{}}("0"),Var'Unds'Gen0:SortInt{}), + \and{SortInt{}} ( + \dv{SortInt{}}("0"), + \top{SortInt{}}()))) + [UNIQUE'Unds'ID{}("a156c8612a9d4dd3439eb2df95a172243c4c7cf248ac791810f01138ae7c1fc9"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1359,8,1359,22)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule `_>Int_`(A,B)=>`__Gen1 requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(61fbef33b3611f1cc2aaf3b5e8ddec4a0f434c557278c38461c65c8722743497), org.kframework.attributes.Location(Location(1123,8,1123,37)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortBool{}, R} ( + X0:SortBool{}, + \and{SortBool{}}(\dv{SortBool{}}("false"),Var'Unds'Gen1:SortBool{}) + ),\and{R} ( + \in{SortBool{}, R} ( + X1:SortBool{}, + Var'Unds'Gen0:SortBool{} + ), + \top{R} () + ))), + \equals{SortBool{},R} ( + Lbl'Unds'andBool'Unds'{}(X0:SortBool{},X1:SortBool{}), + \and{SortBool{}} ( + Var'Unds'Gen1:SortBool{}, + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("61fbef33b3611f1cc2aaf3b5e8ddec4a0f434c557278c38461c65c8722743497"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1123,8,1123,37)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)")] + +// rule `_andBool_`(B,#token("true","Bool"))=>B requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(72139ee1f2b9362a47514de6503329ccf3c27e74e3ebfa0c0fe26321ec13f281), org.kframework.attributes.Location(Location(1122,8,1122,37)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification] + axiom{R} \implies{R} ( + \top{R}(), + \equals{SortBool{},R} ( + Lbl'Unds'andBool'Unds'{}(VarB:SortBool{},\dv{SortBool{}}("true")), + \and{SortBool{}} ( + VarB:SortBool{}, + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("72139ee1f2b9362a47514de6503329ccf3c27e74e3ebfa0c0fe26321ec13f281"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1122,8,1122,37)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule `_andBool_`(_Gen0,#token("false","Bool"))=>#token("false","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(fd61c826168aab115cd7f528702e8187ca16195bdcf29f42f33a32c83afebb12), org.kframework.attributes.Location(Location(1124,8,1124,37)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification] + axiom{R} \implies{R} ( + \top{R}(), + \equals{SortBool{},R} ( + Lbl'Unds'andBool'Unds'{}(Var'Unds'Gen0:SortBool{},\dv{SortBool{}}("false")), + \and{SortBool{}} ( + \dv{SortBool{}}("false"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("fd61c826168aab115cd7f528702e8187ca16195bdcf29f42f33a32c83afebb12"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1124,8,1124,37)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule `_andBool_`(#token("true","Bool"),B)=>B requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(5b9db8dba12010819161cc42dadccd0adf0100a47c21f884ae66c0a3d5483a1f), org.kframework.attributes.Location(Location(1121,8,1121,37)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortBool{}, R} ( + X0:SortBool{}, + \dv{SortBool{}}("true") + ),\and{R} ( + \in{SortBool{}, R} ( + X1:SortBool{}, + VarB:SortBool{} + ), + \top{R} () + ))), + \equals{SortBool{},R} ( + Lbl'Unds'andBool'Unds'{}(X0:SortBool{},X1:SortBool{}), + \and{SortBool{}} ( + VarB:SortBool{}, + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("5b9db8dba12010819161cc42dadccd0adf0100a47c21f884ae66c0a3d5483a1f"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1121,8,1121,37)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)")] + +// rule `_andThenBool_`(#token("false","Bool") #as _Gen1,_Gen0)=>_Gen1 requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(5b729746be7bf2183d9eff138d97078a7c9489def6d8b2e1495c41ce3954997d), org.kframework.attributes.Location(Location(1128,8,1128,36)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortBool{}, R} ( + X0:SortBool{}, + \and{SortBool{}}(\dv{SortBool{}}("false"),Var'Unds'Gen1:SortBool{}) + ),\and{R} ( + \in{SortBool{}, R} ( + X1:SortBool{}, + Var'Unds'Gen0:SortBool{} + ), + \top{R} () + ))), + \equals{SortBool{},R} ( + Lbl'Unds'andThenBool'Unds'{}(X0:SortBool{},X1:SortBool{}), + \and{SortBool{}} ( + Var'Unds'Gen1:SortBool{}, + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("5b729746be7bf2183d9eff138d97078a7c9489def6d8b2e1495c41ce3954997d"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1128,8,1128,36)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)")] + +// rule `_andThenBool_`(K,#token("true","Bool"))=>K requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(2cfb33affb9c668d39a4a7267156085e1dbd3584fc7925b1aa9a1672bb9eab9f), org.kframework.attributes.Location(Location(1127,8,1127,37)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification] + axiom{R} \implies{R} ( + \top{R}(), + \equals{SortBool{},R} ( + Lbl'Unds'andThenBool'Unds'{}(VarK:SortBool{},\dv{SortBool{}}("true")), + \and{SortBool{}} ( + VarK:SortBool{}, + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("2cfb33affb9c668d39a4a7267156085e1dbd3584fc7925b1aa9a1672bb9eab9f"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1127,8,1127,37)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule `_andThenBool_`(_Gen0,#token("false","Bool"))=>#token("false","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(198861009d03d8f5220000f16342962720be289ca0d49b12953fb2693e2fea01), org.kframework.attributes.Location(Location(1129,8,1129,36)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification] + axiom{R} \implies{R} ( + \top{R}(), + \equals{SortBool{},R} ( + Lbl'Unds'andThenBool'Unds'{}(Var'Unds'Gen0:SortBool{},\dv{SortBool{}}("false")), + \and{SortBool{}} ( + \dv{SortBool{}}("false"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("198861009d03d8f5220000f16342962720be289ca0d49b12953fb2693e2fea01"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1129,8,1129,36)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule `_andThenBool_`(#token("true","Bool"),K)=>K requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(78a3191cbbdec57b0f411f41291076c8124bb0d9b6b57905674b2c6858d78689), org.kframework.attributes.Location(Location(1126,8,1126,37)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortBool{}, R} ( + X0:SortBool{}, + \dv{SortBool{}}("true") + ),\and{R} ( + \in{SortBool{}, R} ( + X1:SortBool{}, + VarK:SortBool{} + ), + \top{R} () + ))), + \equals{SortBool{},R} ( + Lbl'Unds'andThenBool'Unds'{}(X0:SortBool{},X1:SortBool{}), + \and{SortBool{}} ( + VarK:SortBool{}, + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("78a3191cbbdec57b0f411f41291076c8124bb0d9b6b57905674b2c6858d78689"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1126,8,1126,37)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)")] + +// rule `_divInt_`(I1,I2)=>`_/Int_`(`_-Int_`(I1,`_modInt_`(I1,I2)),I2) requires `_=/=Int_`(I2,#token("0","Int")) ensures #token("true","Bool") [UNIQUE_ID(83dcf9bc8c69f131715bc7a92d06c99b9a2b5f4c4fdafb69e6fdb2f1822712d4), org.kframework.attributes.Location(Location(1418,8,1419,23)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody "requires" Bool [klabel(#ruleRequires), symbol])] + axiom{R} \implies{R} ( + \and{R}( + \equals{SortBool{},R}( + Lbl'UndsEqlsSlshEqls'Int'Unds'{}(VarI2:SortInt{},\dv{SortInt{}}("0")), + \dv{SortBool{}}("true")), + \and{R} ( + \in{SortInt{}, R} ( + X0:SortInt{}, + VarI1:SortInt{} + ),\and{R} ( + \in{SortInt{}, R} ( + X1:SortInt{}, + VarI2:SortInt{} + ), + \top{R} () + ))), + \equals{SortInt{},R} ( + Lbl'Unds'divInt'Unds'{}(X0:SortInt{},X1:SortInt{}), + \and{SortInt{}} ( + Lbl'UndsSlsh'Int'Unds'{}(Lbl'Unds'-Int'Unds'{}(VarI1:SortInt{},Lbl'Unds'modInt'Unds'{}(VarI1:SortInt{},VarI2:SortInt{})),VarI2:SortInt{}), + \top{SortInt{}}()))) + [UNIQUE'Unds'ID{}("83dcf9bc8c69f131715bc7a92d06c99b9a2b5f4c4fdafb69e6fdb2f1822712d4"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1418,8,1419,23)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)")] + +// rule `_dividesInt__INT-COMMON_Bool_Int_Int`(I1,I2)=>`_==Int_`(`_%Int_`(I2,I1),#token("0","Int")) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(fd8facae0061fe5bc5c406f7ad2ed5d8d21960bf1118c9b240451253064dadb5), org.kframework.attributes.Location(Location(1430,8,1430,58)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortInt{}, R} ( + X0:SortInt{}, + VarI1:SortInt{} + ),\and{R} ( + \in{SortInt{}, R} ( + X1:SortInt{}, + VarI2:SortInt{} + ), + \top{R} () + ))), + \equals{SortBool{},R} ( + Lbl'Unds'dividesInt'UndsUnds'INT-COMMON'Unds'Bool'Unds'Int'Unds'Int{}(X0:SortInt{},X1:SortInt{}), + \and{SortBool{}} ( + Lbl'UndsEqlsEqls'Int'Unds'{}(Lbl'UndsPerc'Int'Unds'{}(VarI2:SortInt{},VarI1:SortInt{}),\dv{SortInt{}}("0")), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("fd8facae0061fe5bc5c406f7ad2ed5d8d21960bf1118c9b240451253064dadb5"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1430,8,1430,58)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)")] + +// rule `_impliesBool_`(B,#token("false","Bool"))=>`notBool_`(B) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(93b8d798abd6d9999e0e733384ad161e9a0bd2f074623a742afdc63964380aba), org.kframework.attributes.Location(Location(1148,8,1148,45)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification] + axiom{R} \implies{R} ( + \top{R}(), + \equals{SortBool{},R} ( + Lbl'Unds'impliesBool'Unds'{}(VarB:SortBool{},\dv{SortBool{}}("false")), + \and{SortBool{}} ( + LblnotBool'Unds'{}(VarB:SortBool{}), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("93b8d798abd6d9999e0e733384ad161e9a0bd2f074623a742afdc63964380aba"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1148,8,1148,45)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule `_impliesBool_`(_Gen0,#token("true","Bool"))=>#token("true","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(2b4994db7b40b72dc09ac8d5d036263b215c37d45f45d764251d8b607a7592ba), org.kframework.attributes.Location(Location(1147,8,1147,39)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification] + axiom{R} \implies{R} ( + \top{R}(), + \equals{SortBool{},R} ( + Lbl'Unds'impliesBool'Unds'{}(Var'Unds'Gen0:SortBool{},\dv{SortBool{}}("true")), + \and{SortBool{}} ( + \dv{SortBool{}}("true"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("2b4994db7b40b72dc09ac8d5d036263b215c37d45f45d764251d8b607a7592ba"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1147,8,1147,39)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule `_impliesBool_`(#token("false","Bool"),_Gen0)=>#token("true","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(55bb5c83c9563c712537b95401c0a5c88255fd7cdbd18b2d4358c54aee80660e), org.kframework.attributes.Location(Location(1146,8,1146,40)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortBool{}, R} ( + X0:SortBool{}, + \dv{SortBool{}}("false") + ),\and{R} ( + \in{SortBool{}, R} ( + X1:SortBool{}, + Var'Unds'Gen0:SortBool{} + ), + \top{R} () + ))), + \equals{SortBool{},R} ( + Lbl'Unds'impliesBool'Unds'{}(X0:SortBool{},X1:SortBool{}), + \and{SortBool{}} ( + \dv{SortBool{}}("true"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("55bb5c83c9563c712537b95401c0a5c88255fd7cdbd18b2d4358c54aee80660e"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1146,8,1146,40)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)")] + +// rule `_impliesBool_`(#token("true","Bool"),B)=>B requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(da818c43c21c5fb2cced7e02a74b6b4191d323de2967a671b961ad28550f3c7d), org.kframework.attributes.Location(Location(1145,8,1145,36)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortBool{}, R} ( + X0:SortBool{}, + \dv{SortBool{}}("true") + ),\and{R} ( + \in{SortBool{}, R} ( + X1:SortBool{}, + VarB:SortBool{} + ), + \top{R} () + ))), + \equals{SortBool{},R} ( + Lbl'Unds'impliesBool'Unds'{}(X0:SortBool{},X1:SortBool{}), + \and{SortBool{}} ( + VarB:SortBool{}, + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("da818c43c21c5fb2cced7e02a74b6b4191d323de2967a671b961ad28550f3c7d"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1145,8,1145,36)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)")] + +// rule `_modInt_`(I1,I2)=>`_%Int_`(`_+Int_`(`_%Int_`(I1,`absInt(_)_INT-COMMON_Int_Int`(I2)),`absInt(_)_INT-COMMON_Int_Int`(I2)),`absInt(_)_INT-COMMON_Int_Int`(I2)) requires `_=/=Int_`(I2,#token("0","Int")) ensures #token("true","Bool") [UNIQUE_ID(44257f63a99a0583c2d10058edbff90118966e30914b3a637b8315212c681bc4), concrete, org.kframework.attributes.Location(Location(1421,5,1424,23)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody "requires" Bool [klabel(#ruleRequires), symbol]), simplification] + axiom{R} \implies{R} ( + \equals{SortBool{},R}( + Lbl'UndsEqlsSlshEqls'Int'Unds'{}(VarI2:SortInt{},\dv{SortInt{}}("0")), + \dv{SortBool{}}("true")), + \equals{SortInt{},R} ( + Lbl'Unds'modInt'Unds'{}(VarI1:SortInt{},VarI2:SortInt{}), + \and{SortInt{}} ( + Lbl'UndsPerc'Int'Unds'{}(Lbl'UndsPlus'Int'Unds'{}(Lbl'UndsPerc'Int'Unds'{}(VarI1:SortInt{},LblabsInt'LParUndsRParUnds'INT-COMMON'Unds'Int'Unds'Int{}(VarI2:SortInt{})),LblabsInt'LParUndsRParUnds'INT-COMMON'Unds'Int'Unds'Int{}(VarI2:SortInt{})),LblabsInt'LParUndsRParUnds'INT-COMMON'Unds'Int'Unds'Int{}(VarI2:SortInt{})), + \top{SortInt{}}()))) + [UNIQUE'Unds'ID{}("44257f63a99a0583c2d10058edbff90118966e30914b3a637b8315212c681bc4"), concrete{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1421,5,1424,23)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule `_modInt_`(X,N)=>X requires `_andBool_`(`_<=Int_`(#token("0","Int"),X),`_B requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(a5bb27ab54700cb845d17b12e0b0a4cbd5c8944272bcbe0d15ccc0b44d0049ff), org.kframework.attributes.Location(Location(1138,8,1138,32)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification] + axiom{R} \implies{R} ( + \top{R}(), + \equals{SortBool{},R} ( + Lbl'Unds'orBool'Unds'{}(VarB:SortBool{},\dv{SortBool{}}("false")), + \and{SortBool{}} ( + VarB:SortBool{}, + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("a5bb27ab54700cb845d17b12e0b0a4cbd5c8944272bcbe0d15ccc0b44d0049ff"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1138,8,1138,32)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule `_orBool_`(_Gen0,#token("true","Bool"))=>#token("true","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(942af273100b5a3c1fb3d0c8cc92b0bf845a7b34444c5a6c35b7d3fe72bef48e), org.kframework.attributes.Location(Location(1136,8,1136,34)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification] + axiom{R} \implies{R} ( + \top{R}(), + \equals{SortBool{},R} ( + Lbl'Unds'orBool'Unds'{}(Var'Unds'Gen0:SortBool{},\dv{SortBool{}}("true")), + \and{SortBool{}} ( + \dv{SortBool{}}("true"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("942af273100b5a3c1fb3d0c8cc92b0bf845a7b34444c5a6c35b7d3fe72bef48e"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1136,8,1136,34)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule `_orBool_`(#token("false","Bool"),B)=>B requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(991a3290bc7b6dca75d676a72a848ec6b2bd2827fb0e9626252aa1507394ca1b), org.kframework.attributes.Location(Location(1137,8,1137,32)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortBool{}, R} ( + X0:SortBool{}, + \dv{SortBool{}}("false") + ),\and{R} ( + \in{SortBool{}, R} ( + X1:SortBool{}, + VarB:SortBool{} + ), + \top{R} () + ))), + \equals{SortBool{},R} ( + Lbl'Unds'orBool'Unds'{}(X0:SortBool{},X1:SortBool{}), + \and{SortBool{}} ( + VarB:SortBool{}, + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("991a3290bc7b6dca75d676a72a848ec6b2bd2827fb0e9626252aa1507394ca1b"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1137,8,1137,32)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)")] + +// rule `_orBool_`(#token("true","Bool"),_Gen0)=>#token("true","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(71744528cdad83bc729990d3af3b544d27b09630b2615ca707dd2fc6ec93e7c2), org.kframework.attributes.Location(Location(1135,8,1135,34)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortBool{}, R} ( + X0:SortBool{}, + \dv{SortBool{}}("true") + ),\and{R} ( + \in{SortBool{}, R} ( + X1:SortBool{}, + Var'Unds'Gen0:SortBool{} + ), + \top{R} () + ))), + \equals{SortBool{},R} ( + Lbl'Unds'orBool'Unds'{}(X0:SortBool{},X1:SortBool{}), + \and{SortBool{}} ( + \dv{SortBool{}}("true"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("71744528cdad83bc729990d3af3b544d27b09630b2615ca707dd2fc6ec93e7c2"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1135,8,1135,34)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)")] + +// rule `_orElseBool_`(K,#token("false","Bool"))=>K requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(13cf42d440f9a7a360a8136ee4b35ae7b99501f515322d214c3b866691f4713b), org.kframework.attributes.Location(Location(1143,8,1143,37)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification] + axiom{R} \implies{R} ( + \top{R}(), + \equals{SortBool{},R} ( + Lbl'Unds'orElseBool'Unds'{}(VarK:SortBool{},\dv{SortBool{}}("false")), + \and{SortBool{}} ( + VarK:SortBool{}, + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("13cf42d440f9a7a360a8136ee4b35ae7b99501f515322d214c3b866691f4713b"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1143,8,1143,37)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule `_orElseBool_`(_Gen0,#token("true","Bool"))=>#token("true","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(2459cad4fbb946a5c7f71565601afeeec79f05f41497b1f7ef547578c88f3158), org.kframework.attributes.Location(Location(1141,8,1141,33)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification] + axiom{R} \implies{R} ( + \top{R}(), + \equals{SortBool{},R} ( + Lbl'Unds'orElseBool'Unds'{}(Var'Unds'Gen0:SortBool{},\dv{SortBool{}}("true")), + \and{SortBool{}} ( + \dv{SortBool{}}("true"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("2459cad4fbb946a5c7f71565601afeeec79f05f41497b1f7ef547578c88f3158"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1141,8,1141,33)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule `_orElseBool_`(#token("false","Bool"),K)=>K requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(eb8c85dac19a5951f694b65269c2b17c80d6d126d6a367958e4a5d736a880ecf), org.kframework.attributes.Location(Location(1142,8,1142,37)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortBool{}, R} ( + X0:SortBool{}, + \dv{SortBool{}}("false") + ),\and{R} ( + \in{SortBool{}, R} ( + X1:SortBool{}, + VarK:SortBool{} + ), + \top{R} () + ))), + \equals{SortBool{},R} ( + Lbl'Unds'orElseBool'Unds'{}(X0:SortBool{},X1:SortBool{}), + \and{SortBool{}} ( + VarK:SortBool{}, + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("eb8c85dac19a5951f694b65269c2b17c80d6d126d6a367958e4a5d736a880ecf"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1142,8,1142,37)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)")] + +// rule `_orElseBool_`(#token("true","Bool"),_Gen0)=>#token("true","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(354bd0860c7f38b59e285c935fd2ea553ebddbabb4973342ad25f0dac6ea7bf6), org.kframework.attributes.Location(Location(1140,8,1140,33)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortBool{}, R} ( + X0:SortBool{}, + \dv{SortBool{}}("true") + ),\and{R} ( + \in{SortBool{}, R} ( + X1:SortBool{}, + Var'Unds'Gen0:SortBool{} + ), + \top{R} () + ))), + \equals{SortBool{},R} ( + Lbl'Unds'orElseBool'Unds'{}(X0:SortBool{},X1:SortBool{}), + \and{SortBool{}} ( + \dv{SortBool{}}("true"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("354bd0860c7f38b59e285c935fd2ea553ebddbabb4973342ad25f0dac6ea7bf6"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1140,8,1140,33)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)")] + +// rule `_xorBool_`(B,B)=>#token("false","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(9a6d91cd75cd777b0d4db536b3e4b20578e74fe650e644b55294da95fd2dba7f), org.kframework.attributes.Location(Location(1133,8,1133,38)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortBool{}, R} ( + X0:SortBool{}, + VarB:SortBool{} + ),\and{R} ( + \in{SortBool{}, R} ( + X1:SortBool{}, + VarB:SortBool{} + ), + \top{R} () + ))), + \equals{SortBool{},R} ( + Lbl'Unds'xorBool'Unds'{}(X0:SortBool{},X1:SortBool{}), + \and{SortBool{}} ( + \dv{SortBool{}}("false"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("9a6d91cd75cd777b0d4db536b3e4b20578e74fe650e644b55294da95fd2dba7f"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1133,8,1133,38)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)")] + +// rule `_xorBool_`(B,#token("false","Bool"))=>B requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(69f518203376930fb76ce51df5dd0c6c81d19f71eba3a1852afa5301d02eb4fa), org.kframework.attributes.Location(Location(1132,8,1132,38)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification] + axiom{R} \implies{R} ( + \top{R}(), + \equals{SortBool{},R} ( + Lbl'Unds'xorBool'Unds'{}(VarB:SortBool{},\dv{SortBool{}}("false")), + \and{SortBool{}} ( + VarB:SortBool{}, + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("69f518203376930fb76ce51df5dd0c6c81d19f71eba3a1852afa5301d02eb4fa"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1132,8,1132,38)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)"), simplification{}("")] + +// rule `_xorBool_`(#token("false","Bool"),B)=>B requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(73513655c09a595907ab9d26d67e27f01d14a3435743b77000c02d10f35c05bf), org.kframework.attributes.Location(Location(1131,8,1131,38)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortBool{}, R} ( + X0:SortBool{}, + \dv{SortBool{}}("false") + ),\and{R} ( + \in{SortBool{}, R} ( + X1:SortBool{}, + VarB:SortBool{} + ), + \top{R} () + ))), + \equals{SortBool{},R} ( + Lbl'Unds'xorBool'Unds'{}(X0:SortBool{},X1:SortBool{}), + \and{SortBool{}} ( + VarB:SortBool{}, + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("73513655c09a595907ab9d26d67e27f01d14a3435743b77000c02d10f35c05bf"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1131,8,1131,38)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)")] + +// rule `_|Set__SET_Set_Set_Set`(S1,S2)=>`_Set_`(S1,`Set:difference`(S2,S1)) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(c384edb8f3875244a593dda6163c3dee1bce5485e4e1848892aebc2bab67d2e9), concrete, org.kframework.attributes.Location(Location(749,8,749,45)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortSet{}, R} ( + X0:SortSet{}, + VarS1:SortSet{} + ),\and{R} ( + \in{SortSet{}, R} ( + X1:SortSet{}, + VarS2:SortSet{} + ), + \top{R} () + ))), + \equals{SortSet{},R} ( + Lbl'UndsPipe'Set'UndsUnds'SET'Unds'Set'Unds'Set'Unds'Set{}(X0:SortSet{},X1:SortSet{}), + \and{SortSet{}} ( + Lbl'Unds'Set'Unds'{}(VarS1:SortSet{},LblSet'Coln'difference{}(VarS2:SortSet{},VarS1:SortSet{})), + \top{SortSet{}}()))) + [UNIQUE'Unds'ID{}("c384edb8f3875244a593dda6163c3dee1bce5485e4e1848892aebc2bab67d2e9"), concrete{}(), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(749,8,749,45)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)")] + +// rule `bitRangeInt(_,_,_)_INT-COMMON_Int_Int_Int_Int`(I,IDX,LEN)=>`_modInt_`(`_>>Int_`(I,IDX),`_<I requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(cf2cb8f038b4bdc4edb1334a3b8ced9cd296a7af43f0a1916e082a4e1aefa08b), org.kframework.attributes.Location(Location(1433,8,1433,28)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortInt{}, R} ( + X0:SortInt{}, + VarI:SortInt{} + ), + \top{R} () + )), + \equals{SortInt{},R} ( + LblfreshInt'LParUndsRParUnds'INT'Unds'Int'Unds'Int{}(X0:SortInt{}), + \and{SortInt{}} ( + VarI:SortInt{}, + \top{SortInt{}}()))) + [UNIQUE'Unds'ID{}("cf2cb8f038b4bdc4edb1334a3b8ced9cd296a7af43f0a1916e082a4e1aefa08b"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1433,8,1433,28)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)")] + +// rule getGeneratedCounterCell(``(_Gen0,_Gen1,Cell))=>Cell requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(6aaa6e2dcc27f3f1c36a11a988ed5674f7b6892c35cde7937bcb682488aaf8e1)] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortGeneratedTopCell{}, R} ( + X0:SortGeneratedTopCell{}, + Lbl'-LT-'generatedTop'-GT-'{}(Var'Unds'Gen0:SortKCell{},Var'Unds'Gen1:SortEnvCell{},VarCell:SortGeneratedCounterCell{}) + ), + \top{R} () + )), + \equals{SortGeneratedCounterCell{},R} ( + LblgetGeneratedCounterCell{}(X0:SortGeneratedTopCell{}), + \and{SortGeneratedCounterCell{}} ( + VarCell:SortGeneratedCounterCell{}, + \top{SortGeneratedCounterCell{}}()))) + [UNIQUE'Unds'ID{}("6aaa6e2dcc27f3f1c36a11a988ed5674f7b6892c35cde7937bcb682488aaf8e1")] + +// rule initEnvCell(.KList)=>``(`.Map`(.KList)) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(00d428bbba5e1be4a85aba1c6d8e92413cb67f2b9e9b8fc00940b647db49b07a), initializer] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + + \top{R} () + ), + \equals{SortEnvCell{},R} ( + LblinitEnvCell{}(), + \and{SortEnvCell{}} ( + Lbl'-LT-'env'-GT-'{}(Lbl'Stop'Map{}()), + \top{SortEnvCell{}}()))) + [UNIQUE'Unds'ID{}("00d428bbba5e1be4a85aba1c6d8e92413cb67f2b9e9b8fc00940b647db49b07a")] + +// rule initGeneratedCounterCell(.KList)=>``(#token("0","Int")) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(5de11f6b50c4684c0e05b773f809d756f4ce9c03a4f24e23a9cddaf3fa31f553), initializer] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + + \top{R} () + ), + \equals{SortGeneratedCounterCell{},R} ( + LblinitGeneratedCounterCell{}(), + \and{SortGeneratedCounterCell{}} ( + Lbl'-LT-'generatedCounter'-GT-'{}(\dv{SortInt{}}("0")), + \top{SortGeneratedCounterCell{}}()))) + [UNIQUE'Unds'ID{}("5de11f6b50c4684c0e05b773f809d756f4ce9c03a4f24e23a9cddaf3fa31f553")] + +// rule initGeneratedTopCell(Init)=>``(initKCell(Init),initEnvCell(.KList),initGeneratedCounterCell(.KList)) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(c395d83b9ef61851b100a9d372375a1e0c15ef1d5514a9e6f0b9cd3bea558bb1), initializer] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortMap{}, R} ( + X0:SortMap{}, + VarInit:SortMap{} + ), + \top{R} () + )), + \equals{SortGeneratedTopCell{},R} ( + LblinitGeneratedTopCell{}(X0:SortMap{}), + \and{SortGeneratedTopCell{}} ( + Lbl'-LT-'generatedTop'-GT-'{}(LblinitKCell{}(VarInit:SortMap{}),LblinitEnvCell{}(),LblinitGeneratedCounterCell{}()), + \top{SortGeneratedTopCell{}}()))) + [UNIQUE'Unds'ID{}("c395d83b9ef61851b100a9d372375a1e0c15ef1d5514a9e6f0b9cd3bea558bb1")] + +// rule initKCell(Init)=>``(inj{Stmt,KItem}(`project:Stmt`(`Map:lookup`(Init,inj{KConfigVar,KItem}(#token("$PGM","KConfigVar")))))) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(22d54eca8d9ac85f814b9c78605ed3331a8a4d463df4bf0fa35d2c76bafb8855), initializer] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortMap{}, R} ( + X0:SortMap{}, + VarInit:SortMap{} + ), + \top{R} () + )), + \equals{SortKCell{},R} ( + LblinitKCell{}(X0:SortMap{}), + \and{SortKCell{}} ( + Lbl'-LT-'k'-GT-'{}(kseq{}(inj{SortStmt{}, SortKItem{}}(Lblproject'Coln'Stmt{}(kseq{}(LblMap'Coln'lookup{}(VarInit:SortMap{},inj{SortKConfigVar{}, SortKItem{}}(\dv{SortKConfigVar{}}("$PGM"))),dotk{}()))),dotk{}())), + \top{SortKCell{}}()))) + [UNIQUE'Unds'ID{}("22d54eca8d9ac85f814b9c78605ed3331a8a4d463df4bf0fa35d2c76bafb8855")] + +// rule isBool(K)=>#token("false","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(495da551d13b205c8648618471ccfca028707f98eff21e6b11d591515ed6f29a), owise] + axiom{R} \implies{R} ( + \and{R} ( + \not{R} ( + \or{R} ( + \exists{R} (Var'Unds'Gen1:SortBool{}, + \and{R} ( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortBool{}, SortKItem{}}(Var'Unds'Gen1:SortBool{}),dotk{}()) + ), + \top{R} () + ) + )), + \bottom{R}() + ) + ), + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + VarK:SortK{} + ), + \top{R} () + ) + )), + \equals{SortBool{},R} ( + LblisBool{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("false"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("495da551d13b205c8648618471ccfca028707f98eff21e6b11d591515ed6f29a"), owise{}()] + +// rule isBool(inj{Bool,KItem}(Bool))=>#token("true","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(dadad716b2f6a82fa4b2cc8f903a1b8f1f6e8cfa63f18b72a7cb35110bdcff77)] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortBool{}, SortKItem{}}(VarBool:SortBool{}),dotk{}()) + ), + \top{R} () + )), + \equals{SortBool{},R} ( + LblisBool{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("true"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("dadad716b2f6a82fa4b2cc8f903a1b8f1f6e8cfa63f18b72a7cb35110bdcff77")] + +// rule isEnvCell(K)=>#token("false","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(0ea3a5b7b3f4dc34d9889f17680151db49c6d6fc19a17b1348b455ddb604f032), owise] + axiom{R} \implies{R} ( + \and{R} ( + \not{R} ( + \or{R} ( + \exists{R} (Var'Unds'Gen1:SortEnvCell{}, + \and{R} ( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortEnvCell{}, SortKItem{}}(Var'Unds'Gen1:SortEnvCell{}),dotk{}()) + ), + \top{R} () + ) + )), + \bottom{R}() + ) + ), + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + VarK:SortK{} + ), + \top{R} () + ) + )), + \equals{SortBool{},R} ( + LblisEnvCell{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("false"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("0ea3a5b7b3f4dc34d9889f17680151db49c6d6fc19a17b1348b455ddb604f032"), owise{}()] + +// rule isEnvCell(inj{EnvCell,KItem}(EnvCell))=>#token("true","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(b5df359932869a7148a60c91069b0bd8bd4c747deff9948cc9b5abe368811236)] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortEnvCell{}, SortKItem{}}(VarEnvCell:SortEnvCell{}),dotk{}()) + ), + \top{R} () + )), + \equals{SortBool{},R} ( + LblisEnvCell{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("true"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("b5df359932869a7148a60c91069b0bd8bd4c747deff9948cc9b5abe368811236")] + +// rule isEnvCellOpt(K)=>#token("false","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(1ba556a2b4b2fbf1f2cf6e1cee435b70544fd47a8753b3a1abbfafc6f7132dc4), owise] + axiom{R} \implies{R} ( + \and{R} ( + \not{R} ( + \or{R} ( + \exists{R} (Var'Unds'Gen0:SortEnvCellOpt{}, + \and{R} ( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortEnvCellOpt{}, SortKItem{}}(Var'Unds'Gen0:SortEnvCellOpt{}),dotk{}()) + ), + \top{R} () + ) + )), + \bottom{R}() + ) + ), + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + VarK:SortK{} + ), + \top{R} () + ) + )), + \equals{SortBool{},R} ( + LblisEnvCellOpt{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("false"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("1ba556a2b4b2fbf1f2cf6e1cee435b70544fd47a8753b3a1abbfafc6f7132dc4"), owise{}()] + +// rule isEnvCellOpt(inj{EnvCellOpt,KItem}(EnvCellOpt))=>#token("true","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(7d5b22845313dff6f784ac0e578d3b7433b454aa2be3a9a6d389705cbbd1c0dc)] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortEnvCellOpt{}, SortKItem{}}(VarEnvCellOpt:SortEnvCellOpt{}),dotk{}()) + ), + \top{R} () + )), + \equals{SortBool{},R} ( + LblisEnvCellOpt{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("true"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("7d5b22845313dff6f784ac0e578d3b7433b454aa2be3a9a6d389705cbbd1c0dc")] + +// rule isExpr(K)=>#token("false","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(c28e8e24f4d9e64e41e5715e6ae45e3f4e24b035b7936355a03ed0495c558f96), owise] + axiom{R} \implies{R} ( + \and{R} ( + \not{R} ( + \or{R} ( + \exists{R} (Var'Unds'Gen1:SortExpr{}, + \and{R} ( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortExpr{}, SortKItem{}}(Var'Unds'Gen1:SortExpr{}),dotk{}()) + ), + \top{R} () + ) + )), + \bottom{R}() + ) + ), + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + VarK:SortK{} + ), + \top{R} () + ) + )), + \equals{SortBool{},R} ( + LblisExpr{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("false"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("c28e8e24f4d9e64e41e5715e6ae45e3f4e24b035b7936355a03ed0495c558f96"), owise{}()] + +// rule isExpr(inj{Expr,KItem}(Expr))=>#token("true","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(31c5697905a5072b33602934f29bc6a8a3fb87ef33eb6fd4b094c560bf5c96b4)] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortExpr{}, SortKItem{}}(VarExpr:SortExpr{}),dotk{}()) + ), + \top{R} () + )), + \equals{SortBool{},R} ( + LblisExpr{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("true"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("31c5697905a5072b33602934f29bc6a8a3fb87ef33eb6fd4b094c560bf5c96b4")] + +// rule isGeneratedCounterCell(K)=>#token("false","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(b0c8eb86594a387398bf96f2dbf773cff29d14b8a45c5f6701f205bf3d2f33ba), owise] + axiom{R} \implies{R} ( + \and{R} ( + \not{R} ( + \or{R} ( + \exists{R} (Var'Unds'Gen0:SortGeneratedCounterCell{}, + \and{R} ( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortGeneratedCounterCell{}, SortKItem{}}(Var'Unds'Gen0:SortGeneratedCounterCell{}),dotk{}()) + ), + \top{R} () + ) + )), + \bottom{R}() + ) + ), + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + VarK:SortK{} + ), + \top{R} () + ) + )), + \equals{SortBool{},R} ( + LblisGeneratedCounterCell{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("false"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("b0c8eb86594a387398bf96f2dbf773cff29d14b8a45c5f6701f205bf3d2f33ba"), owise{}()] + +// rule isGeneratedCounterCell(inj{GeneratedCounterCell,KItem}(GeneratedCounterCell))=>#token("true","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(f7b6a3dbee5a80d5eeba727f40009876995660d4052a45fc50c55f88c5fc1a7c)] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortGeneratedCounterCell{}, SortKItem{}}(VarGeneratedCounterCell:SortGeneratedCounterCell{}),dotk{}()) + ), + \top{R} () + )), + \equals{SortBool{},R} ( + LblisGeneratedCounterCell{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("true"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("f7b6a3dbee5a80d5eeba727f40009876995660d4052a45fc50c55f88c5fc1a7c")] + +// rule isGeneratedTopCell(K)=>#token("false","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(ccb9226d9e6c0e476485f098ef162c6c2206ed3af1d8336ea3ae859b86bc4a8b), owise] + axiom{R} \implies{R} ( + \and{R} ( + \not{R} ( + \or{R} ( + \exists{R} (Var'Unds'Gen1:SortGeneratedTopCell{}, + \and{R} ( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortGeneratedTopCell{}, SortKItem{}}(Var'Unds'Gen1:SortGeneratedTopCell{}),dotk{}()) + ), + \top{R} () + ) + )), + \bottom{R}() + ) + ), + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + VarK:SortK{} + ), + \top{R} () + ) + )), + \equals{SortBool{},R} ( + LblisGeneratedTopCell{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("false"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("ccb9226d9e6c0e476485f098ef162c6c2206ed3af1d8336ea3ae859b86bc4a8b"), owise{}()] + +// rule isGeneratedTopCell(inj{GeneratedTopCell,KItem}(GeneratedTopCell))=>#token("true","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(3bcf423225700e329d0533cfd806eb9bab91f9d8de0979c8d8e381fe5d076bb2)] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortGeneratedTopCell{}, SortKItem{}}(VarGeneratedTopCell:SortGeneratedTopCell{}),dotk{}()) + ), + \top{R} () + )), + \equals{SortBool{},R} ( + LblisGeneratedTopCell{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("true"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("3bcf423225700e329d0533cfd806eb9bab91f9d8de0979c8d8e381fe5d076bb2")] + +// rule isGeneratedTopCellFragment(K)=>#token("false","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(98049f5819962c7ee2b01436957b6cf8460b106979fa2c24f4c606bbf6cb1592), owise] + axiom{R} \implies{R} ( + \and{R} ( + \not{R} ( + \or{R} ( + \exists{R} (Var'Unds'Gen1:SortGeneratedTopCellFragment{}, + \and{R} ( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortGeneratedTopCellFragment{}, SortKItem{}}(Var'Unds'Gen1:SortGeneratedTopCellFragment{}),dotk{}()) + ), + \top{R} () + ) + )), + \bottom{R}() + ) + ), + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + VarK:SortK{} + ), + \top{R} () + ) + )), + \equals{SortBool{},R} ( + LblisGeneratedTopCellFragment{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("false"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("98049f5819962c7ee2b01436957b6cf8460b106979fa2c24f4c606bbf6cb1592"), owise{}()] + +// rule isGeneratedTopCellFragment(inj{GeneratedTopCellFragment,KItem}(GeneratedTopCellFragment))=>#token("true","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(559f2cdc0ab425bb065cc3174f4a1af4d9ca834f762a814cf3dfbf9a9d7f8271)] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortGeneratedTopCellFragment{}, SortKItem{}}(VarGeneratedTopCellFragment:SortGeneratedTopCellFragment{}),dotk{}()) + ), + \top{R} () + )), + \equals{SortBool{},R} ( + LblisGeneratedTopCellFragment{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("true"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("559f2cdc0ab425bb065cc3174f4a1af4d9ca834f762a814cf3dfbf9a9d7f8271")] + +// rule isId(K)=>#token("false","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(f37abe49c9a4ee52b56a492679d7aab25802b3c05860fee32a4a09d72b2a322f), owise] + axiom{R} \implies{R} ( + \and{R} ( + \not{R} ( + \or{R} ( + \exists{R} (Var'Unds'Gen1:SortId{}, + \and{R} ( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortId{}, SortKItem{}}(Var'Unds'Gen1:SortId{}),dotk{}()) + ), + \top{R} () + ) + )), + \bottom{R}() + ) + ), + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + VarK:SortK{} + ), + \top{R} () + ) + )), + \equals{SortBool{},R} ( + LblisId{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("false"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("f37abe49c9a4ee52b56a492679d7aab25802b3c05860fee32a4a09d72b2a322f"), owise{}()] + +// rule isId(inj{Id,KItem}(Id))=>#token("true","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(f024b5fa3f428dab8c832862d8a13219a64369be25641326400611b32ae8843d)] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortId{}, SortKItem{}}(VarId:SortId{}),dotk{}()) + ), + \top{R} () + )), + \equals{SortBool{},R} ( + LblisId{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("true"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("f024b5fa3f428dab8c832862d8a13219a64369be25641326400611b32ae8843d")] + +// rule isInt(K)=>#token("false","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(105572a4ac107eeb518b37c4d6ed3e28732b83afb0ba085d02d339c4fc2140a0), owise] + axiom{R} \implies{R} ( + \and{R} ( + \not{R} ( + \or{R} ( + \exists{R} (Var'Unds'Gen1:SortInt{}, + \and{R} ( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortInt{}, SortKItem{}}(Var'Unds'Gen1:SortInt{}),dotk{}()) + ), + \top{R} () + ) + )), + \bottom{R}() + ) + ), + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + VarK:SortK{} + ), + \top{R} () + ) + )), + \equals{SortBool{},R} ( + LblisInt{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("false"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("105572a4ac107eeb518b37c4d6ed3e28732b83afb0ba085d02d339c4fc2140a0"), owise{}()] + +// rule isInt(inj{Int,KItem}(Int))=>#token("true","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(92664aa821c8898ff16b4e72ad0bdf363f755c7660d28dcb69c129a2c94bc6b5)] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortInt{}, SortKItem{}}(VarInt:SortInt{}),dotk{}()) + ), + \top{R} () + )), + \equals{SortBool{},R} ( + LblisInt{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("true"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("92664aa821c8898ff16b4e72ad0bdf363f755c7660d28dcb69c129a2c94bc6b5")] + +// rule isK(K)=>#token("true","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(16ff77cff0ef50026a8b3f4614b87bda465701918596b7ad2280baffff56f847)] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + VarK:SortK{} + ), + \top{R} () + )), + \equals{SortBool{},R} ( + LblisK{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("true"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("16ff77cff0ef50026a8b3f4614b87bda465701918596b7ad2280baffff56f847")] + +// rule isKCell(K)=>#token("false","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(d30be57718b4b3745eaf2e99f875cfec7d5be2ff76bacde8a89bd4ab659d857f), owise] + axiom{R} \implies{R} ( + \and{R} ( + \not{R} ( + \or{R} ( + \exists{R} (Var'Unds'Gen1:SortKCell{}, + \and{R} ( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortKCell{}, SortKItem{}}(Var'Unds'Gen1:SortKCell{}),dotk{}()) + ), + \top{R} () + ) + )), + \bottom{R}() + ) + ), + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + VarK:SortK{} + ), + \top{R} () + ) + )), + \equals{SortBool{},R} ( + LblisKCell{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("false"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("d30be57718b4b3745eaf2e99f875cfec7d5be2ff76bacde8a89bd4ab659d857f"), owise{}()] + +// rule isKCell(inj{KCell,KItem}(KCell))=>#token("true","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(2695222b1238f711f8a356c0a1bc0ac418d7bd78fd3282e7c60882e2631a46df)] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortKCell{}, SortKItem{}}(VarKCell:SortKCell{}),dotk{}()) + ), + \top{R} () + )), + \equals{SortBool{},R} ( + LblisKCell{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("true"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("2695222b1238f711f8a356c0a1bc0ac418d7bd78fd3282e7c60882e2631a46df")] + +// rule isKCellOpt(K)=>#token("false","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(9a3f84195242c98b432c7c63a4189f4276cc3189445c5cf37ce08d9a6547b1f7), owise] + axiom{R} \implies{R} ( + \and{R} ( + \not{R} ( + \or{R} ( + \exists{R} (Var'Unds'Gen0:SortKCellOpt{}, + \and{R} ( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortKCellOpt{}, SortKItem{}}(Var'Unds'Gen0:SortKCellOpt{}),dotk{}()) + ), + \top{R} () + ) + )), + \bottom{R}() + ) + ), + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + VarK:SortK{} + ), + \top{R} () + ) + )), + \equals{SortBool{},R} ( + LblisKCellOpt{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("false"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("9a3f84195242c98b432c7c63a4189f4276cc3189445c5cf37ce08d9a6547b1f7"), owise{}()] + +// rule isKCellOpt(inj{KCellOpt,KItem}(KCellOpt))=>#token("true","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(1516473b1e153a368c273997543a4378ad451e5e828db8e289f4447f7e5228a5)] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortKCellOpt{}, SortKItem{}}(VarKCellOpt:SortKCellOpt{}),dotk{}()) + ), + \top{R} () + )), + \equals{SortBool{},R} ( + LblisKCellOpt{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("true"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("1516473b1e153a368c273997543a4378ad451e5e828db8e289f4447f7e5228a5")] + +// rule isKConfigVar(K)=>#token("false","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(f68a616e301c35586f68e97b729ae274278c3ef8fe6634711cfd3e1746bc0bc2), owise] + axiom{R} \implies{R} ( + \and{R} ( + \not{R} ( + \or{R} ( + \exists{R} (Var'Unds'Gen1:SortKConfigVar{}, + \and{R} ( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortKConfigVar{}, SortKItem{}}(Var'Unds'Gen1:SortKConfigVar{}),dotk{}()) + ), + \top{R} () + ) + )), + \bottom{R}() + ) + ), + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + VarK:SortK{} + ), + \top{R} () + ) + )), + \equals{SortBool{},R} ( + LblisKConfigVar{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("false"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("f68a616e301c35586f68e97b729ae274278c3ef8fe6634711cfd3e1746bc0bc2"), owise{}()] + +// rule isKConfigVar(inj{KConfigVar,KItem}(KConfigVar))=>#token("true","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(0ef0a00bb321f2c2a62a3239327de70ecb8e907a950cd20034c46b84e040ebcd)] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortKConfigVar{}, SortKItem{}}(VarKConfigVar:SortKConfigVar{}),dotk{}()) + ), + \top{R} () + )), + \equals{SortBool{},R} ( + LblisKConfigVar{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("true"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("0ef0a00bb321f2c2a62a3239327de70ecb8e907a950cd20034c46b84e040ebcd")] + +// rule isKItem(K)=>#token("false","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(83812b6b9e31a764d66d89fd1c7e65b9b162d52c5aebfe99b1536e200a9590c2), owise] + axiom{R} \implies{R} ( + \and{R} ( + \not{R} ( + \or{R} ( + \exists{R} (Var'Unds'Gen1:SortKItem{}, + \and{R} ( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(Var'Unds'Gen1:SortKItem{},dotk{}()) + ), + \top{R} () + ) + )), + \bottom{R}() + ) + ), + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + VarK:SortK{} + ), + \top{R} () + ) + )), + \equals{SortBool{},R} ( + LblisKItem{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("false"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("83812b6b9e31a764d66d89fd1c7e65b9b162d52c5aebfe99b1536e200a9590c2"), owise{}()] + +// rule isKItem(KItem)=>#token("true","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(ed3c25a7dab5e5fbc101589e2fa74ac91aa107f051d22a01378222d08643373c)] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(VarKItem:SortKItem{},dotk{}()) + ), + \top{R} () + )), + \equals{SortBool{},R} ( + LblisKItem{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("true"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("ed3c25a7dab5e5fbc101589e2fa74ac91aa107f051d22a01378222d08643373c")] + +// rule isKResult(K)=>#token("false","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(afefecb36598372bc1ba6e5d0b24a00b91796244dc3bd7435e40ca6e9ab33d4b), owise] + axiom{R} \implies{R} ( + \and{R} ( + \not{R} ( + \or{R} ( + \exists{R} (Var'Unds'Gen1:SortKResult{}, + \and{R} ( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortKResult{}, SortKItem{}}(Var'Unds'Gen1:SortKResult{}),dotk{}()) + ), + \top{R} () + ) + )), + \bottom{R}() + ) + ), + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + VarK:SortK{} + ), + \top{R} () + ) + )), + \equals{SortBool{},R} ( + LblisKResult{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("false"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("afefecb36598372bc1ba6e5d0b24a00b91796244dc3bd7435e40ca6e9ab33d4b"), owise{}()] + +// rule isKResult(inj{KResult,KItem}(KResult))=>#token("true","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee)] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortKResult{}, SortKItem{}}(VarKResult:SortKResult{}),dotk{}()) + ), + \top{R} () + )), + \equals{SortBool{},R} ( + LblisKResult{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("true"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee")] + +// rule isList(K)=>#token("false","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(9a9489adcf0279eca74c012bb1130bb9d30372cfbebc8e4ab4b173656c4d6613), owise] + axiom{R} \implies{R} ( + \and{R} ( + \not{R} ( + \or{R} ( + \exists{R} (Var'Unds'Gen0:SortList{}, + \and{R} ( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortList{}, SortKItem{}}(Var'Unds'Gen0:SortList{}),dotk{}()) + ), + \top{R} () + ) + )), + \bottom{R}() + ) + ), + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + VarK:SortK{} + ), + \top{R} () + ) + )), + \equals{SortBool{},R} ( + LblisList{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("false"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("9a9489adcf0279eca74c012bb1130bb9d30372cfbebc8e4ab4b173656c4d6613"), owise{}()] + +// rule isList(inj{List,KItem}(List))=>#token("true","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(7d4dddf5bbdb61cfd11fb9be1071be7bd551cf186607cf6f493cfade3221c446)] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortList{}, SortKItem{}}(VarList:SortList{}),dotk{}()) + ), + \top{R} () + )), + \equals{SortBool{},R} ( + LblisList{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("true"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("7d4dddf5bbdb61cfd11fb9be1071be7bd551cf186607cf6f493cfade3221c446")] + +// rule isMap(K)=>#token("false","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(6f30a2087d0b19640df005437bc3f4665f41282666a72821b17b16c99ed5afee), owise] + axiom{R} \implies{R} ( + \and{R} ( + \not{R} ( + \or{R} ( + \exists{R} (Var'Unds'Gen1:SortMap{}, + \and{R} ( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortMap{}, SortKItem{}}(Var'Unds'Gen1:SortMap{}),dotk{}()) + ), + \top{R} () + ) + )), + \bottom{R}() + ) + ), + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + VarK:SortK{} + ), + \top{R} () + ) + )), + \equals{SortBool{},R} ( + LblisMap{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("false"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("6f30a2087d0b19640df005437bc3f4665f41282666a72821b17b16c99ed5afee"), owise{}()] + +// rule isMap(inj{Map,KItem}(Map))=>#token("true","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(4879c0fcf6b7d7f3d6b751e4f460f8dced005a44ae5ff600cffcea784cf58795)] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortMap{}, SortKItem{}}(VarMap:SortMap{}),dotk{}()) + ), + \top{R} () + )), + \equals{SortBool{},R} ( + LblisMap{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("true"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("4879c0fcf6b7d7f3d6b751e4f460f8dced005a44ae5ff600cffcea784cf58795")] + +// rule isSet(K)=>#token("false","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(2b5aadccd9b89faba72816867187d48d279d8c27c8bda1a1b3b0658bd82bb783), owise] + axiom{R} \implies{R} ( + \and{R} ( + \not{R} ( + \or{R} ( + \exists{R} (Var'Unds'Gen0:SortSet{}, + \and{R} ( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortSet{}, SortKItem{}}(Var'Unds'Gen0:SortSet{}),dotk{}()) + ), + \top{R} () + ) + )), + \bottom{R}() + ) + ), + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + VarK:SortK{} + ), + \top{R} () + ) + )), + \equals{SortBool{},R} ( + LblisSet{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("false"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("2b5aadccd9b89faba72816867187d48d279d8c27c8bda1a1b3b0658bd82bb783"), owise{}()] + +// rule isSet(inj{Set,KItem}(Set))=>#token("true","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(f205bc460bdb728b4c3458643699be30d519db4d8b13e80e2c27082b9e846e80)] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortSet{}, SortKItem{}}(VarSet:SortSet{}),dotk{}()) + ), + \top{R} () + )), + \equals{SortBool{},R} ( + LblisSet{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("true"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("f205bc460bdb728b4c3458643699be30d519db4d8b13e80e2c27082b9e846e80")] + +// rule isStmt(K)=>#token("false","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(c458a8054966aa2159c80ce75561c1552b43a1862b38e89b3e2679f8bd5c1c0c), owise] + axiom{R} \implies{R} ( + \and{R} ( + \not{R} ( + \or{R} ( + \exists{R} (Var'Unds'Gen1:SortStmt{}, + \and{R} ( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortStmt{}, SortKItem{}}(Var'Unds'Gen1:SortStmt{}),dotk{}()) + ), + \top{R} () + ) + )), + \bottom{R}() + ) + ), + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + VarK:SortK{} + ), + \top{R} () + ) + )), + \equals{SortBool{},R} ( + LblisStmt{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("false"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("c458a8054966aa2159c80ce75561c1552b43a1862b38e89b3e2679f8bd5c1c0c"), owise{}()] + +// rule isStmt(inj{Stmt,KItem}(Stmt))=>#token("true","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(477089570fa6db8ee9dc9b0dc4c87d68cd3cc0589ba3949a5eb4981db25246df)] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortStmt{}, SortKItem{}}(VarStmt:SortStmt{}),dotk{}()) + ), + \top{R} () + )), + \equals{SortBool{},R} ( + LblisStmt{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("true"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("477089570fa6db8ee9dc9b0dc4c87d68cd3cc0589ba3949a5eb4981db25246df")] + +// rule isValue(K)=>#token("false","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(e1c3d8f84a5535821a251de38966e902787453318cf21af48e4aeeffa596419a), owise] + axiom{R} \implies{R} ( + \and{R} ( + \not{R} ( + \or{R} ( + \exists{R} (Var'Unds'Gen0:SortValue{}, + \and{R} ( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortValue{}, SortKItem{}}(Var'Unds'Gen0:SortValue{}),dotk{}()) + ), + \top{R} () + ) + )), + \bottom{R}() + ) + ), + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + VarK:SortK{} + ), + \top{R} () + ) + )), + \equals{SortBool{},R} ( + LblisValue{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("false"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("e1c3d8f84a5535821a251de38966e902787453318cf21af48e4aeeffa596419a"), owise{}()] + +// rule isValue(inj{Value,KItem}(Value))=>#token("true","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(be6b96173e9ad5902e6a98060e5132ea93f1247be9ff30866f953e5a991e758a)] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortValue{}, SortKItem{}}(VarValue:SortValue{}),dotk{}()) + ), + \top{R} () + )), + \equals{SortBool{},R} ( + LblisValue{}(X0:SortK{}), + \and{SortBool{}} ( + \dv{SortBool{}}("true"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("be6b96173e9ad5902e6a98060e5132ea93f1247be9ff30866f953e5a991e758a")] + +// rule `minInt(_,_)_INT-COMMON_Int_Int_Int`(I1,I2)=>I1 requires `_<=Int_`(I1,I2) ensures #token("true","Bool") [UNIQUE_ID(fb09b6acc4366cb77203e07c4efe8a9cf304e1bac9fb0664deea05d3eb9a80c6), org.kframework.attributes.Location(Location(1426,8,1426,57)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody "requires" Bool [klabel(#ruleRequires), symbol])] + axiom{R} \implies{R} ( + \and{R}( + \equals{SortBool{},R}( + Lbl'Unds-LT-Eqls'Int'Unds'{}(VarI1:SortInt{},VarI2:SortInt{}), + \dv{SortBool{}}("true")), + \and{R} ( + \in{SortInt{}, R} ( + X0:SortInt{}, + VarI1:SortInt{} + ),\and{R} ( + \in{SortInt{}, R} ( + X1:SortInt{}, + VarI2:SortInt{} + ), + \top{R} () + ))), + \equals{SortInt{},R} ( + LblminInt'LParUndsCommUndsRParUnds'INT-COMMON'Unds'Int'Unds'Int'Unds'Int{}(X0:SortInt{},X1:SortInt{}), + \and{SortInt{}} ( + VarI1:SortInt{}, + \top{SortInt{}}()))) + [UNIQUE'Unds'ID{}("fb09b6acc4366cb77203e07c4efe8a9cf304e1bac9fb0664deea05d3eb9a80c6"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1426,8,1426,57)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)")] + +// rule `minInt(_,_)_INT-COMMON_Int_Int_Int`(I1,I2)=>I2 requires `_>=Int_`(I1,I2) ensures #token("true","Bool") [UNIQUE_ID(e1effeabf96bb3a3beffd5b679ad5df95c4f8bbf42872b0793331e52a8470fb3), org.kframework.attributes.Location(Location(1427,8,1427,57)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody "requires" Bool [klabel(#ruleRequires), symbol])] + axiom{R} \implies{R} ( + \and{R}( + \equals{SortBool{},R}( + Lbl'Unds-GT-Eqls'Int'Unds'{}(VarI1:SortInt{},VarI2:SortInt{}), + \dv{SortBool{}}("true")), + \and{R} ( + \in{SortInt{}, R} ( + X0:SortInt{}, + VarI1:SortInt{} + ),\and{R} ( + \in{SortInt{}, R} ( + X1:SortInt{}, + VarI2:SortInt{} + ), + \top{R} () + ))), + \equals{SortInt{},R} ( + LblminInt'LParUndsCommUndsRParUnds'INT-COMMON'Unds'Int'Unds'Int'Unds'Int{}(X0:SortInt{},X1:SortInt{}), + \and{SortInt{}} ( + VarI2:SortInt{}, + \top{SortInt{}}()))) + [UNIQUE'Unds'ID{}("e1effeabf96bb3a3beffd5b679ad5df95c4f8bbf42872b0793331e52a8470fb3"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1427,8,1427,57)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)")] + +// rule `notBool_`(`_<=Int_`(A,B))=>`_`_<=Int_`(B,A) requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(cb079e42f8993a0cf744fd4996fa1635f79ecc3e07cf441d3d0b743da4b9b43f), org.kframework.attributes.Location(Location(23,10,23,42)), org.kframework.attributes.Source(Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/imp-verification.k)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol]), simplification] + axiom{R} \implies{R} ( + \top{R}(), + \equals{SortBool{},R} ( + LblnotBool'Unds'{}(Lbl'Unds-LT-'Int'Unds'{}(VarA:SortInt{},VarB:SortInt{})), + \and{SortBool{}} ( + Lbl'Unds-LT-Eqls'Int'Unds'{}(VarB:SortInt{},VarA:SortInt{}), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("cb079e42f8993a0cf744fd4996fa1635f79ecc3e07cf441d3d0b743da4b9b43f"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(23,10,23,42)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/imp-verification.k)"), simplification{}("")] + +// rule `notBool_`(#token("false","Bool"))=>#token("true","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(17ebc68421572b8ebe609c068fb49cbb6cbbe3246e2142257ad8befdda38f415), org.kframework.attributes.Location(Location(1119,8,1119,29)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortBool{}, R} ( + X0:SortBool{}, + \dv{SortBool{}}("false") + ), + \top{R} () + )), + \equals{SortBool{},R} ( + LblnotBool'Unds'{}(X0:SortBool{}), + \and{SortBool{}} ( + \dv{SortBool{}}("true"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("17ebc68421572b8ebe609c068fb49cbb6cbbe3246e2142257ad8befdda38f415"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1119,8,1119,29)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)")] + +// rule `notBool_`(#token("true","Bool"))=>#token("false","Bool") requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(53fc758ece1ff16581673016dfacc556cc30fcf6b3c35b586f001d76a1f9336c), org.kframework.attributes.Location(Location(1118,8,1118,29)), org.kframework.attributes.Source(Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)), org.kframework.definition.Production(syntax #RuleContent ::= #RuleBody [klabel(#ruleNoConditions), symbol])] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortBool{}, R} ( + X0:SortBool{}, + \dv{SortBool{}}("true") + ), + \top{R} () + )), + \equals{SortBool{},R} ( + LblnotBool'Unds'{}(X0:SortBool{}), + \and{SortBool{}} ( + \dv{SortBool{}}("false"), + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("53fc758ece1ff16581673016dfacc556cc30fcf6b3c35b586f001d76a1f9336c"), org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(1118,8,1118,29)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/nix/store/2vammij6ks103bd2hf40rwxkj5c3g796-k-6.3.25-aceff4aac9bdd69b4443cce5fb5c96ca6c15c761/include/kframework/builtin/domains.md)")] + +// rule `project:Bool`(inj{Bool,KItem}(K))=>K requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(5872f0d5b8131216db7bc41e2c3a423e55f4b8581589fcbd1bf93b2ca6862d54), projection] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortBool{}, SortKItem{}}(VarK:SortBool{}),dotk{}()) + ), + \top{R} () + )), + \equals{SortBool{},R} ( + Lblproject'Coln'Bool{}(X0:SortK{}), + \and{SortBool{}} ( + VarK:SortBool{}, + \top{SortBool{}}()))) + [UNIQUE'Unds'ID{}("5872f0d5b8131216db7bc41e2c3a423e55f4b8581589fcbd1bf93b2ca6862d54")] + +// rule `project:EnvCell`(inj{EnvCell,KItem}(K))=>K requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(b495a73a47df541669cce91cff95ac71b4384f2bb1cbf111a39169996baf1c21), projection] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortEnvCell{}, SortKItem{}}(VarK:SortEnvCell{}),dotk{}()) + ), + \top{R} () + )), + \equals{SortEnvCell{},R} ( + Lblproject'Coln'EnvCell{}(X0:SortK{}), + \and{SortEnvCell{}} ( + VarK:SortEnvCell{}, + \top{SortEnvCell{}}()))) + [UNIQUE'Unds'ID{}("b495a73a47df541669cce91cff95ac71b4384f2bb1cbf111a39169996baf1c21")] + +// rule `project:EnvCellOpt`(inj{EnvCellOpt,KItem}(K))=>K requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(7b2185a82b0e56376fb20fa807d804be6799099fe18bf708a6578fc25d98742c), projection] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortEnvCellOpt{}, SortKItem{}}(VarK:SortEnvCellOpt{}),dotk{}()) + ), + \top{R} () + )), + \equals{SortEnvCellOpt{},R} ( + Lblproject'Coln'EnvCellOpt{}(X0:SortK{}), + \and{SortEnvCellOpt{}} ( + VarK:SortEnvCellOpt{}, + \top{SortEnvCellOpt{}}()))) + [UNIQUE'Unds'ID{}("7b2185a82b0e56376fb20fa807d804be6799099fe18bf708a6578fc25d98742c")] + +// rule `project:Expr`(inj{Expr,KItem}(K))=>K requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(b0287590689cac0295505f65d981263cb11066c9fd8f2c68a0c9644733441f74), projection] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortExpr{}, SortKItem{}}(VarK:SortExpr{}),dotk{}()) + ), + \top{R} () + )), + \equals{SortExpr{},R} ( + Lblproject'Coln'Expr{}(X0:SortK{}), + \and{SortExpr{}} ( + VarK:SortExpr{}, + \top{SortExpr{}}()))) + [UNIQUE'Unds'ID{}("b0287590689cac0295505f65d981263cb11066c9fd8f2c68a0c9644733441f74")] + +// rule `project:GeneratedCounterCell`(inj{GeneratedCounterCell,KItem}(K))=>K requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(63453db9d9aa121b63bb877e2fa4998d399ef82d2a1e4b90f87a32ba55401217), projection] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortGeneratedCounterCell{}, SortKItem{}}(VarK:SortGeneratedCounterCell{}),dotk{}()) + ), + \top{R} () + )), + \equals{SortGeneratedCounterCell{},R} ( + Lblproject'Coln'GeneratedCounterCell{}(X0:SortK{}), + \and{SortGeneratedCounterCell{}} ( + VarK:SortGeneratedCounterCell{}, + \top{SortGeneratedCounterCell{}}()))) + [UNIQUE'Unds'ID{}("63453db9d9aa121b63bb877e2fa4998d399ef82d2a1e4b90f87a32ba55401217")] + +// rule `project:GeneratedTopCell`(inj{GeneratedTopCell,KItem}(K))=>K requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(b0fabd8c7c81fe08ebd569aff59747d357e441ae1fcd05d9d594d57e38e3d55e), projection] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortGeneratedTopCell{}, SortKItem{}}(VarK:SortGeneratedTopCell{}),dotk{}()) + ), + \top{R} () + )), + \equals{SortGeneratedTopCell{},R} ( + Lblproject'Coln'GeneratedTopCell{}(X0:SortK{}), + \and{SortGeneratedTopCell{}} ( + VarK:SortGeneratedTopCell{}, + \top{SortGeneratedTopCell{}}()))) + [UNIQUE'Unds'ID{}("b0fabd8c7c81fe08ebd569aff59747d357e441ae1fcd05d9d594d57e38e3d55e")] + +// rule `project:GeneratedTopCellFragment`(inj{GeneratedTopCellFragment,KItem}(K))=>K requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(2084fac322aa142a07f881814b8a286bf62d5c6d05777b7aa715ccc534cf9a42), projection] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortGeneratedTopCellFragment{}, SortKItem{}}(VarK:SortGeneratedTopCellFragment{}),dotk{}()) + ), + \top{R} () + )), + \equals{SortGeneratedTopCellFragment{},R} ( + Lblproject'Coln'GeneratedTopCellFragment{}(X0:SortK{}), + \and{SortGeneratedTopCellFragment{}} ( + VarK:SortGeneratedTopCellFragment{}, + \top{SortGeneratedTopCellFragment{}}()))) + [UNIQUE'Unds'ID{}("2084fac322aa142a07f881814b8a286bf62d5c6d05777b7aa715ccc534cf9a42")] + +// rule `project:Id`(inj{Id,KItem}(K))=>K requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(afcb3941b7c18d4b91d6ed8981582d58e0dc006425e9889e9891c2a7c2b93554), projection] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortId{}, SortKItem{}}(VarK:SortId{}),dotk{}()) + ), + \top{R} () + )), + \equals{SortId{},R} ( + Lblproject'Coln'Id{}(X0:SortK{}), + \and{SortId{}} ( + VarK:SortId{}, + \top{SortId{}}()))) + [UNIQUE'Unds'ID{}("afcb3941b7c18d4b91d6ed8981582d58e0dc006425e9889e9891c2a7c2b93554")] + +// rule `project:Int`(inj{Int,KItem}(K))=>K requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(f316b871091516c401f1d2382cc5f66322602b782c7b01e1aeb6c2ddab50e24b), projection] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortInt{}, SortKItem{}}(VarK:SortInt{}),dotk{}()) + ), + \top{R} () + )), + \equals{SortInt{},R} ( + Lblproject'Coln'Int{}(X0:SortK{}), + \and{SortInt{}} ( + VarK:SortInt{}, + \top{SortInt{}}()))) + [UNIQUE'Unds'ID{}("f316b871091516c401f1d2382cc5f66322602b782c7b01e1aeb6c2ddab50e24b")] + +// rule `project:K`(K)=>K requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(25b529ddcefd25ef63f99a62040145ef27638e7679ea9202218fe14be98dff3a), projection] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + VarK:SortK{} + ), + \top{R} () + )), + \equals{SortK{},R} ( + Lblproject'Coln'K{}(X0:SortK{}), + \and{SortK{}} ( + VarK:SortK{}, + \top{SortK{}}()))) + [UNIQUE'Unds'ID{}("25b529ddcefd25ef63f99a62040145ef27638e7679ea9202218fe14be98dff3a")] + +// rule `project:KCell`(inj{KCell,KItem}(K))=>K requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(894c13c4c410f11e35bc3781505aeddde4ff400ddda1daf8b35259dbf0de9a24), projection] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortKCell{}, SortKItem{}}(VarK:SortKCell{}),dotk{}()) + ), + \top{R} () + )), + \equals{SortKCell{},R} ( + Lblproject'Coln'KCell{}(X0:SortK{}), + \and{SortKCell{}} ( + VarK:SortKCell{}, + \top{SortKCell{}}()))) + [UNIQUE'Unds'ID{}("894c13c4c410f11e35bc3781505aeddde4ff400ddda1daf8b35259dbf0de9a24")] + +// rule `project:KCellOpt`(inj{KCellOpt,KItem}(K))=>K requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(f684dd78d97feadf0cbcb3cbb8892e0842f137c7b29a904cb2f3fc9755b29b30), projection] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortKCellOpt{}, SortKItem{}}(VarK:SortKCellOpt{}),dotk{}()) + ), + \top{R} () + )), + \equals{SortKCellOpt{},R} ( + Lblproject'Coln'KCellOpt{}(X0:SortK{}), + \and{SortKCellOpt{}} ( + VarK:SortKCellOpt{}, + \top{SortKCellOpt{}}()))) + [UNIQUE'Unds'ID{}("f684dd78d97feadf0cbcb3cbb8892e0842f137c7b29a904cb2f3fc9755b29b30")] + +// rule `project:KItem`(K)=>K requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(1242e49c17638c9a66a35e3bb8c237288f7e9aa9a6499101e8cdc55be320cd29), projection] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(VarK:SortKItem{},dotk{}()) + ), + \top{R} () + )), + \equals{SortKItem{},R} ( + Lblproject'Coln'KItem{}(X0:SortK{}), + \and{SortKItem{}} ( + VarK:SortKItem{}, + \top{SortKItem{}}()))) + [UNIQUE'Unds'ID{}("1242e49c17638c9a66a35e3bb8c237288f7e9aa9a6499101e8cdc55be320cd29")] + +// rule `project:KResult`(inj{KResult,KItem}(K))=>K requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(07a916f84d6294528a6d07f273fb778b316d52b4ef8204a1817b105750b2b734), projection] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortKResult{}, SortKItem{}}(VarK:SortKResult{}),dotk{}()) + ), + \top{R} () + )), + \equals{SortKResult{},R} ( + Lblproject'Coln'KResult{}(X0:SortK{}), + \and{SortKResult{}} ( + VarK:SortKResult{}, + \top{SortKResult{}}()))) + [UNIQUE'Unds'ID{}("07a916f84d6294528a6d07f273fb778b316d52b4ef8204a1817b105750b2b734")] + +// rule `project:List`(inj{List,KItem}(K))=>K requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(2b75eac5a59779d336e6cf9632bf9ba7d67286f322e753108b34e62f2443efe5), projection] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortList{}, SortKItem{}}(VarK:SortList{}),dotk{}()) + ), + \top{R} () + )), + \equals{SortList{},R} ( + Lblproject'Coln'List{}(X0:SortK{}), + \and{SortList{}} ( + VarK:SortList{}, + \top{SortList{}}()))) + [UNIQUE'Unds'ID{}("2b75eac5a59779d336e6cf9632bf9ba7d67286f322e753108b34e62f2443efe5")] + +// rule `project:Map`(inj{Map,KItem}(K))=>K requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(031237d4aae58d86914d6370d37ccd15f4738378ed780333c59cc81b4f7bc598), projection] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortMap{}, SortKItem{}}(VarK:SortMap{}),dotk{}()) + ), + \top{R} () + )), + \equals{SortMap{},R} ( + Lblproject'Coln'Map{}(X0:SortK{}), + \and{SortMap{}} ( + VarK:SortMap{}, + \top{SortMap{}}()))) + [UNIQUE'Unds'ID{}("031237d4aae58d86914d6370d37ccd15f4738378ed780333c59cc81b4f7bc598")] + +// rule `project:Set`(inj{Set,KItem}(K))=>K requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(0e7f5070c993161786e314f7199d985afebac9e07b5c784f6f623780c60ce9d0), projection] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortSet{}, SortKItem{}}(VarK:SortSet{}),dotk{}()) + ), + \top{R} () + )), + \equals{SortSet{},R} ( + Lblproject'Coln'Set{}(X0:SortK{}), + \and{SortSet{}} ( + VarK:SortSet{}, + \top{SortSet{}}()))) + [UNIQUE'Unds'ID{}("0e7f5070c993161786e314f7199d985afebac9e07b5c784f6f623780c60ce9d0")] + +// rule `project:Stmt`(inj{Stmt,KItem}(K))=>K requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(dea7f879e640dc866a6ac853d51a70b1ded2d1fda72c3c4a7fbded3b9e6e2500), projection] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortStmt{}, SortKItem{}}(VarK:SortStmt{}),dotk{}()) + ), + \top{R} () + )), + \equals{SortStmt{},R} ( + Lblproject'Coln'Stmt{}(X0:SortK{}), + \and{SortStmt{}} ( + VarK:SortStmt{}, + \top{SortStmt{}}()))) + [UNIQUE'Unds'ID{}("dea7f879e640dc866a6ac853d51a70b1ded2d1fda72c3c4a7fbded3b9e6e2500")] + +// rule `project:Value`(inj{Value,KItem}(K))=>K requires #token("true","Bool") ensures #token("true","Bool") [UNIQUE_ID(4257d48656c7a4bf6f38a0d886dbc8bb6bbd4699c574e33d06758072043e08c2), projection] + axiom{R} \implies{R} ( + \and{R}( + \top{R}(), + \and{R} ( + \in{SortK{}, R} ( + X0:SortK{}, + kseq{}(inj{SortValue{}, SortKItem{}}(VarK:SortValue{}),dotk{}()) + ), + \top{R} () + )), + \equals{SortValue{},R} ( + Lblproject'Coln'Value{}(X0:SortK{}), + \and{SortValue{}} ( + VarK:SortValue{}, + \top{SortValue{}}()))) + [UNIQUE'Unds'ID{}("4257d48656c7a4bf6f38a0d886dbc8bb6bbd4699c574e33d06758072043e08c2")] + +// rule `signExtendBitRangeInt(_,_,_)_INT-COMMON_Int_Int_Int_Int`(I,IDX,LEN)=>`_-Int_`(`_modInt_`(`_+Int_`(`bitRangeInt(_,_,_)_INT-COMMON_Int_Int_Int_Int`(I,IDX,LEN),`_<_`(@K0,@K1),@Rest))=>#And{#SortParam}(#Equals{Bool,#SortParam}(`_in_keys(_)_MAP_Bool_KItem_Map`(@K0,@Rest),#token("false","Bool")),#And{#SortParam}(#Top{#SortParam}(.KList),#Ceil{KItem,#SortParam}(@K1))) requires #token("true","Bool") ensures #token("true","Bool") [simplification, sortParams({Q0})] + axiom{R,Q0} \implies{R} ( + \top{R}(), + \equals{Q0,R} ( + \ceil{SortMap{}, Q0}(Lbl'Unds'Map'Unds'{}(Lbl'UndsPipe'-'-GT-Unds'{}(@VarK0:SortKItem{},@VarK1:SortKItem{}),@VarRest:SortMap{})), + \and{Q0} ( + \and{Q0}(\equals{SortBool{}, Q0}(Lbl'Unds'in'Unds'keys'LParUndsRParUnds'MAP'Unds'Bool'Unds'KItem'Unds'Map{}(@VarK0:SortKItem{},@VarRest:SortMap{}),\dv{SortBool{}}("false")),\and{Q0}(\top{Q0}(),\ceil{SortKItem{}, Q0}(@VarK1:SortKItem{}))), + \top{Q0}()))) + [simplification{}("")] + +endmodule [org'Stop'kframework'Stop'attributes'Stop'Location{}("Location(16,1,26,10)"), org'Stop'kframework'Stop'attributes'Stop'Source{}("Source(/private/tmp/kbuild-imp-semantics-jvusku_f/imp-semantics/include/imp-semantics/imp-verification.k)")] diff --git a/booster/test/rpc-integration/test-log-simplify-json/README.md b/booster/test/rpc-integration/test-log-simplify-json/README.md new file mode 100644 index 0000000000..7118e23ade --- /dev/null +++ b/booster/test/rpc-integration/test-log-simplify-json/README.md @@ -0,0 +1,7 @@ +# Testing logging of equations as JSON + +This test sends the request to execute a part of an IMP semantics proof. +The `kore-rpc-booster` server is expected to be started with `--log-format json -l Simplify --log-file test-log-simplify-json/simplify-log.txt`, which ensures that the equation simplification logs are collected by both Booster and Kore and emitted into a file. The log file is compared to `simplify-log.golden.txt`. + +Note: this test may turn out to be flaky, as the logs are sensitive to which equations fail to apply in Booster and why. + diff --git a/booster/test/rpc-integration/test-log-simplify-json/simplify-log.txt.golden b/booster/test/rpc-integration/test-log-simplify-json/simplify-log.txt.golden new file mode 100644 index 0000000000..fd8c7bead1 --- /dev/null +++ b/booster/test/rpc-integration/test-log-simplify-json/simplify-log.txt.golden @@ -0,0 +1,80 @@ +{"context":["booster","execute",{"term":"4b03f8b"},{"rewrite":"2821768ca76231d9d23da884f160f8a8a67b03f3575f41bd4fc76649c39a94fb"},"constraint",{"term":"a2a070a"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"detail"],"message":"UNKNOWN"} +{"context":["booster","execute",{"term":"4b03f8b"},{"rewrite":"2821768ca76231d9d23da884f160f8a8a67b03f3575f41bd4fc76649c39a94fb"},"constraint",{"term":"a2a070a"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"match","failure"],"message":"Sorts differ: Eq#VarKResult:SortKResult{} !__EXPRESSIONS-SYNTAX_Expr_Expr(_<=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr(\"$n\", \"0\"))"} +{"context":["booster","execute",{"term":"4b03f8b"},{"rewrite":"2821768ca76231d9d23da884f160f8a8a67b03f3575f41bd4fc76649c39a94fb"},"constraint",{"term":"a2a070a"},{"function":"afefecb36598372bc1ba6e5d0b24a00b91796244dc3bd7435e40ca6e9ab33d4b"},"detail"],"message":"UNKNOWN"} +{"context":["booster","execute",{"term":"4b03f8b"},{"rewrite":"2821768ca76231d9d23da884f160f8a8a67b03f3575f41bd4fc76649c39a94fb"},"constraint",{"term":"a2a070a"},{"function":"afefecb36598372bc1ba6e5d0b24a00b91796244dc3bd7435e40ca6e9ab33d4b"},"success",{"term":"9eb81e8"},"kore-term"],"message":{"format":"KORE","version":1,"term":{"tag":"DV","sort":{"tag":"SortApp","name":"SortBool","args":[]},"value":"false"}}} +{"context":["booster","execute",{"term":"2fbed22"},{"rewrite":"95ae0624ed05bd9fda100afe3522e14997852a9753240caa90be72f16a32414f"},"constraint",{"term":"f67b89d"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"detail"],"message":"UNKNOWN"} +{"context":["booster","execute",{"term":"2fbed22"},{"rewrite":"95ae0624ed05bd9fda100afe3522e14997852a9753240caa90be72f16a32414f"},"constraint",{"term":"f67b89d"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"match","failure"],"message":"Sorts differ: Eq#VarKResult:SortKResult{} _<=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr(\"$n\", \"0\")"} +{"context":["booster","execute",{"term":"2fbed22"},{"rewrite":"95ae0624ed05bd9fda100afe3522e14997852a9753240caa90be72f16a32414f"},"constraint",{"term":"f67b89d"},{"function":"afefecb36598372bc1ba6e5d0b24a00b91796244dc3bd7435e40ca6e9ab33d4b"},"detail"],"message":"UNKNOWN"} +{"context":["booster","execute",{"term":"2fbed22"},{"rewrite":"95ae0624ed05bd9fda100afe3522e14997852a9753240caa90be72f16a32414f"},"constraint",{"term":"f67b89d"},{"function":"afefecb36598372bc1ba6e5d0b24a00b91796244dc3bd7435e40ca6e9ab33d4b"},"success",{"term":"9eb81e8"},"kore-term"],"message":{"format":"KORE","version":1,"term":{"tag":"DV","sort":{"tag":"SortApp","name":"SortBool","args":[]},"value":"false"}}} +{"context":["booster","execute",{"term":"2fbed22"},{"rewrite":"029649977a189d0740b894b184f10ed8b77b043ff935d356dca9fa87ffbffc58"},"constraint",{"term":"80d934c"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"detail"],"message":"UNKNOWN"} +{"context":["booster","execute",{"term":"2fbed22"},{"rewrite":"029649977a189d0740b894b184f10ed8b77b043ff935d356dca9fa87ffbffc58"},"constraint",{"term":"80d934c"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"match","failure"],"message":"Sorts differ: Eq#VarKResult:SortKResult{} !__EXPRESSIONS-SYNTAX_Expr_Expr(_<=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr(\"$n\", \"0\"))"} +{"context":["booster","execute",{"term":"2fbed22"},{"rewrite":"029649977a189d0740b894b184f10ed8b77b043ff935d356dca9fa87ffbffc58"},"constraint",{"term":"80d934c"},{"function":"afefecb36598372bc1ba6e5d0b24a00b91796244dc3bd7435e40ca6e9ab33d4b"},"detail"],"message":"UNKNOWN"} +{"context":["booster","execute",{"term":"2fbed22"},{"rewrite":"029649977a189d0740b894b184f10ed8b77b043ff935d356dca9fa87ffbffc58"},"constraint",{"term":"80d934c"},{"function":"afefecb36598372bc1ba6e5d0b24a00b91796244dc3bd7435e40ca6e9ab33d4b"},"success",{"term":"9eb81e8"},"kore-term"],"message":{"format":"KORE","version":1,"term":{"tag":"DV","sort":{"tag":"SortApp","name":"SortBool","args":[]},"value":"false"}}} +{"context":["booster","execute",{"term":"d9cfe5a"},{"rewrite":"6b84f401532c1b66bd9dab31a7b06181c1b2a4cee891e9c3936f39ecea75c8fc"},"constraint",{"term":"bd6d88b"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"detail"],"message":"UNKNOWN"} +{"context":["booster","execute",{"term":"d9cfe5a"},{"rewrite":"6b84f401532c1b66bd9dab31a7b06181c1b2a4cee891e9c3936f39ecea75c8fc"},"constraint",{"term":"bd6d88b"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"match","failure"],"message":"Sorts differ: Eq#VarKResult:SortKResult{} \"$n\""} +{"context":["booster","execute",{"term":"d9cfe5a"},{"rewrite":"6b84f401532c1b66bd9dab31a7b06181c1b2a4cee891e9c3936f39ecea75c8fc"},"constraint",{"term":"bd6d88b"},{"function":"afefecb36598372bc1ba6e5d0b24a00b91796244dc3bd7435e40ca6e9ab33d4b"},"detail"],"message":"UNKNOWN"} +{"context":["booster","execute",{"term":"d9cfe5a"},{"rewrite":"6b84f401532c1b66bd9dab31a7b06181c1b2a4cee891e9c3936f39ecea75c8fc"},"constraint",{"term":"bd6d88b"},{"function":"afefecb36598372bc1ba6e5d0b24a00b91796244dc3bd7435e40ca6e9ab33d4b"},"success",{"term":"9eb81e8"},"kore-term"],"message":{"format":"KORE","version":1,"term":{"tag":"DV","sort":{"tag":"SortApp","name":"SortBool","args":[]},"value":"false"}}} +{"context":["booster","execute",{"term":"d9cfe5a"},{"rewrite":"b3a22c24b0d945e521d86b44dadfa10beda45b356f9941753e93183cabef0351"},"constraint",{"term":"dbbbb63"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"detail"],"message":"UNKNOWN"} +{"context":["booster","execute",{"term":"d9cfe5a"},{"rewrite":"b3a22c24b0d945e521d86b44dadfa10beda45b356f9941753e93183cabef0351"},"constraint",{"term":"dbbbb63"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"match","failure"],"message":"Sorts differ: Eq#VarKResult:SortKResult{} \"$n\""} +{"context":["booster","execute",{"term":"d9cfe5a"},{"rewrite":"b3a22c24b0d945e521d86b44dadfa10beda45b356f9941753e93183cabef0351"},"constraint",{"term":"dbbbb63"},{"function":"afefecb36598372bc1ba6e5d0b24a00b91796244dc3bd7435e40ca6e9ab33d4b"},"detail"],"message":"UNKNOWN"} +{"context":["booster","execute",{"term":"d9cfe5a"},{"rewrite":"b3a22c24b0d945e521d86b44dadfa10beda45b356f9941753e93183cabef0351"},"constraint",{"term":"dbbbb63"},{"function":"afefecb36598372bc1ba6e5d0b24a00b91796244dc3bd7435e40ca6e9ab33d4b"},"success",{"term":"9eb81e8"},"kore-term"],"message":{"format":"KORE","version":1,"term":{"tag":"DV","sort":{"tag":"SortApp","name":"SortBool","args":[]},"value":"false"}}} +{"context":["booster","execute",{"term":"d9cfe5a"},{"rewrite":"b3a22c24b0d945e521d86b44dadfa10beda45b356f9941753e93183cabef0351"},"constraint",{"term":"dbbbb63"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"detail"],"message":"UNKNOWN"} +{"context":["booster","execute",{"term":"d9cfe5a"},{"rewrite":"b3a22c24b0d945e521d86b44dadfa10beda45b356f9941753e93183cabef0351"},"constraint",{"term":"dbbbb63"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"success",{"term":"98b0892"},"kore-term"],"message":{"format":"KORE","version":1,"term":{"tag":"DV","sort":{"tag":"SortApp","name":"SortBool","args":[]},"value":"true"}}} +{"context":["booster","execute",{"term":"d9cfe5a"},{"rewrite":"28f395c2f029144cab225e78d4bc6d7d6c54b12b2b14d0f806934911bc8ed0d1"},"constraint",{"term":"5875655"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"detail"],"message":"UNKNOWN"} +{"context":["booster","execute",{"term":"d9cfe5a"},{"rewrite":"28f395c2f029144cab225e78d4bc6d7d6c54b12b2b14d0f806934911bc8ed0d1"},"constraint",{"term":"5875655"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"match","failure"],"message":"Sorts differ: Eq#VarKResult:SortKResult{} _<=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr(\"$n\", \"0\")"} +{"context":["booster","execute",{"term":"d9cfe5a"},{"rewrite":"28f395c2f029144cab225e78d4bc6d7d6c54b12b2b14d0f806934911bc8ed0d1"},"constraint",{"term":"5875655"},{"function":"afefecb36598372bc1ba6e5d0b24a00b91796244dc3bd7435e40ca6e9ab33d4b"},"detail"],"message":"UNKNOWN"} +{"context":["booster","execute",{"term":"d9cfe5a"},{"rewrite":"28f395c2f029144cab225e78d4bc6d7d6c54b12b2b14d0f806934911bc8ed0d1"},"constraint",{"term":"5875655"},{"function":"afefecb36598372bc1ba6e5d0b24a00b91796244dc3bd7435e40ca6e9ab33d4b"},"success",{"term":"9eb81e8"},"kore-term"],"message":{"format":"KORE","version":1,"term":{"tag":"DV","sort":{"tag":"SortApp","name":"SortBool","args":[]},"value":"false"}}} +{"context":["booster","execute",{"term":"4a555cf"},{"rewrite":"45286489d58bcd9b23df3023d9efddcdde80fdfe2603d7a5b07669acd2a1d540"},"constraint",{"term":"f2fa0db"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"detail"],"message":"UNKNOWN"} +{"context":["booster","execute",{"term":"4a555cf"},{"rewrite":"45286489d58bcd9b23df3023d9efddcdde80fdfe2603d7a5b07669acd2a1d540"},"constraint",{"term":"f2fa0db"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"match","failure"],"message":"Sorts differ: Eq#VarKResult:SortKResult{} \"$n\""} +{"context":["booster","execute",{"term":"4a555cf"},{"rewrite":"45286489d58bcd9b23df3023d9efddcdde80fdfe2603d7a5b07669acd2a1d540"},"constraint",{"term":"f2fa0db"},{"function":"afefecb36598372bc1ba6e5d0b24a00b91796244dc3bd7435e40ca6e9ab33d4b"},"detail"],"message":"UNKNOWN"} +{"context":["booster","execute",{"term":"4a555cf"},{"rewrite":"45286489d58bcd9b23df3023d9efddcdde80fdfe2603d7a5b07669acd2a1d540"},"constraint",{"term":"f2fa0db"},{"function":"afefecb36598372bc1ba6e5d0b24a00b91796244dc3bd7435e40ca6e9ab33d4b"},"success",{"term":"9eb81e8"},"kore-term"],"message":{"format":"KORE","version":1,"term":{"tag":"DV","sort":{"tag":"SortApp","name":"SortBool","args":[]},"value":"false"}}} +{"context":["booster","execute",{"term":"5a046bd"},{"rewrite":"45286489d58bcd9b23df3023d9efddcdde80fdfe2603d7a5b07669acd2a1d540"},"constraint",{"term":"f464178"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"detail"],"message":"UNKNOWN"} +{"context":["booster","execute",{"term":"5a046bd"},{"rewrite":"45286489d58bcd9b23df3023d9efddcdde80fdfe2603d7a5b07669acd2a1d540"},"constraint",{"term":"f464178"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"success",{"term":"98b0892"},"kore-term"],"message":{"format":"KORE","version":1,"term":{"tag":"DV","sort":{"tag":"SortApp","name":"SortBool","args":[]},"value":"true"}}} +{"context":["booster","execute",{"term":"9893c04"},{"rewrite":"6b84f401532c1b66bd9dab31a7b06181c1b2a4cee891e9c3936f39ecea75c8fc"},"constraint",{"term":"5b84449"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"detail"],"message":"UNKNOWN"} +{"context":["booster","execute",{"term":"9893c04"},{"rewrite":"6b84f401532c1b66bd9dab31a7b06181c1b2a4cee891e9c3936f39ecea75c8fc"},"constraint",{"term":"5b84449"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"success",{"term":"98b0892"},"kore-term"],"message":{"format":"KORE","version":1,"term":{"tag":"DV","sort":{"tag":"SortApp","name":"SortBool","args":[]},"value":"true"}}} +{"context":["booster","execute",{"term":"9893c04"},{"rewrite":"b3a22c24b0d945e521d86b44dadfa10beda45b356f9941753e93183cabef0351"},"constraint",{"term":"f464178"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"detail"],"message":"UNKNOWN"} +{"context":["booster","execute",{"term":"9893c04"},{"rewrite":"b3a22c24b0d945e521d86b44dadfa10beda45b356f9941753e93183cabef0351"},"constraint",{"term":"f464178"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"success",{"term":"98b0892"},"kore-term"],"message":{"format":"KORE","version":1,"term":{"tag":"DV","sort":{"tag":"SortApp","name":"SortBool","args":[]},"value":"true"}}} +{"context":["booster","execute",{"term":"9893c04"},{"rewrite":"b3a22c24b0d945e521d86b44dadfa10beda45b356f9941753e93183cabef0351"},"constraint",{"term":"5c6033a"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"detail"],"message":"UNKNOWN"} +{"context":["booster","execute",{"term":"9893c04"},{"rewrite":"b3a22c24b0d945e521d86b44dadfa10beda45b356f9941753e93183cabef0351"},"constraint",{"term":"5c6033a"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"success",{"term":"98b0892"},"kore-term"],"message":{"format":"KORE","version":1,"term":{"tag":"DV","sort":{"tag":"SortApp","name":"SortBool","args":[]},"value":"true"}}} +{"context":["booster","execute",{"term":"9893c04"},{"rewrite":"28f395c2f029144cab225e78d4bc6d7d6c54b12b2b14d0f806934911bc8ed0d1"},"constraint",{"term":"2cedcc8"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"detail"],"message":"UNKNOWN"} +{"context":["booster","execute",{"term":"9893c04"},{"rewrite":"28f395c2f029144cab225e78d4bc6d7d6c54b12b2b14d0f806934911bc8ed0d1"},"constraint",{"term":"2cedcc8"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"match","failure"],"message":"Sorts differ: Eq#VarKResult:SortKResult{} _<=__EXPRESSIONS-SYNTAX_Expr_Expr_Expr(VarN:SortInt{}, \"0\")"} +{"context":["booster","execute",{"term":"9893c04"},{"rewrite":"28f395c2f029144cab225e78d4bc6d7d6c54b12b2b14d0f806934911bc8ed0d1"},"constraint",{"term":"2cedcc8"},{"function":"afefecb36598372bc1ba6e5d0b24a00b91796244dc3bd7435e40ca6e9ab33d4b"},"detail"],"message":"UNKNOWN"} +{"context":["booster","execute",{"term":"9893c04"},{"rewrite":"28f395c2f029144cab225e78d4bc6d7d6c54b12b2b14d0f806934911bc8ed0d1"},"constraint",{"term":"2cedcc8"},{"function":"afefecb36598372bc1ba6e5d0b24a00b91796244dc3bd7435e40ca6e9ab33d4b"},"success",{"term":"9eb81e8"},"kore-term"],"message":{"format":"KORE","version":1,"term":{"tag":"DV","sort":{"tag":"SortApp","name":"SortBool","args":[]},"value":"false"}}} +{"context":["booster","execute",{"term":"db347c0"},{"rewrite":"28f395c2f029144cab225e78d4bc6d7d6c54b12b2b14d0f806934911bc8ed0d1"},"constraint",{"term":"d1b77ee"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"detail"],"message":"UNKNOWN"} +{"context":["booster","execute",{"term":"db347c0"},{"rewrite":"28f395c2f029144cab225e78d4bc6d7d6c54b12b2b14d0f806934911bc8ed0d1"},"constraint",{"term":"d1b77ee"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"success",{"term":"98b0892"},"kore-term"],"message":{"format":"KORE","version":1,"term":{"tag":"DV","sort":{"tag":"SortApp","name":"SortBool","args":[]},"value":"true"}}} +{"context":["booster","execute",{"term":"3a244e5"},{"rewrite":"95ae0624ed05bd9fda100afe3522e14997852a9753240caa90be72f16a32414f"},"constraint",{"term":"e57758d"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"detail"],"message":"UNKNOWN"} +{"context":["booster","execute",{"term":"3a244e5"},{"rewrite":"95ae0624ed05bd9fda100afe3522e14997852a9753240caa90be72f16a32414f"},"constraint",{"term":"e57758d"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"success",{"term":"98b0892"},"kore-term"],"message":{"format":"KORE","version":1,"term":{"tag":"DV","sort":{"tag":"SortApp","name":"SortBool","args":[]},"value":"true"}}} +{"context":["booster","execute",{"term":"3a244e5"},{"rewrite":"029649977a189d0740b894b184f10ed8b77b043ff935d356dca9fa87ffbffc58"},"constraint",{"term":"e702940"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"detail"],"message":"UNKNOWN"} +{"context":["booster","execute",{"term":"3a244e5"},{"rewrite":"029649977a189d0740b894b184f10ed8b77b043ff935d356dca9fa87ffbffc58"},"constraint",{"term":"e702940"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"match","failure"],"message":"Sorts differ: Eq#VarKResult:SortKResult{} !__EXPRESSIONS-SYNTAX_Expr_Expr(_<=Int_(VarN:SortInt{}, \"0\"))"} +{"context":["booster","execute",{"term":"3a244e5"},{"rewrite":"029649977a189d0740b894b184f10ed8b77b043ff935d356dca9fa87ffbffc58"},"constraint",{"term":"e702940"},{"function":"afefecb36598372bc1ba6e5d0b24a00b91796244dc3bd7435e40ca6e9ab33d4b"},"detail"],"message":"UNKNOWN"} +{"context":["booster","execute",{"term":"3a244e5"},{"rewrite":"029649977a189d0740b894b184f10ed8b77b043ff935d356dca9fa87ffbffc58"},"constraint",{"term":"e702940"},{"function":"afefecb36598372bc1ba6e5d0b24a00b91796244dc3bd7435e40ca6e9ab33d4b"},"success",{"term":"9eb81e8"},"kore-term"],"message":{"format":"KORE","version":1,"term":{"tag":"DV","sort":{"tag":"SortApp","name":"SortBool","args":[]},"value":"false"}}} +{"context":["booster","execute",{"term":"473c428"},{"rewrite":"029649977a189d0740b894b184f10ed8b77b043ff935d356dca9fa87ffbffc58"},"constraint",{"term":"fbb3d17"},{"function":"17ebc68421572b8ebe609c068fb49cbb6cbbe3246e2142257ad8befdda38f415"},"detail"],"message":"...kframework/builtin/domains.md : (1119, 8)"} +{"context":["booster","execute",{"term":"473c428"},{"rewrite":"029649977a189d0740b894b184f10ed8b77b043ff935d356dca9fa87ffbffc58"},"constraint",{"term":"fbb3d17"},{"function":"17ebc68421572b8ebe609c068fb49cbb6cbbe3246e2142257ad8befdda38f415"},"match","failure"],"message":{"remainder":[[{"tag":"DV","sort":{"tag":"SortApp","name":"SortBool","args":[]},"value":"false"},{"tag":"App","name":"Lbl'Unds-LT-Eqls'Int'Unds'","sorts":[],"args":[{"tag":"EVar","name":"VarN","sort":{"tag":"SortApp","name":"SortInt","args":[]}},{"tag":"DV","sort":{"tag":"SortApp","name":"SortInt","args":[]},"value":"0"}]}]]}} +{"context":["booster","execute",{"term":"473c428"},{"rewrite":"029649977a189d0740b894b184f10ed8b77b043ff935d356dca9fa87ffbffc58"},"constraint",{"term":"fbb3d17"},{"function":"17ebc68421572b8ebe609c068fb49cbb6cbbe3246e2142257ad8befdda38f415"},"abort"],"message":"Aborting simplification/function evaluation"} +{"context":["booster","execute",{"term":"473c428"},{"rewrite":"029649977a189d0740b894b184f10ed8b77b043ff935d356dca9fa87ffbffc58"},"constraint",{"term":"fbb3d17"},{"simplification":"2499eab08be5a893dde1183881ad2aee18a0aab6fc53deb2c78f94c6466e3e15"},"detail"],"message":"...include/imp-semantics/imp-verification.k : (24, 10)"} +{"context":["booster","execute",{"term":"473c428"},{"rewrite":"029649977a189d0740b894b184f10ed8b77b043ff935d356dca9fa87ffbffc58"},"constraint",{"term":"fbb3d17"},{"simplification":"2499eab08be5a893dde1183881ad2aee18a0aab6fc53deb2c78f94c6466e3e15"},"success",{"term":"8f1e2b8"},"kore-term"],"message":{"format":"KORE","version":1,"term":{"tag":"App","name":"Lbl'Unds-LT-'Int'Unds'","sorts":[],"args":[{"tag":"DV","sort":{"tag":"SortApp","name":"SortInt","args":[]},"value":"0"},{"tag":"EVar","name":"VarN","sort":{"tag":"SortApp","name":"SortInt","args":[]}}]}}} +{"context":["booster","execute",{"term":"473c428"},{"rewrite":"029649977a189d0740b894b184f10ed8b77b043ff935d356dca9fa87ffbffc58"},"constraint",{"term":"fbb3d17"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"detail"],"message":"UNKNOWN"} +{"context":["booster","execute",{"term":"473c428"},{"rewrite":"029649977a189d0740b894b184f10ed8b77b043ff935d356dca9fa87ffbffc58"},"constraint",{"term":"fbb3d17"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"success",{"term":"98b0892"},"kore-term"],"message":{"format":"KORE","version":1,"term":{"tag":"DV","sort":{"tag":"SortApp","name":"SortBool","args":[]},"value":"true"}}} +{"context":["booster","execute",{"term":"d3dc513"},{"rewrite":"2821768ca76231d9d23da884f160f8a8a67b03f3575f41bd4fc76649c39a94fb"},"constraint",{"term":"fd81940"},{"function":"17ebc68421572b8ebe609c068fb49cbb6cbbe3246e2142257ad8befdda38f415"},"detail"],"message":"...kframework/builtin/domains.md : (1119, 8)"} +{"context":["booster","execute",{"term":"d3dc513"},{"rewrite":"2821768ca76231d9d23da884f160f8a8a67b03f3575f41bd4fc76649c39a94fb"},"constraint",{"term":"fd81940"},{"function":"17ebc68421572b8ebe609c068fb49cbb6cbbe3246e2142257ad8befdda38f415"},"match","failure"],"message":{"remainder":[[{"tag":"DV","sort":{"tag":"SortApp","name":"SortBool","args":[]},"value":"false"},{"tag":"App","name":"Lbl'Unds-LT-Eqls'Int'Unds'","sorts":[],"args":[{"tag":"EVar","name":"VarN","sort":{"tag":"SortApp","name":"SortInt","args":[]}},{"tag":"DV","sort":{"tag":"SortApp","name":"SortInt","args":[]},"value":"0"}]}]]}} +{"context":["booster","execute",{"term":"d3dc513"},{"rewrite":"2821768ca76231d9d23da884f160f8a8a67b03f3575f41bd4fc76649c39a94fb"},"constraint",{"term":"fd81940"},{"function":"17ebc68421572b8ebe609c068fb49cbb6cbbe3246e2142257ad8befdda38f415"},"abort"],"message":"Aborting simplification/function evaluation"} +{"context":["booster","execute",{"term":"d3dc513"},{"rewrite":"2821768ca76231d9d23da884f160f8a8a67b03f3575f41bd4fc76649c39a94fb"},"constraint",{"term":"fd81940"},{"simplification":"2499eab08be5a893dde1183881ad2aee18a0aab6fc53deb2c78f94c6466e3e15"},"detail"],"message":"...include/imp-semantics/imp-verification.k : (24, 10)"} +{"context":["booster","execute",{"term":"d3dc513"},{"rewrite":"2821768ca76231d9d23da884f160f8a8a67b03f3575f41bd4fc76649c39a94fb"},"constraint",{"term":"fd81940"},{"simplification":"2499eab08be5a893dde1183881ad2aee18a0aab6fc53deb2c78f94c6466e3e15"},"success",{"term":"8f1e2b8"},"kore-term"],"message":{"format":"KORE","version":1,"term":{"tag":"App","name":"Lbl'Unds-LT-'Int'Unds'","sorts":[],"args":[{"tag":"DV","sort":{"tag":"SortApp","name":"SortInt","args":[]},"value":"0"},{"tag":"EVar","name":"VarN","sort":{"tag":"SortApp","name":"SortInt","args":[]}}]}}} +{"context":["booster","execute",{"term":"d3dc513"},{"rewrite":"2821768ca76231d9d23da884f160f8a8a67b03f3575f41bd4fc76649c39a94fb"},"constraint",{"term":"fd81940"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"detail"],"message":"UNKNOWN"} +{"context":["booster","execute",{"term":"d3dc513"},{"rewrite":"2821768ca76231d9d23da884f160f8a8a67b03f3575f41bd4fc76649c39a94fb"},"constraint",{"term":"fd81940"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"success",{"term":"98b0892"},"kore-term"],"message":{"format":"KORE","version":1,"term":{"tag":"DV","sort":{"tag":"SortApp","name":"SortBool","args":[]},"value":"true"}}} +{"context":["booster","execute",{"term":"d3dc513"},"simplify",{"term":"d3dc513"},{"term":"50120f3"},{"function":"17ebc68421572b8ebe609c068fb49cbb6cbbe3246e2142257ad8befdda38f415"},"detail"],"message":"...kframework/builtin/domains.md : (1119, 8)"} +{"context":["booster","execute",{"term":"d3dc513"},"simplify",{"term":"d3dc513"},{"term":"50120f3"},{"function":"17ebc68421572b8ebe609c068fb49cbb6cbbe3246e2142257ad8befdda38f415"},"match","failure"],"message":{"remainder":[[{"tag":"DV","sort":{"tag":"SortApp","name":"SortBool","args":[]},"value":"false"},{"tag":"App","name":"Lbl'Unds-LT-Eqls'Int'Unds'","sorts":[],"args":[{"tag":"EVar","name":"VarN","sort":{"tag":"SortApp","name":"SortInt","args":[]}},{"tag":"DV","sort":{"tag":"SortApp","name":"SortInt","args":[]},"value":"0"}]}]]}} +{"context":["booster","execute",{"term":"d3dc513"},"simplify",{"term":"d3dc513"},{"term":"50120f3"},{"function":"17ebc68421572b8ebe609c068fb49cbb6cbbe3246e2142257ad8befdda38f415"},"abort"],"message":"Aborting simplification/function evaluation"} +{"context":["booster","execute",{"term":"d3dc513"},"simplify",{"term":"d3dc513"},{"term":"50120f3"},{"simplification":"2499eab08be5a893dde1183881ad2aee18a0aab6fc53deb2c78f94c6466e3e15"},"detail"],"message":"...include/imp-semantics/imp-verification.k : (24, 10)"} +{"context":["booster","execute",{"term":"d3dc513"},"simplify",{"term":"d3dc513"},{"term":"50120f3"},{"simplification":"2499eab08be5a893dde1183881ad2aee18a0aab6fc53deb2c78f94c6466e3e15"},"success",{"term":"8f1e2b8"},"kore-term"],"message":{"format":"KORE","version":1,"term":{"tag":"App","name":"Lbl'Unds-LT-'Int'Unds'","sorts":[],"args":[{"tag":"DV","sort":{"tag":"SortApp","name":"SortInt","args":[]},"value":"0"},{"tag":"EVar","name":"VarN","sort":{"tag":"SortApp","name":"SortInt","args":[]}}]}}} +{"context":["booster","execute",{"term":"ee3511f"},{"rewrite":"2821768ca76231d9d23da884f160f8a8a67b03f3575f41bd4fc76649c39a94fb"},"constraint",{"term":"d2e9706"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"detail"],"message":"UNKNOWN"} +{"context":["booster","execute",{"term":"ee3511f"},{"rewrite":"2821768ca76231d9d23da884f160f8a8a67b03f3575f41bd4fc76649c39a94fb"},"constraint",{"term":"d2e9706"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"success",{"term":"98b0892"},"kore-term"],"message":{"format":"KORE","version":1,"term":{"tag":"DV","sort":{"tag":"SortApp","name":"SortBool","args":[]},"value":"true"}}} +{"context":["kore","execute",{"term":"c107051"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"detail"],"message":"...resources/log-simplify-json.kore:3913:7"} +{"context":["kore","execute",{"term":"c107051"},{"function":"f4c2469bcff9527515b6d36f16040307917bda61067d10b85fb531e142483bee"},"success",{"term":"b378f16"},"kore-term"],"message":{"format":"KORE","version":1,"term":{"tag":"DV","sort":{"tag":"SortApp","name":"SortBool","args":[]},"value":"true"}}} +{"context":["booster","simplify",{"term":"931632b"},{"term":"be686bf"},{"function":"17ebc68421572b8ebe609c068fb49cbb6cbbe3246e2142257ad8befdda38f415"},"detail"],"message":"...kframework/builtin/domains.md : (1119, 8)"} +{"context":["booster","simplify",{"term":"931632b"},{"term":"be686bf"},{"function":"17ebc68421572b8ebe609c068fb49cbb6cbbe3246e2142257ad8befdda38f415"},"match","failure"],"message":{"remainder":[[{"tag":"DV","sort":{"tag":"SortApp","name":"SortBool","args":[]},"value":"false"},{"tag":"App","name":"Lbl'Unds-LT-'Int'Unds'","sorts":[],"args":[{"tag":"DV","sort":{"tag":"SortApp","name":"SortInt","args":[]},"value":"0"},{"tag":"EVar","name":"VarN","sort":{"tag":"SortApp","name":"SortInt","args":[]}}]}]]}} +{"context":["booster","simplify",{"term":"931632b"},{"term":"be686bf"},{"function":"17ebc68421572b8ebe609c068fb49cbb6cbbe3246e2142257ad8befdda38f415"},"abort"],"message":"Aborting simplification/function evaluation"} +{"context":["booster","simplify",{"term":"931632b"},{"term":"be686bf"},{"simplification":"2499eab08be5a893dde1183881ad2aee18a0aab6fc53deb2c78f94c6466e3e15"},"detail"],"message":"...include/imp-semantics/imp-verification.k : (24, 10)"} +{"context":["booster","simplify",{"term":"931632b"},{"term":"be686bf"},{"simplification":"2499eab08be5a893dde1183881ad2aee18a0aab6fc53deb2c78f94c6466e3e15"},"match","failure"],"message":{"remainder":[[{"tag":"App","name":"Lbl'Unds-LT-Eqls'Int'Unds'","sorts":[],"args":[{"tag":"EVar","name":"Eq#VarA","sort":{"tag":"SortApp","name":"SortInt","args":[]}},{"tag":"EVar","name":"Eq#VarB","sort":{"tag":"SortApp","name":"SortInt","args":[]}}]},{"tag":"App","name":"Lbl'Unds-LT-'Int'Unds'","sorts":[],"args":[{"tag":"DV","sort":{"tag":"SortApp","name":"SortInt","args":[]},"value":"0"},{"tag":"EVar","name":"VarN","sort":{"tag":"SortApp","name":"SortInt","args":[]}}]}]]}} +{"context":["booster","simplify",{"term":"931632b"},{"term":"be686bf"},{"simplification":"cb079e42f8993a0cf744fd4996fa1635f79ecc3e07cf441d3d0b743da4b9b43f"},"detail"],"message":"...include/imp-semantics/imp-verification.k : (23, 10)"} +{"context":["booster","simplify",{"term":"931632b"},{"term":"be686bf"},{"simplification":"cb079e42f8993a0cf744fd4996fa1635f79ecc3e07cf441d3d0b743da4b9b43f"},"success",{"term":"f6384ee"},"kore-term"],"message":{"format":"KORE","version":1,"term":{"tag":"App","name":"Lbl'Unds-LT-Eqls'Int'Unds'","sorts":[],"args":[{"tag":"EVar","name":"VarN","sort":{"tag":"SortApp","name":"SortInt","args":[]}},{"tag":"DV","sort":{"tag":"SortApp","name":"SortInt","args":[]},"value":"0"}]}}} diff --git a/booster/test/rpc-integration/test-log-simplify-json/state.send b/booster/test/rpc-integration/test-log-simplify-json/state.send new file mode 100644 index 0000000000..5bc6a62a5b --- /dev/null +++ b/booster/test/rpc-integration/test-log-simplify-json/state.send @@ -0,0 +1 @@ +{"jsonrpc": "2.0", "id": 4, "method": "execute", "params": {"max-depth": 100, "cut-point-rules": ["STATEMENTS-RULES.while"], "terminal-rules": ["STATEMENTS-RULES.done"], "module": "IMP-VERIFICATION", "state": {"format": "KORE", "version": 1, "term": {"tag": "And", "sort": {"tag": "SortApp", "name": "SortGeneratedTopCell", "args": []}, "patterns": [{"tag": "App", "name": "Lbl'-LT-'generatedTop'-GT-'", "sorts": [], "args": [{"tag": "App", "name": "Lbl'-LT-'k'-GT-'", "sorts": [], "args": [{"tag": "App", "name": "kseq", "sorts": [], "args": [{"tag": "App", "name": "inj", "sorts": [{"tag": "SortApp", "name": "SortStmt", "args": []}, {"tag": "SortApp", "name": "SortKItem", "args": []}], "args": [{"tag": "App", "name": "Lblif'LParUndsRParUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt", "sorts": [], "args": [{"tag": "App", "name": "Lbl'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr", "sorts": [], "args": [{"tag": "App", "name": "Lbl'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr", "sorts": [], "args": [{"tag": "App", "name": "inj", "sorts": [{"tag": "SortApp", "name": "SortId", "args": []}, {"tag": "SortApp", "name": "SortExpr", "args": []}], "args": [{"tag": "DV", "sort": {"tag": "SortApp", "name": "SortId", "args": []}, "value": "$n"}]}, {"tag": "App", "name": "inj", "sorts": [{"tag": "SortApp", "name": "SortInt", "args": []}, {"tag": "SortApp", "name": "SortExpr", "args": []}], "args": [{"tag": "DV", "sort": {"tag": "SortApp", "name": "SortInt", "args": []}, "value": "0"}]}]}]}, {"tag": "App", "name": "Lbl'LBraUndsRBraUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt", "sorts": [], "args": [{"tag": "App", "name": "Lbl'UndsUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt'Unds'Stmt", "sorts": [], "args": [{"tag": "App", "name": "Lbl'LBraUndsRBraUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt", "sorts": [], "args": [{"tag": "App", "name": "Lbl'UndsUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt'Unds'Stmt", "sorts": [], "args": [{"tag": "App", "name": "Lbl'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr", "sorts": [], "args": [{"tag": "DV", "sort": {"tag": "SortApp", "name": "SortId", "args": []}, "value": "$s"}, {"tag": "App", "name": "Lbl'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr", "sorts": [], "args": [{"tag": "App", "name": "inj", "sorts": [{"tag": "SortApp", "name": "SortId", "args": []}, {"tag": "SortApp", "name": "SortExpr", "args": []}], "args": [{"tag": "DV", "sort": {"tag": "SortApp", "name": "SortId", "args": []}, "value": "$s"}]}, {"tag": "App", "name": "inj", "sorts": [{"tag": "SortApp", "name": "SortId", "args": []}, {"tag": "SortApp", "name": "SortExpr", "args": []}], "args": [{"tag": "DV", "sort": {"tag": "SortApp", "name": "SortId", "args": []}, "value": "$n"}]}]}]}, {"tag": "App", "name": "Lbl'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr", "sorts": [], "args": [{"tag": "DV", "sort": {"tag": "SortApp", "name": "SortId", "args": []}, "value": "$n"}, {"tag": "App", "name": "Lbl'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr", "sorts": [], "args": [{"tag": "App", "name": "inj", "sorts": [{"tag": "SortApp", "name": "SortId", "args": []}, {"tag": "SortApp", "name": "SortExpr", "args": []}], "args": [{"tag": "DV", "sort": {"tag": "SortApp", "name": "SortId", "args": []}, "value": "$n"}]}, {"tag": "App", "name": "inj", "sorts": [{"tag": "SortApp", "name": "SortInt", "args": []}, {"tag": "SortApp", "name": "SortExpr", "args": []}], "args": [{"tag": "DV", "sort": {"tag": "SortApp", "name": "SortInt", "args": []}, "value": "-1"}]}]}]}]}]}, {"tag": "App", "name": "Lblwhile'LParUndsRParUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Expr'Unds'Stmt", "sorts": [], "args": [{"tag": "App", "name": "Lbl'BangUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr", "sorts": [], "args": [{"tag": "App", "name": "Lbl'Unds-LT-EqlsUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr", "sorts": [], "args": [{"tag": "App", "name": "inj", "sorts": [{"tag": "SortApp", "name": "SortId", "args": []}, {"tag": "SortApp", "name": "SortExpr", "args": []}], "args": [{"tag": "DV", "sort": {"tag": "SortApp", "name": "SortId", "args": []}, "value": "$n"}]}, {"tag": "App", "name": "inj", "sorts": [{"tag": "SortApp", "name": "SortInt", "args": []}, {"tag": "SortApp", "name": "SortExpr", "args": []}], "args": [{"tag": "DV", "sort": {"tag": "SortApp", "name": "SortInt", "args": []}, "value": "0"}]}]}]}, {"tag": "App", "name": "Lbl'LBraUndsRBraUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt", "sorts": [], "args": [{"tag": "App", "name": "Lbl'UndsUndsUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Stmt'Unds'Stmt", "sorts": [], "args": [{"tag": "App", "name": "Lbl'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr", "sorts": [], "args": [{"tag": "DV", "sort": {"tag": "SortApp", "name": "SortId", "args": []}, "value": "$s"}, {"tag": "App", "name": "Lbl'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr", "sorts": [], "args": [{"tag": "App", "name": "inj", "sorts": [{"tag": "SortApp", "name": "SortId", "args": []}, {"tag": "SortApp", "name": "SortExpr", "args": []}], "args": [{"tag": "DV", "sort": {"tag": "SortApp", "name": "SortId", "args": []}, "value": "$s"}]}, {"tag": "App", "name": "inj", "sorts": [{"tag": "SortApp", "name": "SortId", "args": []}, {"tag": "SortApp", "name": "SortExpr", "args": []}], "args": [{"tag": "DV", "sort": {"tag": "SortApp", "name": "SortId", "args": []}, "value": "$n"}]}]}]}, {"tag": "App", "name": "Lbl'UndsEqlsUndsSClnUnds'STATEMENTS-SYNTAX'Unds'Stmt'Unds'Id'Unds'Expr", "sorts": [], "args": [{"tag": "DV", "sort": {"tag": "SortApp", "name": "SortId", "args": []}, "value": "$n"}, {"tag": "App", "name": "Lbl'UndsPlusUndsUnds'EXPRESSIONS-SYNTAX'Unds'Expr'Unds'Expr'Unds'Expr", "sorts": [], "args": [{"tag": "App", "name": "inj", "sorts": [{"tag": "SortApp", "name": "SortId", "args": []}, {"tag": "SortApp", "name": "SortExpr", "args": []}], "args": [{"tag": "DV", "sort": {"tag": "SortApp", "name": "SortId", "args": []}, "value": "$n"}]}, {"tag": "App", "name": "inj", "sorts": [{"tag": "SortApp", "name": "SortInt", "args": []}, {"tag": "SortApp", "name": "SortExpr", "args": []}], "args": [{"tag": "DV", "sort": {"tag": "SortApp", "name": "SortInt", "args": []}, "value": "-1"}]}]}]}]}]}]}]}]}]}]}, {"tag": "EVar", "name": "VarK'Unds'CELL'Unds'fc656f08", "sort": {"tag": "SortApp", "name": "SortK", "args": []}}]}]}, {"tag": "App", "name": "Lbl'-LT-'env'-GT-'", "sorts": [], "args": [{"tag": "App", "name": "Lbl'Unds'Map'Unds'", "sorts": [], "args": [{"tag": "App", "name": "Lbl'UndsPipe'-'-GT-Unds'", "sorts": [], "args": [{"tag": "App", "name": "inj", "sorts": [{"tag": "SortApp", "name": "SortId", "args": []}, {"tag": "SortApp", "name": "SortKItem", "args": []}], "args": [{"tag": "DV", "sort": {"tag": "SortApp", "name": "SortId", "args": []}, "value": "$n"}]}, {"tag": "App", "name": "inj", "sorts": [{"tag": "SortApp", "name": "SortInt", "args": []}, {"tag": "SortApp", "name": "SortKItem", "args": []}], "args": [{"tag": "EVar", "name": "VarN", "sort": {"tag": "SortApp", "name": "SortInt", "args": []}}]}]}, {"tag": "App", "name": "Lbl'UndsPipe'-'-GT-Unds'", "sorts": [], "args": [{"tag": "App", "name": "inj", "sorts": [{"tag": "SortApp", "name": "SortId", "args": []}, {"tag": "SortApp", "name": "SortKItem", "args": []}], "args": [{"tag": "DV", "sort": {"tag": "SortApp", "name": "SortId", "args": []}, "value": "$s"}]}, {"tag": "App", "name": "inj", "sorts": [{"tag": "SortApp", "name": "SortInt", "args": []}, {"tag": "SortApp", "name": "SortKItem", "args": []}], "args": [{"tag": "EVar", "name": "VarS", "sort": {"tag": "SortApp", "name": "SortInt", "args": []}}]}]}]}]}, {"tag": "App", "name": "Lbl'-LT-'generatedCounter'-GT-'", "sorts": [], "args": [{"tag": "EVar", "name": "VarGENERATEDCOUNTER'Unds'CELL'Unds'c84b0b5f", "sort": {"tag": "SortApp", "name": "SortInt", "args": []}}]}]}, {"tag": "Equals", "argSort": {"tag": "SortApp", "name": "SortBool", "args": []}, "sort": {"tag": "SortApp", "name": "SortGeneratedTopCell", "args": []}, "first": {"tag": "DV", "sort": {"tag": "SortApp", "name": "SortBool", "args": []}, "value": "true"}, "second": {"tag": "App", "name": "Lbl'Unds-LT-Eqls'Int'Unds'", "sorts": [], "args": [{"tag": "DV", "sort": {"tag": "SortApp", "name": "SortInt", "args": []}, "value": "0"}, {"tag": "EVar", "name": "VarN", "sort": {"tag": "SortApp", "name": "SortInt", "args": []}}]}}]}}, "log-successful-rewrites": true, "log-failed-rewrites": false, "log-successful-simplifications": false, "log-failed-simplifications": false}} \ No newline at end of file diff --git a/booster/test/rpc-integration/test-log-simplify-json/test.sh b/booster/test/rpc-integration/test-log-simplify-json/test.sh new file mode 100755 index 0000000000..2fe681e9d1 --- /dev/null +++ b/booster/test/rpc-integration/test-log-simplify-json/test.sh @@ -0,0 +1,39 @@ +#!/usr/bin/env bash + +set -exuo pipefail + +# using variables from runDirectoryTest.sh + +echo "client=$client" +echo "dir=$dir" +echo "arguments=$*" + +diff="git diff --no-index" +# remove "--regenerate" and tweak $diff if it is present + +regenerate () { + cp $2 $1 +} + +client_args="" +for arg in $*; do + case "$arg" in + --regenerate) + echo "Re-generating expectation files" + diff="regenerate" + ;; + *) + client_args+=" $arg" + ;; + esac +done + +# send a simplification request and compare the log files +echo "Running a request which will produce the simplify-log.txt log file" +${client} \ + send $dir/state.send ${client_args} > /dev/null + +if [ -n "${SERVER_PID}" ]; then + kill -2 ${SERVER_PID} +fi +${diff} $dir/simplify-log.txt.golden $dir/simplify-log.txt diff --git a/booster/tools/booster/Proxy.hs b/booster/tools/booster/Proxy.hs index b1ef6fb345..d9312c5518 100644 --- a/booster/tools/booster/Proxy.hs +++ b/booster/tools/booster/Proxy.hs @@ -196,8 +196,7 @@ respondEither cfg@ProxyConfig{statsVar, boosterState} booster kore req = case re (fromIntegral (toNanoSecs (diffTimeSpec stop start)) / 1e9) ] | otherwise = Nothing - -- NOTE: we do not include simplification logs into the response, - -- as they are output at SimplifyJson CLI log level + -- NOTE: we do not include simplification logs into the response pure . Right . Simplify $ SimplifyResult { state = koreRes.state @@ -489,7 +488,6 @@ respondEither cfg@ProxyConfig{statsVar, boosterState} booster kore req = case re -- into term and predicates by an internal trivial execute call). -- -- Only the timing logs will be returned (if requested by the top-level). - -- Simplification logs are only output to stderr/file at SimplifyJson level. simplifyExecuteState :: LogSettings -> Maybe Text -> diff --git a/booster/tools/booster/Server.hs b/booster/tools/booster/Server.hs index c3ad0d41ce..0ace87170e 100644 --- a/booster/tools/booster/Server.hs +++ b/booster/tools/booster/Server.hs @@ -138,7 +138,7 @@ main = do , smtOptions , equationOptions , eventlogEnabledUserEvents - , simplificationLogFile + , logFile } , proxyOptions = ProxyOptions @@ -151,7 +151,10 @@ main = do } } = options (logLevel, customLevels) = adjustLogLevels logLevels - contextLoggingEnabled = not (null logContexts) + logContextsWithcustomLevelContexts = + logContexts + <> concatMap (\case LevelOther o -> fromMaybe [] $ levelToContext Map.!? o; _ -> []) customLevels + contextLoggingEnabled = not (null logContextsWithcustomLevelContexts) levelFilter :: Logger.LogSource -> LogLevel -> Bool levelFilter _source lvl = lvl `elem` customLevels @@ -160,8 +163,8 @@ main = do mTimeCache <- if logTimeStamps then Just <$> (newTimeCache "%Y-%m-%d %T") else pure Nothing - Booster.withFastLogger mTimeCache simplificationLogFile $ \stderrLogger mFileLogger -> do - flip runLoggingT (handleOutput stderrLogger mFileLogger) . Logger.filterLogger levelFilter $ do + Booster.withFastLogger mTimeCache logFile $ \stderrLogger mFileLogger -> do + flip runLoggingT (handleOutput stderrLogger) . Logger.filterLogger levelFilter $ do liftIO $ forM_ eventlogEnabledUserEvents $ \t -> do putStrLn $ "Tracing " <> show t enableCustomUserEvent t @@ -191,7 +194,7 @@ main = do ( \(Log.SomeEntry _ c) -> Text.encodeUtf8 <$> Log.oneLineContextDoc c ) ctxt - in any (flip Booster.Log.Context.mustMatch contextStrs) logContexts + in any (flip Booster.Log.Context.mustMatch contextStrs) logContextsWithcustomLevelContexts ) koreLogEntries = @@ -207,7 +210,7 @@ main = do filteredBoosterContextLogger = flip Booster.Log.filterLogger boosterContextLogger $ \(Booster.Log.LogMessage ctxts _) -> let ctxt = map (\(Booster.Log.LogContext lc) -> Text.encodeUtf8 $ Booster.Log.toTextualLog lc) ctxts - in any (flip Booster.Log.Context.mustMatch ctxt) logContexts + in any (flip Booster.Log.Context.mustMatch ctxt) logContextsWithcustomLevelContexts koreLogActions :: forall m. MonadIO m => [LogAction m Log.SomeEntry] koreLogActions = [koreLogAction] @@ -379,7 +382,6 @@ logLevelToKoreLogEntryMap :: Map.Map LogLevel [Text.Text] logLevelToKoreLogEntryMap = Map.fromList [ (LevelOther "SimplifyKore", ["DebugAttemptEquation", "DebugTerm"]) - , (LevelOther "SimplifyJson", ["DebugAttemptEquation", "DebugTerm"]) , ( LevelOther "RewriteKore" , diff --git a/dev-tools/booster-dev/Server.hs b/dev-tools/booster-dev/Server.hs index 2237a380a6..a5a0619bc8 100644 --- a/dev-tools/booster-dev/Server.hs +++ b/dev-tools/booster-dev/Server.hs @@ -52,7 +52,7 @@ main = do , smtOptions , equationOptions , eventlogEnabledUserEvents - , simplificationLogFile + , logFile } = options forM_ eventlogEnabledUserEvents $ \t -> do @@ -82,7 +82,7 @@ main = do definitionMap mainModuleName mLlvmLibrary - simplificationLogFile + logFile smtOptions (adjustLogLevels logLevels) logContexts @@ -118,18 +118,20 @@ runServer :: Bool -> LogFormat -> IO () -runServer port definitions defaultMain mLlvmLibrary simplificationLogFile mSMTOptions (logLevel, customLevels) logContexts logTimeStamps logFormat = +runServer port definitions defaultMain mLlvmLibrary logFile mSMTOptions (logLevel, customLevels) logContexts logTimeStamps logFormat = do mTimeCache <- if logTimeStamps then Just <$> (newTimeCache "%Y-%m-%d %T") else pure Nothing - withFastLogger mTimeCache simplificationLogFile $ \stderrLogger mFileLogger -> do + withFastLogger mTimeCache logFile $ \stderrLogger mFileLogger -> do let boosterContextLogger = case logFormat of Json -> Booster.Log.jsonLogger $ fromMaybe stderrLogger mFileLogger _ -> Booster.Log.textLogger stderrLogger filteredBoosterContextLogger = flip Booster.Log.filterLogger boosterContextLogger $ \(Booster.Log.LogMessage ctxts _) -> let ctxt = map (\(Booster.Log.LogContext lc) -> Text.encodeUtf8 $ Booster.Log.toTextualLog lc) ctxts - in any (flip Booster.Log.mustMatch ctxt) logContexts + in any (flip Booster.Log.mustMatch ctxt) $ + logContexts + <> concatMap (\case Log.LevelOther o -> fromMaybe [] $ levelToContext Map.!? o; _ -> []) customLevels stateVar <- newMVar ServerState @@ -139,7 +141,7 @@ runServer port definitions defaultMain mLlvmLibrary simplificationLogFile mSMTOp , mSMTOptions , addedModules = mempty } - flip Log.runLoggingT (handleOutput stderrLogger mFileLogger) . Log.filterLogger levelFilter $ + flip Log.runLoggingT (handleOutput stderrLogger) . Log.filterLogger levelFilter $ jsonRpcServer srvSettings ( const $ diff --git a/dev-tools/kore-rpc-dev/Server.hs b/dev-tools/kore-rpc-dev/Server.hs index b65e21b669..b84c3101ea 100644 --- a/dev-tools/kore-rpc-dev/Server.hs +++ b/dev-tools/kore-rpc-dev/Server.hs @@ -19,7 +19,6 @@ import Control.Monad.Logger ( LoggingT (runLoggingT), MonadLoggerIO (askLoggerIO), ToLogStr (toLogStr), - defaultLoc, ) import Control.Monad.Logger qualified as Log import Control.Monad.Logger qualified as Logger @@ -28,11 +27,11 @@ import Data.Conduit.Network (serverSettings) import Data.IORef (writeIORef) import Data.InternedText (globalInternedTextCache) import Data.Map qualified as Map -import Data.Maybe (fromMaybe, mapMaybe, maybeToList) +import Data.Maybe (fromMaybe, mapMaybe) import Data.Set qualified as Set import Data.Text (Text) import Data.Text qualified as Text -import Data.Text.Encoding qualified as Text (decodeUtf8) +import Data.Text.Encoding qualified as Text (decodeUtf8, encodeUtf8) import Network.JSONRPC import Options.Applicative import System.Clock ( @@ -45,6 +44,7 @@ import System.IO (hPutStrLn, stderr) import System.Log.FastLogger (newTimeCache) import Booster.CLOptions +import Booster.Log.Context qualified import Booster.SMT.Base qualified as SMT (SExpr (..), SMTId (..)) import Booster.SMT.Interface (SMTOptions (..)) import Booster.Trace @@ -68,6 +68,7 @@ import Kore.Log.BoosterAdaptor ( defaultKoreLogOptions, koreSomeEntryLogAction, renderJson, + renderOnelinePretty, renderStandardPretty, swappableLogger, withLogger, @@ -140,24 +141,33 @@ main = do clOPts@CLOptions { port , logLevels + , logContexts + , logFormat , smtOptions , eventlogEnabledUserEvents - , simplificationLogFile + , logFile , logTimeStamps } } = options (logLevel, customLevels) = adjustLogLevels logLevels + logContextsWithcustomLevelContexts = + logContexts + <> concatMap (\case LevelOther o -> fromMaybe [] $ levelToContext Map.!? o; _ -> []) customLevels levelFilter :: Logger.LogSource -> LogLevel -> Bool levelFilter _source lvl = lvl `elem` customLevels || lvl >= logLevel && lvl <= LevelError koreLogExtraLevels = - Set.unions $ mapMaybe (`Map.lookup` koreExtraLogs) customLevels + if not (null logContextsWithcustomLevelContexts) + then -- context logging: enable all Proxy-required Kore log entries + Set.unions . Map.elems $ koreExtraLogs + else -- no context logging: only enable Kore log entries for the given Proxy log levels + Set.unions . mapMaybe (`Map.lookup` koreExtraLogs) $ customLevels koreSolverOptions = translateSMTOpts smtOptions mTimeCache <- if logTimeStamps then Just <$> (newTimeCache "%Y-%m-%d %T") else pure Nothing - Booster.withFastLogger mTimeCache simplificationLogFile $ \stderrLogger mFileLogger -> - flip runLoggingT (Booster.handleOutput stderrLogger mFileLogger) . Logger.filterLogger levelFilter $ do + Booster.withFastLogger mTimeCache logFile $ \stderrLogger mFileLogger -> + flip runLoggingT (Booster.handleOutput stderrLogger) . Logger.filterLogger levelFilter $ do liftIO $ forM_ eventlogEnabledUserEvents $ \t -> do putStrLn $ "Tracing " <> show t enableCustomUserEvent t @@ -168,29 +178,36 @@ main = do forall m. MonadIO m => [LogAction m Log.SomeEntry] - koreLogActions = [koreStandardPrettyLogAction, koreJsonLogAction] + koreLogActions = [koreLogAction] where - logAsJson = - if (Logger.LevelOther "SimplifyJson") `elem` customLevels - then \entry -> Log.entryTypeText entry `elem` getKoreEntriesForLevel (Logger.LevelOther "SimplifyJson") - else const False + koreLogRenderer = case logFormat of + Standard -> renderStandardPretty (ExeName "") (TimeSpec 0 0) TimestampsDisable + OneLine -> renderOnelinePretty (ExeName "") (TimeSpec 0 0) TimestampsDisable + Json -> renderJson (ExeName "") (TimeSpec 0 0) TimestampsDisable + koreLogEarlyFilter = case logFormat of + Json -> \l@(Log.SomeEntry ctxt e) -> + Log.oneLineJson e /= Null && koreFilterContext (ctxt <> [l]) + OneLine -> \l@(Log.SomeEntry ctxt _) -> koreFilterContext $ ctxt <> [l] + Standard -> const True + koreFilterContext ctxt = + null logContextsWithcustomLevelContexts + || ( let contextStrs = + concatMap + ( \(Log.SomeEntry _ c) -> Text.encodeUtf8 <$> Log.oneLineContextDoc c + ) + ctxt + in any (flip Booster.Log.Context.mustMatch contextStrs) logContextsWithcustomLevelContexts + ) - koreStandardPrettyLogAction = + koreLogAction = koreSomeEntryLogAction - (renderStandardPretty (ExeName "") (TimeSpec 0 0) TimestampsDisable) - (not . logAsJson) - (const True) - (LogAction $ \txt -> liftIO $ monadLogger defaultLoc "kore" logLevel $ toLogStr txt) - - koreJsonLogAction = - koreSomeEntryLogAction - (renderJson (ExeName "") (TimeSpec 0 0) TimestampsDisable) - logAsJson + koreLogRenderer + koreLogEarlyFilter (const True) ( LogAction $ \txt -> liftIO $ case mFileLogger of Just fileLogger -> fileLogger $ toLogStr $ txt <> "\n" - Nothing -> stderrLogger $ toLogStr $ "[SimplifyJson] " <> txt <> "\n" + Nothing -> stderrLogger $ toLogStr $ txt <> "\n" ) let coLogLevel = fromMaybe Log.Info $ toSeverity logLevel @@ -253,7 +270,6 @@ logLevelToKoreLogEntryMap :: Map.Map LogLevel [Text.Text] logLevelToKoreLogEntryMap = Map.fromList [ (LevelOther "SimplifyKore", ["DebugAttemptEquation", "DebugApplyEquation"]) - , (LevelOther "SimplifyJson", ["DebugAttemptEquation"]) , ( LevelOther "RewriteKore" , ["DebugAttemptedRewriteRules", "DebugAppliedLabeledRewriteRule", "DebugAppliedRewriteRules"] @@ -262,9 +278,6 @@ logLevelToKoreLogEntryMap = , (LevelOther "RewriteSuccess", ["DebugAppliedRewriteRules"]) ] -getKoreEntriesForLevel :: LogLevel -> [Text.Text] -getKoreEntriesForLevel level = concat . maybeToList $ Map.lookup level logLevelToKoreLogEntryMap - newtype CLProxyOptions = CLProxyOptions { clOptions :: CLOptions } diff --git a/scripts/booster-integration-tests.sh b/scripts/booster-integration-tests.sh index cebe10f8ec..30a3437e89 100755 --- a/scripts/booster-integration-tests.sh +++ b/scripts/booster-integration-tests.sh @@ -55,6 +55,9 @@ for dir in $(ls -d test-*); do "simplify") SERVER=$BOOSTER_DEV ./runDirectoryTest.sh test-$name $@ ;; + "log-simplify-json") + SERVER=$KORE_RPC_BOOSTER SERVER_OPTS="--log-format json -l Simplify --log-file test-$name/simplify-log.txt" ./runDirectoryTest.sh test-$name $@ + ;; "foundry-bug-report") SERVER=$KORE_RPC_BOOSTER ./runDirectoryTest.sh test-$name --time $@ SERVER=$KORE_RPC_BOOSTER SERVER_OPTS="--interim-simplification 100" ./runDirectoryTest.sh test-$name $@