/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data --core.log.level.for.class de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN -tc ../../../trunk/examples/toolchains/AutomizerCTransformed.xml -s ../../../trunk/examples/settings/automizer/LoopAccelerationJordanC.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_valuebound2.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-07 18:31:40,626 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-07 18:31:40,637 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-07 18:31:40,696 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-07 18:31:40,697 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-07 18:31:40,698 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-07 18:31:40,699 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-07 18:31:40,703 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-07 18:31:40,704 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-07 18:31:40,707 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-07 18:31:40,708 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-07 18:31:40,709 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-07 18:31:40,709 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-07 18:31:40,711 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-07 18:31:40,712 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-07 18:31:40,714 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-07 18:31:40,714 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-07 18:31:40,715 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-07 18:31:40,717 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-07 18:31:40,720 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-07 18:31:40,722 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-07 18:31:40,722 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-07 18:31:40,723 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-07 18:31:40,723 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-07 18:31:40,724 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-07 18:31:40,729 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-07 18:31:40,729 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-07 18:31:40,729 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-07 18:31:40,730 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-07 18:31:40,730 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-07 18:31:40,731 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-07 18:31:40,731 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-07 18:31:40,732 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-07 18:31:40,733 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-07 18:31:40,733 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-07 18:31:40,733 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-07 18:31:40,734 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-07 18:31:40,734 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-07 18:31:40,734 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-07 18:31:40,734 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-07 18:31:40,735 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-07 18:31:40,736 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-07 18:31:40,736 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/LoopAccelerationJordanC.epf [2022-04-07 18:31:40,747 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-07 18:31:40,747 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-07 18:31:40,748 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-07 18:31:40,748 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-07 18:31:40,748 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-07 18:31:40,749 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-07 18:31:40,749 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-07 18:31:40,749 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-07 18:31:40,749 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-07 18:31:40,749 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-07 18:31:40,750 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-07 18:31:40,750 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-07 18:31:40,750 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-07 18:31:40,750 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-07 18:31:40,750 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-07 18:31:40,750 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-07 18:31:40,750 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-07 18:31:40,750 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-07 18:31:40,750 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 18:31:40,750 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-07 18:31:40,751 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-07 18:31:40,751 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-07 18:31:40,751 INFO L138 SettingsManager]: * TransformationType=LOOP_ACCELERATION_JORDAN WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-07 18:31:40,900 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-07 18:31:40,917 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-07 18:31:40,919 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-07 18:31:40,920 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-07 18:31:40,921 INFO L275 PluginConnector]: CDTParser initialized [2022-04-07 18:31:40,922 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_valuebound2.c [2022-04-07 18:31:40,962 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/e1e6c4686/8b89043d61b2424a93622c3f10ecb1bf/FLAG4b208b6ba [2022-04-07 18:31:41,331 INFO L306 CDTParser]: Found 1 translation units. [2022-04-07 18:31:41,332 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_valuebound2.c [2022-04-07 18:31:41,342 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/e1e6c4686/8b89043d61b2424a93622c3f10ecb1bf/FLAG4b208b6ba [2022-04-07 18:31:41,749 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/e1e6c4686/8b89043d61b2424a93622c3f10ecb1bf [2022-04-07 18:31:41,751 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-07 18:31:41,752 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-07 18:31:41,753 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-07 18:31:41,753 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-07 18:31:41,757 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-07 18:31:41,758 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 06:31:41" (1/1) ... [2022-04-07 18:31:41,759 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7aa2f323 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:31:41, skipping insertion in model container [2022-04-07 18:31:41,759 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 06:31:41" (1/1) ... [2022-04-07 18:31:41,763 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-07 18:31:41,771 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-07 18:31:41,879 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_valuebound2.c[576,589] [2022-04-07 18:31:41,891 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 18:31:41,897 INFO L203 MainTranslator]: Completed pre-run [2022-04-07 18:31:41,913 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_valuebound2.c[576,589] [2022-04-07 18:31:41,919 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 18:31:41,936 INFO L208 MainTranslator]: Completed translation [2022-04-07 18:31:41,936 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:31:41 WrapperNode [2022-04-07 18:31:41,936 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-07 18:31:41,937 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-07 18:31:41,937 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-07 18:31:41,937 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-07 18:31:41,947 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:31:41" (1/1) ... [2022-04-07 18:31:41,947 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:31:41" (1/1) ... [2022-04-07 18:31:41,952 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:31:41" (1/1) ... [2022-04-07 18:31:41,952 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:31:41" (1/1) ... [2022-04-07 18:31:41,963 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:31:41" (1/1) ... [2022-04-07 18:31:41,969 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:31:41" (1/1) ... [2022-04-07 18:31:41,973 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:31:41" (1/1) ... [2022-04-07 18:31:41,975 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-07 18:31:41,975 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-07 18:31:41,975 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-07 18:31:41,976 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-07 18:31:41,976 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:31:41" (1/1) ... [2022-04-07 18:31:41,982 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 18:31:41,992 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 18:31:42,008 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-07 18:31:42,020 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-07 18:31:42,046 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-07 18:31:42,046 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-07 18:31:42,046 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-07 18:31:42,046 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-07 18:31:42,047 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-07 18:31:42,047 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-07 18:31:42,047 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-07 18:31:42,047 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-07 18:31:42,047 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-07 18:31:42,048 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-07 18:31:42,048 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-07 18:31:42,048 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-07 18:31:42,048 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-07 18:31:42,048 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-07 18:31:42,049 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-07 18:31:42,049 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-07 18:31:42,049 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-07 18:31:42,049 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-07 18:31:42,049 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-07 18:31:42,049 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-07 18:31:42,096 INFO L234 CfgBuilder]: Building ICFG [2022-04-07 18:31:42,097 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-07 18:31:42,291 INFO L275 CfgBuilder]: Performing block encoding [2022-04-07 18:31:42,296 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-07 18:31:42,296 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-07 18:31:42,297 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 06:31:42 BoogieIcfgContainer [2022-04-07 18:31:42,297 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-07 18:31:42,298 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-07 18:31:42,298 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-07 18:31:42,299 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-07 18:31:42,301 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 06:31:42" (1/1) ... [2022-04-07 18:31:42,302 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_JORDAN [2022-04-07 18:31:42,339 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 07.04 06:31:42 BasicIcfg [2022-04-07 18:31:42,339 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-07 18:31:42,340 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-07 18:31:42,340 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-07 18:31:42,343 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-07 18:31:42,343 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 07.04 06:31:41" (1/4) ... [2022-04-07 18:31:42,344 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@108f4be8 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 06:31:42, skipping insertion in model container [2022-04-07 18:31:42,344 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 06:31:41" (2/4) ... [2022-04-07 18:31:42,344 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@108f4be8 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 06:31:42, skipping insertion in model container [2022-04-07 18:31:42,344 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 06:31:42" (3/4) ... [2022-04-07 18:31:42,344 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@108f4be8 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 07.04 06:31:42, skipping insertion in model container [2022-04-07 18:31:42,344 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 07.04 06:31:42" (4/4) ... [2022-04-07 18:31:42,345 INFO L111 eAbstractionObserver]: Analyzing ICFG cohendiv-ll_valuebound2.cJordan [2022-04-07 18:31:42,348 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:ForwardPredicates Determinization: PREDICATE_ABSTRACTION [2022-04-07 18:31:42,348 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-07 18:31:42,373 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-07 18:31:42,378 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=ForwardPredicates, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=false, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP [2022-04-07 18:31:42,378 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-07 18:31:42,389 INFO L276 IsEmpty]: Start isEmpty. Operand has 39 states, 21 states have (on average 1.4285714285714286) internal successors, (30), 22 states have internal predecessors, (30), 12 states have call successors, (12), 4 states have call predecessors, (12), 4 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-07 18:31:42,394 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-07 18:31:42,394 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 18:31:42,394 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 18:31:42,395 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 18:31:42,400 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 18:31:42,401 INFO L85 PathProgramCache]: Analyzing trace with hash 795680375, now seen corresponding path program 1 times [2022-04-07 18:31:42,406 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 18:31:42,407 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [403914449] [2022-04-07 18:31:42,407 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:31:42,407 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 18:31:42,476 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:31:42,531 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-07 18:31:42,541 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:31:42,553 INFO L290 TraceCheckUtils]: 0: Hoare triple {59#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [103] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select |v_#length_1| 2) 14) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {42#true} is VALID [2022-04-07 18:31:42,554 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} [106] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-07 18:31:42,554 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {42#true} {42#true} [143] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-07 18:31:42,555 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-07 18:31:42,556 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:31:42,559 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {42#true} is VALID [2022-04-07 18:31:42,560 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-07 18:31:42,560 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-07 18:31:42,560 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#true} {42#true} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {42#true} is VALID [2022-04-07 18:31:42,560 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-07 18:31:42,561 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:31:42,565 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {42#true} is VALID [2022-04-07 18:31:42,565 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-07 18:31:42,565 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-07 18:31:42,565 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#true} {42#true} [145] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {42#true} is VALID [2022-04-07 18:31:42,565 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-07 18:31:42,567 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:31:42,570 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {42#true} is VALID [2022-04-07 18:31:42,570 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-07 18:31:42,570 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-07 18:31:42,570 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#true} {42#true} [146] assume_abort_if_notEXIT-->L31: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {42#true} is VALID [2022-04-07 18:31:42,587 INFO L272 TraceCheckUtils]: 0: Hoare triple {42#true} [101] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {59#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-07 18:31:42,588 INFO L290 TraceCheckUtils]: 1: Hoare triple {59#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [103] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select |v_#length_1| 2) 14) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {42#true} is VALID [2022-04-07 18:31:42,588 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#true} [106] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-07 18:31:42,588 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#true} {42#true} [143] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-07 18:31:42,588 INFO L272 TraceCheckUtils]: 4: Hoare triple {42#true} [102] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-07 18:31:42,589 INFO L290 TraceCheckUtils]: 5: Hoare triple {42#true} [105] mainENTRY-->L27: Formula: (and (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_1, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1, main_~a~0=v_main_~a~0_1} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~r~0, main_~a~0] {42#true} is VALID [2022-04-07 18:31:42,589 INFO L272 TraceCheckUtils]: 6: Hoare triple {42#true} [107] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {42#true} is VALID [2022-04-07 18:31:42,589 INFO L290 TraceCheckUtils]: 7: Hoare triple {42#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {42#true} is VALID [2022-04-07 18:31:42,589 INFO L290 TraceCheckUtils]: 8: Hoare triple {42#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-07 18:31:42,589 INFO L290 TraceCheckUtils]: 9: Hoare triple {42#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-07 18:31:42,590 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {42#true} {42#true} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {42#true} is VALID [2022-04-07 18:31:42,590 INFO L290 TraceCheckUtils]: 11: Hoare triple {42#true} [108] L27-1-->L29: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~y~0] {42#true} is VALID [2022-04-07 18:31:42,590 INFO L272 TraceCheckUtils]: 12: Hoare triple {42#true} [110] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {42#true} is VALID [2022-04-07 18:31:42,590 INFO L290 TraceCheckUtils]: 13: Hoare triple {42#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {42#true} is VALID [2022-04-07 18:31:42,590 INFO L290 TraceCheckUtils]: 14: Hoare triple {42#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-07 18:31:42,590 INFO L290 TraceCheckUtils]: 15: Hoare triple {42#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-07 18:31:42,591 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {42#true} {42#true} [145] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {42#true} is VALID [2022-04-07 18:31:42,591 INFO L272 TraceCheckUtils]: 17: Hoare triple {42#true} [113] L29-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {42#true} is VALID [2022-04-07 18:31:42,591 INFO L290 TraceCheckUtils]: 18: Hoare triple {42#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {42#true} is VALID [2022-04-07 18:31:42,591 INFO L290 TraceCheckUtils]: 19: Hoare triple {42#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-07 18:31:42,591 INFO L290 TraceCheckUtils]: 20: Hoare triple {42#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-07 18:31:42,592 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {42#true} {42#true} [146] assume_abort_if_notEXIT-->L31: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {42#true} is VALID [2022-04-07 18:31:42,592 INFO L290 TraceCheckUtils]: 22: Hoare triple {42#true} [115] L31-->L38-2: Formula: (and (= v_main_~b~0_2 0) (= v_main_~q~0_2 0) (= v_main_~a~0_2 0) (= v_main_~r~0_2 v_main_~x~0_5)) InVars {main_~x~0=v_main_~x~0_5} OutVars{main_~q~0=v_main_~q~0_2, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0, main_~a~0] {42#true} is VALID [2022-04-07 18:31:42,592 INFO L290 TraceCheckUtils]: 23: Hoare triple {42#true} [116] L38-2-->L38-3: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {43#false} is VALID [2022-04-07 18:31:42,592 INFO L272 TraceCheckUtils]: 24: Hoare triple {43#false} [119] L38-3-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_7| (ite (= v_main_~x~0_12 (+ v_main_~r~0_18 (* v_main_~q~0_10 v_main_~y~0_20))) 1 0)) InVars {main_~q~0=v_main_~q~0_10, main_~y~0=v_main_~y~0_20, main_~x~0=v_main_~x~0_12, main_~r~0=v_main_~r~0_18} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_7|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {43#false} is VALID [2022-04-07 18:31:42,593 INFO L290 TraceCheckUtils]: 25: Hoare triple {43#false} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {43#false} is VALID [2022-04-07 18:31:42,593 INFO L290 TraceCheckUtils]: 26: Hoare triple {43#false} [125] L15-->L16: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {43#false} is VALID [2022-04-07 18:31:42,593 INFO L290 TraceCheckUtils]: 27: Hoare triple {43#false} [129] L16-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {43#false} is VALID [2022-04-07 18:31:42,593 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-07 18:31:42,594 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 18:31:42,594 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [403914449] [2022-04-07 18:31:42,594 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [403914449] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 18:31:42,595 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 18:31:42,595 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-07 18:31:42,596 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1033281693] [2022-04-07 18:31:42,596 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 18:31:42,599 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) Word has length 28 [2022-04-07 18:31:42,600 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 18:31:42,602 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-07 18:31:42,628 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 18:31:42,628 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-07 18:31:42,628 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 18:31:42,650 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-07 18:31:42,651 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-07 18:31:42,653 INFO L87 Difference]: Start difference. First operand has 39 states, 21 states have (on average 1.4285714285714286) internal successors, (30), 22 states have internal predecessors, (30), 12 states have call successors, (12), 4 states have call predecessors, (12), 4 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) Second operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-07 18:31:42,824 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:31:42,824 INFO L93 Difference]: Finished difference Result 39 states and 48 transitions. [2022-04-07 18:31:42,824 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-07 18:31:42,824 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) Word has length 28 [2022-04-07 18:31:42,824 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 18:31:42,825 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-07 18:31:42,832 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 54 transitions. [2022-04-07 18:31:42,832 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-07 18:31:42,835 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 54 transitions. [2022-04-07 18:31:42,835 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 54 transitions. [2022-04-07 18:31:42,891 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 18:31:42,905 INFO L225 Difference]: With dead ends: 39 [2022-04-07 18:31:42,905 INFO L226 Difference]: Without dead ends: 34 [2022-04-07 18:31:42,911 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 9 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-07 18:31:42,913 INFO L913 BasicCegarLoop]: 38 mSDtfsCounter, 21 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 12 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 31 SdHoareTripleChecker+Valid, 41 SdHoareTripleChecker+Invalid, 23 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 12 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-07 18:31:42,915 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [31 Valid, 41 Invalid, 23 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 12 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-07 18:31:42,927 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-07 18:31:42,935 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 34. [2022-04-07 18:31:42,935 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 18:31:42,936 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 18:31:42,936 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 18:31:42,938 INFO L87 Difference]: Start difference. First operand 34 states. Second operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 18:31:42,945 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:31:42,945 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-07 18:31:42,945 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-07 18:31:42,946 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:31:42,946 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:31:42,947 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 34 states. [2022-04-07 18:31:42,948 INFO L87 Difference]: Start difference. First operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 34 states. [2022-04-07 18:31:42,955 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:31:42,955 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-07 18:31:42,955 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-07 18:31:42,957 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:31:42,957 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:31:42,957 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 18:31:42,957 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 18:31:42,958 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 18:31:42,966 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 43 transitions. [2022-04-07 18:31:42,967 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 43 transitions. Word has length 28 [2022-04-07 18:31:42,967 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 18:31:42,967 INFO L478 AbstractCegarLoop]: Abstraction has 34 states and 43 transitions. [2022-04-07 18:31:42,967 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-07 18:31:42,968 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-07 18:31:42,968 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-07 18:31:42,968 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 18:31:42,968 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 18:31:42,968 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-07 18:31:42,969 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 18:31:42,969 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 18:31:42,969 INFO L85 PathProgramCache]: Analyzing trace with hash 797557208, now seen corresponding path program 1 times [2022-04-07 18:31:42,969 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 18:31:42,969 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [637557536] [2022-04-07 18:31:42,969 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:31:42,970 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 18:31:43,008 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 18:31:43,009 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [802581882] [2022-04-07 18:31:43,009 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:31:43,009 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:31:43,009 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 18:31:43,010 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 18:31:43,013 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-07 18:31:43,053 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:31:43,054 INFO L263 TraceCheckSpWp]: Trace formula consists of 92 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-07 18:31:43,063 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:31:43,066 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 18:31:43,353 INFO L272 TraceCheckUtils]: 0: Hoare triple {203#true} [101] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {203#true} is VALID [2022-04-07 18:31:43,353 INFO L290 TraceCheckUtils]: 1: Hoare triple {203#true} [103] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select |v_#length_1| 2) 14) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {203#true} is VALID [2022-04-07 18:31:43,353 INFO L290 TraceCheckUtils]: 2: Hoare triple {203#true} [106] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {203#true} is VALID [2022-04-07 18:31:43,353 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {203#true} {203#true} [143] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {203#true} is VALID [2022-04-07 18:31:43,354 INFO L272 TraceCheckUtils]: 4: Hoare triple {203#true} [102] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {203#true} is VALID [2022-04-07 18:31:43,356 INFO L290 TraceCheckUtils]: 5: Hoare triple {203#true} [105] mainENTRY-->L27: Formula: (and (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_1, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1, main_~a~0=v_main_~a~0_1} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~r~0, main_~a~0] {203#true} is VALID [2022-04-07 18:31:43,356 INFO L272 TraceCheckUtils]: 6: Hoare triple {203#true} [107] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {203#true} is VALID [2022-04-07 18:31:43,357 INFO L290 TraceCheckUtils]: 7: Hoare triple {203#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {203#true} is VALID [2022-04-07 18:31:43,357 INFO L290 TraceCheckUtils]: 8: Hoare triple {203#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {203#true} is VALID [2022-04-07 18:31:43,357 INFO L290 TraceCheckUtils]: 9: Hoare triple {203#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {203#true} is VALID [2022-04-07 18:31:43,358 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {203#true} {203#true} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {203#true} is VALID [2022-04-07 18:31:43,358 INFO L290 TraceCheckUtils]: 11: Hoare triple {203#true} [108] L27-1-->L29: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~y~0] {203#true} is VALID [2022-04-07 18:31:43,363 INFO L272 TraceCheckUtils]: 12: Hoare triple {203#true} [110] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {203#true} is VALID [2022-04-07 18:31:43,364 INFO L290 TraceCheckUtils]: 13: Hoare triple {203#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {247#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 18:31:43,364 INFO L290 TraceCheckUtils]: 14: Hoare triple {247#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {251#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 18:31:43,365 INFO L290 TraceCheckUtils]: 15: Hoare triple {251#(not (= |assume_abort_if_not_#in~cond| 0))} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {251#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 18:31:43,365 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {251#(not (= |assume_abort_if_not_#in~cond| 0))} {203#true} [145] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {258#(and (<= 0 main_~y~0) (<= main_~y~0 2))} is VALID [2022-04-07 18:31:43,366 INFO L272 TraceCheckUtils]: 17: Hoare triple {258#(and (<= 0 main_~y~0) (<= main_~y~0 2))} [113] L29-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {203#true} is VALID [2022-04-07 18:31:43,366 INFO L290 TraceCheckUtils]: 18: Hoare triple {203#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {247#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 18:31:43,367 INFO L290 TraceCheckUtils]: 19: Hoare triple {247#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {251#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 18:31:43,367 INFO L290 TraceCheckUtils]: 20: Hoare triple {251#(not (= |assume_abort_if_not_#in~cond| 0))} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {251#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 18:31:43,368 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {251#(not (= |assume_abort_if_not_#in~cond| 0))} {258#(and (<= 0 main_~y~0) (<= main_~y~0 2))} [146] assume_abort_if_notEXIT-->L31: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {274#(and (<= main_~y~0 2) (<= 1 main_~y~0))} is VALID [2022-04-07 18:31:43,368 INFO L290 TraceCheckUtils]: 22: Hoare triple {274#(and (<= main_~y~0 2) (<= 1 main_~y~0))} [115] L31-->L38-2: Formula: (and (= v_main_~b~0_2 0) (= v_main_~q~0_2 0) (= v_main_~a~0_2 0) (= v_main_~r~0_2 v_main_~x~0_5)) InVars {main_~x~0=v_main_~x~0_5} OutVars{main_~q~0=v_main_~q~0_2, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0, main_~a~0] {278#(and (= main_~a~0 0) (<= main_~y~0 2) (= main_~b~0 0) (<= 1 main_~y~0))} is VALID [2022-04-07 18:31:43,369 INFO L290 TraceCheckUtils]: 23: Hoare triple {278#(and (= main_~a~0 0) (<= main_~y~0 2) (= main_~b~0 0) (<= 1 main_~y~0))} [118] L38-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {278#(and (= main_~a~0 0) (<= main_~y~0 2) (= main_~b~0 0) (<= 1 main_~y~0))} is VALID [2022-04-07 18:31:43,369 INFO L272 TraceCheckUtils]: 24: Hoare triple {278#(and (= main_~a~0 0) (<= main_~y~0 2) (= main_~b~0 0) (<= 1 main_~y~0))} [120] L39-->__VERIFIER_assertENTRY: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {285#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 18:31:43,370 INFO L290 TraceCheckUtils]: 25: Hoare triple {285#(<= 1 |__VERIFIER_assert_#in~cond|)} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {289#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 18:31:43,370 INFO L290 TraceCheckUtils]: 26: Hoare triple {289#(<= 1 __VERIFIER_assert_~cond)} [125] L15-->L16: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {204#false} is VALID [2022-04-07 18:31:43,371 INFO L290 TraceCheckUtils]: 27: Hoare triple {204#false} [129] L16-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {204#false} is VALID [2022-04-07 18:31:43,371 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-07 18:31:43,371 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 18:31:43,372 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 18:31:43,372 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [637557536] [2022-04-07 18:31:43,373 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 18:31:43,373 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [802581882] [2022-04-07 18:31:43,375 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [802581882] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 18:31:43,376 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 18:31:43,376 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-07 18:31:43,376 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [877215271] [2022-04-07 18:31:43,377 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 18:31:43,378 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 1.875) internal successors, (15), 6 states have internal predecessors, (15), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-07 18:31:43,378 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 18:31:43,378 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 1.875) internal successors, (15), 6 states have internal predecessors, (15), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-07 18:31:43,394 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 18:31:43,395 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-07 18:31:43,395 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 18:31:43,396 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-07 18:31:43,396 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=54, Unknown=0, NotChecked=0, Total=72 [2022-04-07 18:31:43,396 INFO L87 Difference]: Start difference. First operand 34 states and 43 transitions. Second operand has 9 states, 8 states have (on average 1.875) internal successors, (15), 6 states have internal predecessors, (15), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-07 18:31:43,729 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:31:43,729 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2022-04-07 18:31:43,729 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-07 18:31:43,729 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 1.875) internal successors, (15), 6 states have internal predecessors, (15), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-07 18:31:43,730 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 18:31:43,730 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 1.875) internal successors, (15), 6 states have internal predecessors, (15), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-07 18:31:43,732 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 55 transitions. [2022-04-07 18:31:43,732 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 1.875) internal successors, (15), 6 states have internal predecessors, (15), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-07 18:31:43,734 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 55 transitions. [2022-04-07 18:31:43,734 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 55 transitions. [2022-04-07 18:31:43,776 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 18:31:43,778 INFO L225 Difference]: With dead ends: 43 [2022-04-07 18:31:43,778 INFO L226 Difference]: Without dead ends: 43 [2022-04-07 18:31:43,779 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 29 GetRequests, 20 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=26, Invalid=84, Unknown=0, NotChecked=0, Total=110 [2022-04-07 18:31:43,781 INFO L913 BasicCegarLoop]: 36 mSDtfsCounter, 18 mSDsluCounter, 145 mSDsCounter, 0 mSdLazyCounter, 134 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 27 SdHoareTripleChecker+Valid, 181 SdHoareTripleChecker+Invalid, 135 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 134 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-07 18:31:43,782 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [27 Valid, 181 Invalid, 135 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 134 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-07 18:31:43,783 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 43 states. [2022-04-07 18:31:43,787 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 43 to 40. [2022-04-07 18:31:43,787 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 18:31:43,788 INFO L82 GeneralOperation]: Start isEquivalent. First operand 43 states. Second operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-07 18:31:43,788 INFO L74 IsIncluded]: Start isIncluded. First operand 43 states. Second operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-07 18:31:43,788 INFO L87 Difference]: Start difference. First operand 43 states. Second operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-07 18:31:43,790 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:31:43,791 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2022-04-07 18:31:43,791 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-07 18:31:43,791 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:31:43,791 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:31:43,792 INFO L74 IsIncluded]: Start isIncluded. First operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) Second operand 43 states. [2022-04-07 18:31:43,792 INFO L87 Difference]: Start difference. First operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) Second operand 43 states. [2022-04-07 18:31:43,794 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:31:43,794 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2022-04-07 18:31:43,794 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-07 18:31:43,795 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:31:43,795 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:31:43,795 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 18:31:43,795 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 18:31:43,795 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-07 18:31:43,797 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 49 transitions. [2022-04-07 18:31:43,797 INFO L78 Accepts]: Start accepts. Automaton has 40 states and 49 transitions. Word has length 28 [2022-04-07 18:31:43,797 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 18:31:43,797 INFO L478 AbstractCegarLoop]: Abstraction has 40 states and 49 transitions. [2022-04-07 18:31:43,797 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 1.875) internal successors, (15), 6 states have internal predecessors, (15), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-07 18:31:43,798 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 49 transitions. [2022-04-07 18:31:43,798 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-07 18:31:43,798 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 18:31:43,798 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 18:31:43,816 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-07 18:31:44,011 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:31:44,012 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 18:31:44,012 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 18:31:44,012 INFO L85 PathProgramCache]: Analyzing trace with hash 648866686, now seen corresponding path program 1 times [2022-04-07 18:31:44,012 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 18:31:44,012 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [952032283] [2022-04-07 18:31:44,012 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:31:44,013 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 18:31:44,026 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 18:31:44,026 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [699473316] [2022-04-07 18:31:44,026 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:31:44,026 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:31:44,026 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 18:31:44,027 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 18:31:44,028 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-07 18:31:44,058 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:31:44,068 INFO L263 TraceCheckSpWp]: Trace formula consists of 101 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-07 18:31:44,081 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:31:44,081 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 18:31:44,266 INFO L272 TraceCheckUtils]: 0: Hoare triple {468#true} [101] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {468#true} is VALID [2022-04-07 18:31:44,267 INFO L290 TraceCheckUtils]: 1: Hoare triple {468#true} [103] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select |v_#length_1| 2) 14) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {468#true} is VALID [2022-04-07 18:31:44,267 INFO L290 TraceCheckUtils]: 2: Hoare triple {468#true} [106] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {468#true} is VALID [2022-04-07 18:31:44,275 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {468#true} {468#true} [143] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {468#true} is VALID [2022-04-07 18:31:44,275 INFO L272 TraceCheckUtils]: 4: Hoare triple {468#true} [102] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {468#true} is VALID [2022-04-07 18:31:44,275 INFO L290 TraceCheckUtils]: 5: Hoare triple {468#true} [105] mainENTRY-->L27: Formula: (and (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_1, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1, main_~a~0=v_main_~a~0_1} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~r~0, main_~a~0] {468#true} is VALID [2022-04-07 18:31:44,275 INFO L272 TraceCheckUtils]: 6: Hoare triple {468#true} [107] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {468#true} is VALID [2022-04-07 18:31:44,275 INFO L290 TraceCheckUtils]: 7: Hoare triple {468#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {468#true} is VALID [2022-04-07 18:31:44,276 INFO L290 TraceCheckUtils]: 8: Hoare triple {468#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {468#true} is VALID [2022-04-07 18:31:44,276 INFO L290 TraceCheckUtils]: 9: Hoare triple {468#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {468#true} is VALID [2022-04-07 18:31:44,276 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {468#true} {468#true} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {468#true} is VALID [2022-04-07 18:31:44,276 INFO L290 TraceCheckUtils]: 11: Hoare triple {468#true} [108] L27-1-->L29: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~y~0] {468#true} is VALID [2022-04-07 18:31:44,276 INFO L272 TraceCheckUtils]: 12: Hoare triple {468#true} [110] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {468#true} is VALID [2022-04-07 18:31:44,278 INFO L290 TraceCheckUtils]: 13: Hoare triple {468#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {512#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 18:31:44,278 INFO L290 TraceCheckUtils]: 14: Hoare triple {512#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {516#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 18:31:44,278 INFO L290 TraceCheckUtils]: 15: Hoare triple {516#(not (= |assume_abort_if_not_#in~cond| 0))} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {516#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 18:31:44,279 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {516#(not (= |assume_abort_if_not_#in~cond| 0))} {468#true} [145] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {523#(and (<= 0 main_~y~0) (<= main_~y~0 2))} is VALID [2022-04-07 18:31:44,279 INFO L272 TraceCheckUtils]: 17: Hoare triple {523#(and (<= 0 main_~y~0) (<= main_~y~0 2))} [113] L29-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {468#true} is VALID [2022-04-07 18:31:44,279 INFO L290 TraceCheckUtils]: 18: Hoare triple {468#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {512#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 18:31:44,280 INFO L290 TraceCheckUtils]: 19: Hoare triple {512#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {516#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 18:31:44,281 INFO L290 TraceCheckUtils]: 20: Hoare triple {516#(not (= |assume_abort_if_not_#in~cond| 0))} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {516#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 18:31:44,281 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {516#(not (= |assume_abort_if_not_#in~cond| 0))} {523#(and (<= 0 main_~y~0) (<= main_~y~0 2))} [146] assume_abort_if_notEXIT-->L31: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {539#(and (<= main_~y~0 2) (<= 1 main_~y~0))} is VALID [2022-04-07 18:31:44,282 INFO L290 TraceCheckUtils]: 22: Hoare triple {539#(and (<= main_~y~0 2) (<= 1 main_~y~0))} [115] L31-->L38-2: Formula: (and (= v_main_~b~0_2 0) (= v_main_~q~0_2 0) (= v_main_~a~0_2 0) (= v_main_~r~0_2 v_main_~x~0_5)) InVars {main_~x~0=v_main_~x~0_5} OutVars{main_~q~0=v_main_~q~0_2, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0, main_~a~0] {543#(and (= main_~x~0 main_~r~0) (<= main_~y~0 2) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-07 18:31:44,282 INFO L290 TraceCheckUtils]: 23: Hoare triple {543#(and (= main_~x~0 main_~r~0) (<= main_~y~0 2) (= main_~q~0 0) (<= 1 main_~y~0))} [118] L38-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {543#(and (= main_~x~0 main_~r~0) (<= main_~y~0 2) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-07 18:31:44,282 INFO L272 TraceCheckUtils]: 24: Hoare triple {543#(and (= main_~x~0 main_~r~0) (<= main_~y~0 2) (= main_~q~0 0) (<= 1 main_~y~0))} [120] L39-->__VERIFIER_assertENTRY: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {468#true} is VALID [2022-04-07 18:31:44,282 INFO L290 TraceCheckUtils]: 25: Hoare triple {468#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {468#true} is VALID [2022-04-07 18:31:44,283 INFO L290 TraceCheckUtils]: 26: Hoare triple {468#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {468#true} is VALID [2022-04-07 18:31:44,283 INFO L290 TraceCheckUtils]: 27: Hoare triple {468#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {468#true} is VALID [2022-04-07 18:31:44,283 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {468#true} {543#(and (= main_~x~0 main_~r~0) (<= main_~y~0 2) (= main_~q~0 0) (<= 1 main_~y~0))} [148] __VERIFIER_assertEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {543#(and (= main_~x~0 main_~r~0) (<= main_~y~0 2) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-07 18:31:44,284 INFO L272 TraceCheckUtils]: 29: Hoare triple {543#(and (= main_~x~0 main_~r~0) (<= main_~y~0 2) (= main_~q~0 0) (<= 1 main_~y~0))} [123] L39-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {565#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 18:31:44,286 INFO L290 TraceCheckUtils]: 30: Hoare triple {565#(<= 1 |__VERIFIER_assert_#in~cond|)} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {569#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 18:31:44,286 INFO L290 TraceCheckUtils]: 31: Hoare triple {569#(<= 1 __VERIFIER_assert_~cond)} [125] L15-->L16: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {469#false} is VALID [2022-04-07 18:31:44,287 INFO L290 TraceCheckUtils]: 32: Hoare triple {469#false} [129] L16-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {469#false} is VALID [2022-04-07 18:31:44,287 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 8 proven. 0 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-07 18:31:44,287 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 18:31:44,287 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 18:31:44,287 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [952032283] [2022-04-07 18:31:44,287 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 18:31:44,287 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [699473316] [2022-04-07 18:31:44,288 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [699473316] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 18:31:44,288 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 18:31:44,288 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-07 18:31:44,288 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1682596417] [2022-04-07 18:31:44,288 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 18:31:44,288 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) Word has length 33 [2022-04-07 18:31:44,289 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 18:31:44,289 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-07 18:31:44,307 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 18:31:44,307 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-07 18:31:44,307 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 18:31:44,307 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-07 18:31:44,307 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=54, Unknown=0, NotChecked=0, Total=72 [2022-04-07 18:31:44,308 INFO L87 Difference]: Start difference. First operand 40 states and 49 transitions. Second operand has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-07 18:31:44,630 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:31:44,630 INFO L93 Difference]: Finished difference Result 55 states and 70 transitions. [2022-04-07 18:31:44,630 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-07 18:31:44,631 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) Word has length 33 [2022-04-07 18:31:44,631 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 18:31:44,631 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-07 18:31:44,633 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 68 transitions. [2022-04-07 18:31:44,633 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-07 18:31:44,635 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 68 transitions. [2022-04-07 18:31:44,635 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 68 transitions. [2022-04-07 18:31:44,679 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 18:31:44,681 INFO L225 Difference]: With dead ends: 55 [2022-04-07 18:31:44,681 INFO L226 Difference]: Without dead ends: 54 [2022-04-07 18:31:44,681 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 34 GetRequests, 25 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=26, Invalid=84, Unknown=0, NotChecked=0, Total=110 [2022-04-07 18:31:44,682 INFO L913 BasicCegarLoop]: 39 mSDtfsCounter, 39 mSDsluCounter, 127 mSDsCounter, 0 mSdLazyCounter, 129 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 51 SdHoareTripleChecker+Valid, 166 SdHoareTripleChecker+Invalid, 146 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 129 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-07 18:31:44,682 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [51 Valid, 166 Invalid, 146 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 129 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-07 18:31:44,682 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 54 states. [2022-04-07 18:31:44,685 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 54 to 53. [2022-04-07 18:31:44,685 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 18:31:44,686 INFO L82 GeneralOperation]: Start isEquivalent. First operand 54 states. Second operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-07 18:31:44,686 INFO L74 IsIncluded]: Start isIncluded. First operand 54 states. Second operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-07 18:31:44,686 INFO L87 Difference]: Start difference. First operand 54 states. Second operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-07 18:31:44,688 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:31:44,689 INFO L93 Difference]: Finished difference Result 54 states and 68 transitions. [2022-04-07 18:31:44,689 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 68 transitions. [2022-04-07 18:31:44,689 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:31:44,689 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:31:44,690 INFO L74 IsIncluded]: Start isIncluded. First operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 54 states. [2022-04-07 18:31:44,690 INFO L87 Difference]: Start difference. First operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 54 states. [2022-04-07 18:31:44,692 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:31:44,692 INFO L93 Difference]: Finished difference Result 54 states and 68 transitions. [2022-04-07 18:31:44,692 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 68 transitions. [2022-04-07 18:31:44,693 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:31:44,693 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:31:44,693 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 18:31:44,693 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 18:31:44,693 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-07 18:31:44,695 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 53 states to 53 states and 67 transitions. [2022-04-07 18:31:44,695 INFO L78 Accepts]: Start accepts. Automaton has 53 states and 67 transitions. Word has length 33 [2022-04-07 18:31:44,695 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 18:31:44,695 INFO L478 AbstractCegarLoop]: Abstraction has 53 states and 67 transitions. [2022-04-07 18:31:44,695 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-07 18:31:44,695 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 67 transitions. [2022-04-07 18:31:44,696 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-04-07 18:31:44,696 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 18:31:44,696 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 18:31:44,715 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2022-04-07 18:31:44,913 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-07 18:31:44,914 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 18:31:44,914 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 18:31:44,914 INFO L85 PathProgramCache]: Analyzing trace with hash 619469170, now seen corresponding path program 1 times [2022-04-07 18:31:44,914 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 18:31:44,914 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1610492337] [2022-04-07 18:31:44,914 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:31:44,915 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 18:31:44,931 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 18:31:44,931 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [888949202] [2022-04-07 18:31:44,931 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:31:44,931 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:31:44,932 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 18:31:44,932 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 18:31:44,933 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-07 18:31:44,969 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:31:44,970 INFO L263 TraceCheckSpWp]: Trace formula consists of 116 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-07 18:31:44,977 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:31:44,978 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 18:31:45,203 INFO L272 TraceCheckUtils]: 0: Hoare triple {795#true} [101] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-07 18:31:45,203 INFO L290 TraceCheckUtils]: 1: Hoare triple {795#true} [103] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select |v_#length_1| 2) 14) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {795#true} is VALID [2022-04-07 18:31:45,203 INFO L290 TraceCheckUtils]: 2: Hoare triple {795#true} [106] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-07 18:31:45,204 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {795#true} {795#true} [143] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-07 18:31:45,204 INFO L272 TraceCheckUtils]: 4: Hoare triple {795#true} [102] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-07 18:31:45,204 INFO L290 TraceCheckUtils]: 5: Hoare triple {795#true} [105] mainENTRY-->L27: Formula: (and (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_1, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1, main_~a~0=v_main_~a~0_1} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~r~0, main_~a~0] {795#true} is VALID [2022-04-07 18:31:45,204 INFO L272 TraceCheckUtils]: 6: Hoare triple {795#true} [107] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {795#true} is VALID [2022-04-07 18:31:45,204 INFO L290 TraceCheckUtils]: 7: Hoare triple {795#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {821#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 18:31:45,205 INFO L290 TraceCheckUtils]: 8: Hoare triple {821#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {825#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 18:31:45,205 INFO L290 TraceCheckUtils]: 9: Hoare triple {825#(not (= |assume_abort_if_not_#in~cond| 0))} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {825#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 18:31:45,206 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {825#(not (= |assume_abort_if_not_#in~cond| 0))} {795#true} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {832#(and (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-07 18:31:45,206 INFO L290 TraceCheckUtils]: 11: Hoare triple {832#(and (<= 0 main_~x~0) (<= main_~x~0 2))} [108] L27-1-->L29: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~y~0] {832#(and (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-07 18:31:45,207 INFO L272 TraceCheckUtils]: 12: Hoare triple {832#(and (<= 0 main_~x~0) (<= main_~x~0 2))} [110] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {795#true} is VALID [2022-04-07 18:31:45,207 INFO L290 TraceCheckUtils]: 13: Hoare triple {795#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {795#true} is VALID [2022-04-07 18:31:45,207 INFO L290 TraceCheckUtils]: 14: Hoare triple {795#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-07 18:31:45,207 INFO L290 TraceCheckUtils]: 15: Hoare triple {795#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-07 18:31:45,209 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {795#true} {832#(and (<= 0 main_~x~0) (<= main_~x~0 2))} [145] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {832#(and (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-07 18:31:45,209 INFO L272 TraceCheckUtils]: 17: Hoare triple {832#(and (<= 0 main_~x~0) (<= main_~x~0 2))} [113] L29-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {795#true} is VALID [2022-04-07 18:31:45,212 INFO L290 TraceCheckUtils]: 18: Hoare triple {795#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {821#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 18:31:45,212 INFO L290 TraceCheckUtils]: 19: Hoare triple {821#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {825#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 18:31:45,213 INFO L290 TraceCheckUtils]: 20: Hoare triple {825#(not (= |assume_abort_if_not_#in~cond| 0))} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {825#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 18:31:45,219 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {825#(not (= |assume_abort_if_not_#in~cond| 0))} {832#(and (<= 0 main_~x~0) (<= main_~x~0 2))} [146] assume_abort_if_notEXIT-->L31: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {866#(and (<= 0 main_~x~0) (<= 1 main_~y~0) (<= main_~x~0 2))} is VALID [2022-04-07 18:31:45,223 INFO L290 TraceCheckUtils]: 22: Hoare triple {866#(and (<= 0 main_~x~0) (<= 1 main_~y~0) (<= main_~x~0 2))} [115] L31-->L38-2: Formula: (and (= v_main_~b~0_2 0) (= v_main_~q~0_2 0) (= v_main_~a~0_2 0) (= v_main_~r~0_2 v_main_~x~0_5)) InVars {main_~x~0=v_main_~x~0_5} OutVars{main_~q~0=v_main_~q~0_2, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0, main_~a~0] {870#(and (<= main_~r~0 2) (<= 1 main_~y~0))} is VALID [2022-04-07 18:31:45,223 INFO L290 TraceCheckUtils]: 23: Hoare triple {870#(and (<= main_~r~0 2) (<= 1 main_~y~0))} [118] L38-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {870#(and (<= main_~r~0 2) (<= 1 main_~y~0))} is VALID [2022-04-07 18:31:45,224 INFO L272 TraceCheckUtils]: 24: Hoare triple {870#(and (<= main_~r~0 2) (<= 1 main_~y~0))} [120] L39-->__VERIFIER_assertENTRY: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {795#true} is VALID [2022-04-07 18:31:45,224 INFO L290 TraceCheckUtils]: 25: Hoare triple {795#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {795#true} is VALID [2022-04-07 18:31:45,224 INFO L290 TraceCheckUtils]: 26: Hoare triple {795#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-07 18:31:45,224 INFO L290 TraceCheckUtils]: 27: Hoare triple {795#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-07 18:31:45,224 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {795#true} {870#(and (<= main_~r~0 2) (<= 1 main_~y~0))} [148] __VERIFIER_assertEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {870#(and (<= main_~r~0 2) (<= 1 main_~y~0))} is VALID [2022-04-07 18:31:45,225 INFO L272 TraceCheckUtils]: 29: Hoare triple {870#(and (<= main_~r~0 2) (<= 1 main_~y~0))} [123] L39-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {795#true} is VALID [2022-04-07 18:31:45,225 INFO L290 TraceCheckUtils]: 30: Hoare triple {795#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {795#true} is VALID [2022-04-07 18:31:45,225 INFO L290 TraceCheckUtils]: 31: Hoare triple {795#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-07 18:31:45,225 INFO L290 TraceCheckUtils]: 32: Hoare triple {795#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-07 18:31:45,225 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {795#true} {870#(and (<= main_~r~0 2) (<= 1 main_~y~0))} [149] __VERIFIER_assertEXIT-->L40: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {870#(and (<= main_~r~0 2) (<= 1 main_~y~0))} is VALID [2022-04-07 18:31:45,226 INFO L290 TraceCheckUtils]: 34: Hoare triple {870#(and (<= main_~r~0 2) (<= 1 main_~y~0))} [128] L40-->L47-2: Formula: (and (= v_main_~b~0_4 v_main_~y~0_8) (<= v_main_~y~0_8 v_main_~r~0_5) (= v_main_~a~0_4 1)) InVars {main_~y~0=v_main_~y~0_8, main_~r~0=v_main_~r~0_5} OutVars{main_~y~0=v_main_~y~0_8, main_~b~0=v_main_~b~0_4, main_~r~0=v_main_~r~0_5, main_~a~0=v_main_~a~0_4} AuxVars[] AssignedVars[main_~b~0, main_~a~0] {907#(and (= main_~a~0 1) (<= main_~y~0 2) (= main_~b~0 main_~y~0) (<= 1 main_~y~0))} is VALID [2022-04-07 18:31:45,226 INFO L290 TraceCheckUtils]: 35: Hoare triple {907#(and (= main_~a~0 1) (<= main_~y~0 2) (= main_~b~0 main_~y~0) (<= 1 main_~y~0))} [134] L47-2-->L48: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {907#(and (= main_~a~0 1) (<= main_~y~0 2) (= main_~b~0 main_~y~0) (<= 1 main_~y~0))} is VALID [2022-04-07 18:31:45,227 INFO L272 TraceCheckUtils]: 36: Hoare triple {907#(and (= main_~a~0 1) (<= main_~y~0 2) (= main_~b~0 main_~y~0) (<= 1 main_~y~0))} [136] L48-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_3| (ite (= (* v_main_~y~0_17 v_main_~a~0_11) v_main_~b~0_12) 1 0)) InVars {main_~y~0=v_main_~y~0_17, main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {914#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 18:31:45,227 INFO L290 TraceCheckUtils]: 37: Hoare triple {914#(<= 1 |__VERIFIER_assert_#in~cond|)} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {918#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 18:31:45,228 INFO L290 TraceCheckUtils]: 38: Hoare triple {918#(<= 1 __VERIFIER_assert_~cond)} [125] L15-->L16: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {796#false} is VALID [2022-04-07 18:31:45,228 INFO L290 TraceCheckUtils]: 39: Hoare triple {796#false} [129] L16-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {796#false} is VALID [2022-04-07 18:31:45,228 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 7 proven. 3 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2022-04-07 18:31:45,228 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 18:31:45,436 INFO L290 TraceCheckUtils]: 39: Hoare triple {796#false} [129] L16-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {796#false} is VALID [2022-04-07 18:31:45,437 INFO L290 TraceCheckUtils]: 38: Hoare triple {918#(<= 1 __VERIFIER_assert_~cond)} [125] L15-->L16: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {796#false} is VALID [2022-04-07 18:31:45,437 INFO L290 TraceCheckUtils]: 37: Hoare triple {914#(<= 1 |__VERIFIER_assert_#in~cond|)} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {918#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 18:31:45,438 INFO L272 TraceCheckUtils]: 36: Hoare triple {934#(= main_~b~0 (* main_~a~0 main_~y~0))} [136] L48-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_3| (ite (= (* v_main_~y~0_17 v_main_~a~0_11) v_main_~b~0_12) 1 0)) InVars {main_~y~0=v_main_~y~0_17, main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {914#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 18:31:45,438 INFO L290 TraceCheckUtils]: 35: Hoare triple {934#(= main_~b~0 (* main_~a~0 main_~y~0))} [134] L47-2-->L48: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {934#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-07 18:31:45,439 INFO L290 TraceCheckUtils]: 34: Hoare triple {795#true} [128] L40-->L47-2: Formula: (and (= v_main_~b~0_4 v_main_~y~0_8) (<= v_main_~y~0_8 v_main_~r~0_5) (= v_main_~a~0_4 1)) InVars {main_~y~0=v_main_~y~0_8, main_~r~0=v_main_~r~0_5} OutVars{main_~y~0=v_main_~y~0_8, main_~b~0=v_main_~b~0_4, main_~r~0=v_main_~r~0_5, main_~a~0=v_main_~a~0_4} AuxVars[] AssignedVars[main_~b~0, main_~a~0] {934#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-07 18:31:45,439 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {795#true} {795#true} [149] __VERIFIER_assertEXIT-->L40: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {795#true} is VALID [2022-04-07 18:31:45,439 INFO L290 TraceCheckUtils]: 32: Hoare triple {795#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-07 18:31:45,439 INFO L290 TraceCheckUtils]: 31: Hoare triple {795#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-07 18:31:45,439 INFO L290 TraceCheckUtils]: 30: Hoare triple {795#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {795#true} is VALID [2022-04-07 18:31:45,439 INFO L272 TraceCheckUtils]: 29: Hoare triple {795#true} [123] L39-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {795#true} is VALID [2022-04-07 18:31:45,439 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {795#true} {795#true} [148] __VERIFIER_assertEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {795#true} is VALID [2022-04-07 18:31:45,439 INFO L290 TraceCheckUtils]: 27: Hoare triple {795#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-07 18:31:45,440 INFO L290 TraceCheckUtils]: 26: Hoare triple {795#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-07 18:31:45,440 INFO L290 TraceCheckUtils]: 25: Hoare triple {795#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {795#true} is VALID [2022-04-07 18:31:45,440 INFO L272 TraceCheckUtils]: 24: Hoare triple {795#true} [120] L39-->__VERIFIER_assertENTRY: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {795#true} is VALID [2022-04-07 18:31:45,440 INFO L290 TraceCheckUtils]: 23: Hoare triple {795#true} [118] L38-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-07 18:31:45,440 INFO L290 TraceCheckUtils]: 22: Hoare triple {795#true} [115] L31-->L38-2: Formula: (and (= v_main_~b~0_2 0) (= v_main_~q~0_2 0) (= v_main_~a~0_2 0) (= v_main_~r~0_2 v_main_~x~0_5)) InVars {main_~x~0=v_main_~x~0_5} OutVars{main_~q~0=v_main_~q~0_2, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0, main_~a~0] {795#true} is VALID [2022-04-07 18:31:45,440 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {795#true} {795#true} [146] assume_abort_if_notEXIT-->L31: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {795#true} is VALID [2022-04-07 18:31:45,440 INFO L290 TraceCheckUtils]: 20: Hoare triple {795#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-07 18:31:45,440 INFO L290 TraceCheckUtils]: 19: Hoare triple {795#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-07 18:31:45,440 INFO L290 TraceCheckUtils]: 18: Hoare triple {795#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {795#true} is VALID [2022-04-07 18:31:45,440 INFO L272 TraceCheckUtils]: 17: Hoare triple {795#true} [113] L29-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {795#true} is VALID [2022-04-07 18:31:45,441 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {795#true} {795#true} [145] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {795#true} is VALID [2022-04-07 18:31:45,441 INFO L290 TraceCheckUtils]: 15: Hoare triple {795#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-07 18:31:45,441 INFO L290 TraceCheckUtils]: 14: Hoare triple {795#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-07 18:31:45,441 INFO L290 TraceCheckUtils]: 13: Hoare triple {795#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {795#true} is VALID [2022-04-07 18:31:45,441 INFO L272 TraceCheckUtils]: 12: Hoare triple {795#true} [110] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {795#true} is VALID [2022-04-07 18:31:45,441 INFO L290 TraceCheckUtils]: 11: Hoare triple {795#true} [108] L27-1-->L29: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~y~0] {795#true} is VALID [2022-04-07 18:31:45,441 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {795#true} {795#true} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {795#true} is VALID [2022-04-07 18:31:45,441 INFO L290 TraceCheckUtils]: 9: Hoare triple {795#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-07 18:31:45,441 INFO L290 TraceCheckUtils]: 8: Hoare triple {795#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-07 18:31:45,441 INFO L290 TraceCheckUtils]: 7: Hoare triple {795#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {795#true} is VALID [2022-04-07 18:31:45,442 INFO L272 TraceCheckUtils]: 6: Hoare triple {795#true} [107] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {795#true} is VALID [2022-04-07 18:31:45,442 INFO L290 TraceCheckUtils]: 5: Hoare triple {795#true} [105] mainENTRY-->L27: Formula: (and (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_1, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1, main_~a~0=v_main_~a~0_1} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~r~0, main_~a~0] {795#true} is VALID [2022-04-07 18:31:45,442 INFO L272 TraceCheckUtils]: 4: Hoare triple {795#true} [102] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-07 18:31:45,442 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {795#true} {795#true} [143] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-07 18:31:45,442 INFO L290 TraceCheckUtils]: 2: Hoare triple {795#true} [106] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-07 18:31:45,442 INFO L290 TraceCheckUtils]: 1: Hoare triple {795#true} [103] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select |v_#length_1| 2) 14) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {795#true} is VALID [2022-04-07 18:31:45,442 INFO L272 TraceCheckUtils]: 0: Hoare triple {795#true} [101] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-07 18:31:45,442 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-07 18:31:45,442 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 18:31:45,443 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1610492337] [2022-04-07 18:31:45,443 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 18:31:45,443 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [888949202] [2022-04-07 18:31:45,443 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [888949202] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-07 18:31:45,443 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-07 18:31:45,443 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [10] total 11 [2022-04-07 18:31:45,443 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [747786339] [2022-04-07 18:31:45,443 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 18:31:45,444 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) Word has length 40 [2022-04-07 18:31:45,444 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 18:31:45,444 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-07 18:31:45,464 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 18:31:45,464 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-07 18:31:45,464 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 18:31:45,464 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-07 18:31:45,465 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=89, Unknown=0, NotChecked=0, Total=110 [2022-04-07 18:31:45,465 INFO L87 Difference]: Start difference. First operand 53 states and 67 transitions. Second operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-07 18:31:45,605 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:31:45,605 INFO L93 Difference]: Finished difference Result 57 states and 70 transitions. [2022-04-07 18:31:45,605 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-07 18:31:45,605 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) Word has length 40 [2022-04-07 18:31:45,605 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 18:31:45,605 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-07 18:31:45,606 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 47 transitions. [2022-04-07 18:31:45,607 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-07 18:31:45,607 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 47 transitions. [2022-04-07 18:31:45,608 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 47 transitions. [2022-04-07 18:31:45,643 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 18:31:45,644 INFO L225 Difference]: With dead ends: 57 [2022-04-07 18:31:45,644 INFO L226 Difference]: Without dead ends: 57 [2022-04-07 18:31:45,645 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 80 GetRequests, 69 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=25, Invalid=107, Unknown=0, NotChecked=0, Total=132 [2022-04-07 18:31:45,645 INFO L913 BasicCegarLoop]: 33 mSDtfsCounter, 10 mSDsluCounter, 69 mSDsCounter, 0 mSdLazyCounter, 53 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 16 SdHoareTripleChecker+Valid, 102 SdHoareTripleChecker+Invalid, 56 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 53 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-07 18:31:45,646 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [16 Valid, 102 Invalid, 56 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 53 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-07 18:31:45,646 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 57 states. [2022-04-07 18:31:45,649 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 57 to 57. [2022-04-07 18:31:45,649 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 18:31:45,649 INFO L82 GeneralOperation]: Start isEquivalent. First operand 57 states. Second operand has 57 states, 32 states have (on average 1.125) internal successors, (36), 33 states have internal predecessors, (36), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-07 18:31:45,649 INFO L74 IsIncluded]: Start isIncluded. First operand 57 states. Second operand has 57 states, 32 states have (on average 1.125) internal successors, (36), 33 states have internal predecessors, (36), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-07 18:31:45,650 INFO L87 Difference]: Start difference. First operand 57 states. Second operand has 57 states, 32 states have (on average 1.125) internal successors, (36), 33 states have internal predecessors, (36), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-07 18:31:45,652 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:31:45,652 INFO L93 Difference]: Finished difference Result 57 states and 70 transitions. [2022-04-07 18:31:45,652 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 70 transitions. [2022-04-07 18:31:45,652 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:31:45,652 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:31:45,653 INFO L74 IsIncluded]: Start isIncluded. First operand has 57 states, 32 states have (on average 1.125) internal successors, (36), 33 states have internal predecessors, (36), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 57 states. [2022-04-07 18:31:45,653 INFO L87 Difference]: Start difference. First operand has 57 states, 32 states have (on average 1.125) internal successors, (36), 33 states have internal predecessors, (36), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 57 states. [2022-04-07 18:31:45,655 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:31:45,655 INFO L93 Difference]: Finished difference Result 57 states and 70 transitions. [2022-04-07 18:31:45,655 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 70 transitions. [2022-04-07 18:31:45,655 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:31:45,655 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:31:45,655 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 18:31:45,655 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 18:31:45,656 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 57 states, 32 states have (on average 1.125) internal successors, (36), 33 states have internal predecessors, (36), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-07 18:31:45,657 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 57 states to 57 states and 70 transitions. [2022-04-07 18:31:45,657 INFO L78 Accepts]: Start accepts. Automaton has 57 states and 70 transitions. Word has length 40 [2022-04-07 18:31:45,657 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 18:31:45,658 INFO L478 AbstractCegarLoop]: Abstraction has 57 states and 70 transitions. [2022-04-07 18:31:45,658 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-07 18:31:45,658 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 70 transitions. [2022-04-07 18:31:45,658 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2022-04-07 18:31:45,658 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 18:31:45,658 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 18:31:45,693 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-07 18:31:45,863 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:31:45,863 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 18:31:45,864 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 18:31:45,864 INFO L85 PathProgramCache]: Analyzing trace with hash -574143214, now seen corresponding path program 1 times [2022-04-07 18:31:45,864 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 18:31:45,864 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [508906508] [2022-04-07 18:31:45,864 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:31:45,864 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 18:31:45,881 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 18:31:45,882 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [791248147] [2022-04-07 18:31:45,882 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:31:45,882 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:31:45,882 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 18:31:45,884 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 18:31:45,884 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-07 18:31:45,919 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:31:45,920 INFO L263 TraceCheckSpWp]: Trace formula consists of 134 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-07 18:31:45,934 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:31:45,935 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 18:31:46,096 INFO L272 TraceCheckUtils]: 0: Hoare triple {1275#true} [101] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1275#true} is VALID [2022-04-07 18:31:46,096 INFO L290 TraceCheckUtils]: 1: Hoare triple {1275#true} [103] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select |v_#length_1| 2) 14) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1275#true} is VALID [2022-04-07 18:31:46,096 INFO L290 TraceCheckUtils]: 2: Hoare triple {1275#true} [106] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1275#true} is VALID [2022-04-07 18:31:46,096 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1275#true} {1275#true} [143] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1275#true} is VALID [2022-04-07 18:31:46,097 INFO L272 TraceCheckUtils]: 4: Hoare triple {1275#true} [102] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1275#true} is VALID [2022-04-07 18:31:46,097 INFO L290 TraceCheckUtils]: 5: Hoare triple {1275#true} [105] mainENTRY-->L27: Formula: (and (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_1, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1, main_~a~0=v_main_~a~0_1} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~r~0, main_~a~0] {1275#true} is VALID [2022-04-07 18:31:46,097 INFO L272 TraceCheckUtils]: 6: Hoare triple {1275#true} [107] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {1275#true} is VALID [2022-04-07 18:31:46,097 INFO L290 TraceCheckUtils]: 7: Hoare triple {1275#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1275#true} is VALID [2022-04-07 18:31:46,097 INFO L290 TraceCheckUtils]: 8: Hoare triple {1275#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1275#true} is VALID [2022-04-07 18:31:46,097 INFO L290 TraceCheckUtils]: 9: Hoare triple {1275#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1275#true} is VALID [2022-04-07 18:31:46,097 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1275#true} {1275#true} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {1275#true} is VALID [2022-04-07 18:31:46,097 INFO L290 TraceCheckUtils]: 11: Hoare triple {1275#true} [108] L27-1-->L29: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~y~0] {1275#true} is VALID [2022-04-07 18:31:46,097 INFO L272 TraceCheckUtils]: 12: Hoare triple {1275#true} [110] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1275#true} is VALID [2022-04-07 18:31:46,100 INFO L290 TraceCheckUtils]: 13: Hoare triple {1275#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1275#true} is VALID [2022-04-07 18:31:46,101 INFO L290 TraceCheckUtils]: 14: Hoare triple {1275#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1275#true} is VALID [2022-04-07 18:31:46,101 INFO L290 TraceCheckUtils]: 15: Hoare triple {1275#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1275#true} is VALID [2022-04-07 18:31:46,101 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1275#true} {1275#true} [145] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1275#true} is VALID [2022-04-07 18:31:46,101 INFO L272 TraceCheckUtils]: 17: Hoare triple {1275#true} [113] L29-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1275#true} is VALID [2022-04-07 18:31:46,101 INFO L290 TraceCheckUtils]: 18: Hoare triple {1275#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1334#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 18:31:46,102 INFO L290 TraceCheckUtils]: 19: Hoare triple {1334#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1338#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 18:31:46,102 INFO L290 TraceCheckUtils]: 20: Hoare triple {1338#(not (= |assume_abort_if_not_#in~cond| 0))} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1338#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 18:31:46,102 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1338#(not (= |assume_abort_if_not_#in~cond| 0))} {1275#true} [146] assume_abort_if_notEXIT-->L31: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1345#(<= 1 main_~y~0)} is VALID [2022-04-07 18:31:46,103 INFO L290 TraceCheckUtils]: 22: Hoare triple {1345#(<= 1 main_~y~0)} [115] L31-->L38-2: Formula: (and (= v_main_~b~0_2 0) (= v_main_~q~0_2 0) (= v_main_~a~0_2 0) (= v_main_~r~0_2 v_main_~x~0_5)) InVars {main_~x~0=v_main_~x~0_5} OutVars{main_~q~0=v_main_~q~0_2, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0, main_~a~0] {1345#(<= 1 main_~y~0)} is VALID [2022-04-07 18:31:46,103 INFO L290 TraceCheckUtils]: 23: Hoare triple {1345#(<= 1 main_~y~0)} [118] L38-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1345#(<= 1 main_~y~0)} is VALID [2022-04-07 18:31:46,103 INFO L272 TraceCheckUtils]: 24: Hoare triple {1345#(<= 1 main_~y~0)} [120] L39-->__VERIFIER_assertENTRY: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {1275#true} is VALID [2022-04-07 18:31:46,103 INFO L290 TraceCheckUtils]: 25: Hoare triple {1275#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1275#true} is VALID [2022-04-07 18:31:46,103 INFO L290 TraceCheckUtils]: 26: Hoare triple {1275#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1275#true} is VALID [2022-04-07 18:31:46,103 INFO L290 TraceCheckUtils]: 27: Hoare triple {1275#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1275#true} is VALID [2022-04-07 18:31:46,104 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1275#true} {1345#(<= 1 main_~y~0)} [148] __VERIFIER_assertEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {1345#(<= 1 main_~y~0)} is VALID [2022-04-07 18:31:46,104 INFO L272 TraceCheckUtils]: 29: Hoare triple {1345#(<= 1 main_~y~0)} [123] L39-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {1275#true} is VALID [2022-04-07 18:31:46,104 INFO L290 TraceCheckUtils]: 30: Hoare triple {1275#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1275#true} is VALID [2022-04-07 18:31:46,104 INFO L290 TraceCheckUtils]: 31: Hoare triple {1275#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1275#true} is VALID [2022-04-07 18:31:46,104 INFO L290 TraceCheckUtils]: 32: Hoare triple {1275#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1275#true} is VALID [2022-04-07 18:31:46,105 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1275#true} {1345#(<= 1 main_~y~0)} [149] __VERIFIER_assertEXIT-->L40: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {1345#(<= 1 main_~y~0)} is VALID [2022-04-07 18:31:46,105 INFO L290 TraceCheckUtils]: 34: Hoare triple {1345#(<= 1 main_~y~0)} [128] L40-->L47-2: Formula: (and (= v_main_~b~0_4 v_main_~y~0_8) (<= v_main_~y~0_8 v_main_~r~0_5) (= v_main_~a~0_4 1)) InVars {main_~y~0=v_main_~y~0_8, main_~r~0=v_main_~r~0_5} OutVars{main_~y~0=v_main_~y~0_8, main_~b~0=v_main_~b~0_4, main_~r~0=v_main_~r~0_5, main_~a~0=v_main_~a~0_4} AuxVars[] AssignedVars[main_~b~0, main_~a~0] {1385#(<= 1 main_~r~0)} is VALID [2022-04-07 18:31:46,105 INFO L290 TraceCheckUtils]: 35: Hoare triple {1385#(<= 1 main_~r~0)} [134] L47-2-->L48: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1385#(<= 1 main_~r~0)} is VALID [2022-04-07 18:31:46,106 INFO L272 TraceCheckUtils]: 36: Hoare triple {1385#(<= 1 main_~r~0)} [136] L48-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_3| (ite (= (* v_main_~y~0_17 v_main_~a~0_11) v_main_~b~0_12) 1 0)) InVars {main_~y~0=v_main_~y~0_17, main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {1275#true} is VALID [2022-04-07 18:31:46,106 INFO L290 TraceCheckUtils]: 37: Hoare triple {1275#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1275#true} is VALID [2022-04-07 18:31:46,107 INFO L290 TraceCheckUtils]: 38: Hoare triple {1275#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1275#true} is VALID [2022-04-07 18:31:46,107 INFO L290 TraceCheckUtils]: 39: Hoare triple {1275#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1275#true} is VALID [2022-04-07 18:31:46,107 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {1275#true} {1385#(<= 1 main_~r~0)} [150] __VERIFIER_assertEXIT-->L48-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_3| (ite (= (* v_main_~y~0_17 v_main_~a~0_11) v_main_~b~0_12) 1 0)) InVars {main_~y~0=v_main_~y~0_17, main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {1385#(<= 1 main_~r~0)} is VALID [2022-04-07 18:31:46,107 INFO L272 TraceCheckUtils]: 41: Hoare triple {1385#(<= 1 main_~r~0)} [137] L48-1-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~x~0_11 (+ v_main_~r~0_15 (* v_main_~y~0_18 v_main_~q~0_9))) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~q~0=v_main_~q~0_9, main_~y~0=v_main_~y~0_18, main_~x~0=v_main_~x~0_11, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {1275#true} is VALID [2022-04-07 18:31:46,107 INFO L290 TraceCheckUtils]: 42: Hoare triple {1275#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1275#true} is VALID [2022-04-07 18:31:46,108 INFO L290 TraceCheckUtils]: 43: Hoare triple {1275#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1275#true} is VALID [2022-04-07 18:31:46,108 INFO L290 TraceCheckUtils]: 44: Hoare triple {1275#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1275#true} is VALID [2022-04-07 18:31:46,108 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {1275#true} {1385#(<= 1 main_~r~0)} [151] __VERIFIER_assertEXIT-->L49: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= v_main_~x~0_11 (+ v_main_~r~0_15 (* v_main_~y~0_18 v_main_~q~0_9))) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~q~0=v_main_~q~0_9, main_~y~0=v_main_~y~0_18, main_~x~0=v_main_~x~0_11, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {1385#(<= 1 main_~r~0)} is VALID [2022-04-07 18:31:46,109 INFO L272 TraceCheckUtils]: 46: Hoare triple {1385#(<= 1 main_~r~0)} [138] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_5| (ite (<= 0 v_main_~r~0_16) 1 0)) InVars {main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_5|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~r~0] {1422#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 18:31:46,109 INFO L290 TraceCheckUtils]: 47: Hoare triple {1422#(<= 1 |__VERIFIER_assert_#in~cond|)} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1426#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 18:31:46,109 INFO L290 TraceCheckUtils]: 48: Hoare triple {1426#(<= 1 __VERIFIER_assert_~cond)} [125] L15-->L16: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1276#false} is VALID [2022-04-07 18:31:46,109 INFO L290 TraceCheckUtils]: 49: Hoare triple {1276#false} [129] L16-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1276#false} is VALID [2022-04-07 18:31:46,110 INFO L134 CoverageAnalysis]: Checked inductivity of 44 backedges. 14 proven. 0 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2022-04-07 18:31:46,110 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 18:31:46,110 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 18:31:46,111 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [508906508] [2022-04-07 18:31:46,111 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 18:31:46,111 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [791248147] [2022-04-07 18:31:46,111 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [791248147] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 18:31:46,111 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 18:31:46,111 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-07 18:31:46,111 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [164248266] [2022-04-07 18:31:46,111 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 18:31:46,111 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) Word has length 50 [2022-04-07 18:31:46,113 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 18:31:46,113 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-07 18:31:46,132 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 18:31:46,133 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-07 18:31:46,133 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 18:31:46,133 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-07 18:31:46,133 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-04-07 18:31:46,133 INFO L87 Difference]: Start difference. First operand 57 states and 70 transitions. Second operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-07 18:31:46,377 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:31:46,377 INFO L93 Difference]: Finished difference Result 61 states and 73 transitions. [2022-04-07 18:31:46,377 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-07 18:31:46,377 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) Word has length 50 [2022-04-07 18:31:46,377 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 18:31:46,378 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-07 18:31:46,379 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-07 18:31:46,379 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-07 18:31:46,380 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-07 18:31:46,380 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 47 transitions. [2022-04-07 18:31:46,410 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 18:31:46,411 INFO L225 Difference]: With dead ends: 61 [2022-04-07 18:31:46,411 INFO L226 Difference]: Without dead ends: 61 [2022-04-07 18:31:46,411 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 52 GetRequests, 43 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=25, Invalid=85, Unknown=0, NotChecked=0, Total=110 [2022-04-07 18:31:46,412 INFO L913 BasicCegarLoop]: 34 mSDtfsCounter, 16 mSDsluCounter, 126 mSDsCounter, 0 mSdLazyCounter, 125 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 16 SdHoareTripleChecker+Valid, 160 SdHoareTripleChecker+Invalid, 132 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 125 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-07 18:31:46,412 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [16 Valid, 160 Invalid, 132 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 125 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-07 18:31:46,412 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 61 states. [2022-04-07 18:31:46,415 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 61 to 61. [2022-04-07 18:31:46,415 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 18:31:46,415 INFO L82 GeneralOperation]: Start isEquivalent. First operand 61 states. Second operand has 61 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 36 states have internal predecessors, (39), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-07 18:31:46,415 INFO L74 IsIncluded]: Start isIncluded. First operand 61 states. Second operand has 61 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 36 states have internal predecessors, (39), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-07 18:31:46,416 INFO L87 Difference]: Start difference. First operand 61 states. Second operand has 61 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 36 states have internal predecessors, (39), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-07 18:31:46,417 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:31:46,418 INFO L93 Difference]: Finished difference Result 61 states and 73 transitions. [2022-04-07 18:31:46,418 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 73 transitions. [2022-04-07 18:31:46,418 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:31:46,418 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:31:46,418 INFO L74 IsIncluded]: Start isIncluded. First operand has 61 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 36 states have internal predecessors, (39), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 61 states. [2022-04-07 18:31:46,418 INFO L87 Difference]: Start difference. First operand has 61 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 36 states have internal predecessors, (39), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 61 states. [2022-04-07 18:31:46,420 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:31:46,420 INFO L93 Difference]: Finished difference Result 61 states and 73 transitions. [2022-04-07 18:31:46,420 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 73 transitions. [2022-04-07 18:31:46,421 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:31:46,421 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:31:46,421 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 18:31:46,421 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 18:31:46,421 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 61 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 36 states have internal predecessors, (39), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-07 18:31:46,423 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 61 states to 61 states and 73 transitions. [2022-04-07 18:31:46,423 INFO L78 Accepts]: Start accepts. Automaton has 61 states and 73 transitions. Word has length 50 [2022-04-07 18:31:46,423 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 18:31:46,423 INFO L478 AbstractCegarLoop]: Abstraction has 61 states and 73 transitions. [2022-04-07 18:31:46,423 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-07 18:31:46,423 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 73 transitions. [2022-04-07 18:31:46,424 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 57 [2022-04-07 18:31:46,424 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 18:31:46,424 INFO L499 BasicCegarLoop]: trace histogram [6, 5, 5, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 18:31:46,441 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-07 18:31:46,637 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:31:46,637 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 18:31:46,638 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 18:31:46,638 INFO L85 PathProgramCache]: Analyzing trace with hash -810208713, now seen corresponding path program 1 times [2022-04-07 18:31:46,638 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 18:31:46,638 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1097570579] [2022-04-07 18:31:46,638 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:31:46,638 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 18:31:46,651 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 18:31:46,651 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [98902137] [2022-04-07 18:31:46,651 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:31:46,651 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:31:46,651 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 18:31:46,664 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 18:31:46,665 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-07 18:31:46,700 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:31:46,700 INFO L263 TraceCheckSpWp]: Trace formula consists of 144 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-07 18:31:46,716 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:31:46,717 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 18:31:46,964 INFO L272 TraceCheckUtils]: 0: Hoare triple {1682#true} [101] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:46,964 INFO L290 TraceCheckUtils]: 1: Hoare triple {1682#true} [103] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select |v_#length_1| 2) 14) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1682#true} is VALID [2022-04-07 18:31:46,965 INFO L290 TraceCheckUtils]: 2: Hoare triple {1682#true} [106] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:46,965 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1682#true} {1682#true} [143] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:46,965 INFO L272 TraceCheckUtils]: 4: Hoare triple {1682#true} [102] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:46,965 INFO L290 TraceCheckUtils]: 5: Hoare triple {1682#true} [105] mainENTRY-->L27: Formula: (and (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_1, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1, main_~a~0=v_main_~a~0_1} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~r~0, main_~a~0] {1682#true} is VALID [2022-04-07 18:31:46,965 INFO L272 TraceCheckUtils]: 6: Hoare triple {1682#true} [107] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {1682#true} is VALID [2022-04-07 18:31:46,965 INFO L290 TraceCheckUtils]: 7: Hoare triple {1682#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1682#true} is VALID [2022-04-07 18:31:46,965 INFO L290 TraceCheckUtils]: 8: Hoare triple {1682#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:46,965 INFO L290 TraceCheckUtils]: 9: Hoare triple {1682#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:46,966 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1682#true} {1682#true} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {1682#true} is VALID [2022-04-07 18:31:46,966 INFO L290 TraceCheckUtils]: 11: Hoare triple {1682#true} [108] L27-1-->L29: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~y~0] {1682#true} is VALID [2022-04-07 18:31:46,966 INFO L272 TraceCheckUtils]: 12: Hoare triple {1682#true} [110] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1682#true} is VALID [2022-04-07 18:31:46,966 INFO L290 TraceCheckUtils]: 13: Hoare triple {1682#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1682#true} is VALID [2022-04-07 18:31:46,966 INFO L290 TraceCheckUtils]: 14: Hoare triple {1682#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:46,966 INFO L290 TraceCheckUtils]: 15: Hoare triple {1682#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:46,966 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1682#true} {1682#true} [145] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1682#true} is VALID [2022-04-07 18:31:46,967 INFO L272 TraceCheckUtils]: 17: Hoare triple {1682#true} [113] L29-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1682#true} is VALID [2022-04-07 18:31:46,967 INFO L290 TraceCheckUtils]: 18: Hoare triple {1682#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1682#true} is VALID [2022-04-07 18:31:46,967 INFO L290 TraceCheckUtils]: 19: Hoare triple {1682#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:46,967 INFO L290 TraceCheckUtils]: 20: Hoare triple {1682#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:46,967 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1682#true} {1682#true} [146] assume_abort_if_notEXIT-->L31: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1682#true} is VALID [2022-04-07 18:31:46,967 INFO L290 TraceCheckUtils]: 22: Hoare triple {1682#true} [115] L31-->L38-2: Formula: (and (= v_main_~b~0_2 0) (= v_main_~q~0_2 0) (= v_main_~a~0_2 0) (= v_main_~r~0_2 v_main_~x~0_5)) InVars {main_~x~0=v_main_~x~0_5} OutVars{main_~q~0=v_main_~q~0_2, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0, main_~a~0] {1682#true} is VALID [2022-04-07 18:31:46,968 INFO L290 TraceCheckUtils]: 23: Hoare triple {1682#true} [118] L38-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:46,968 INFO L272 TraceCheckUtils]: 24: Hoare triple {1682#true} [120] L39-->__VERIFIER_assertENTRY: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {1682#true} is VALID [2022-04-07 18:31:46,968 INFO L290 TraceCheckUtils]: 25: Hoare triple {1682#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1682#true} is VALID [2022-04-07 18:31:46,968 INFO L290 TraceCheckUtils]: 26: Hoare triple {1682#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:46,968 INFO L290 TraceCheckUtils]: 27: Hoare triple {1682#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:46,968 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1682#true} {1682#true} [148] __VERIFIER_assertEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {1682#true} is VALID [2022-04-07 18:31:46,968 INFO L272 TraceCheckUtils]: 29: Hoare triple {1682#true} [123] L39-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {1682#true} is VALID [2022-04-07 18:31:46,969 INFO L290 TraceCheckUtils]: 30: Hoare triple {1682#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1682#true} is VALID [2022-04-07 18:31:46,969 INFO L290 TraceCheckUtils]: 31: Hoare triple {1682#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:46,969 INFO L290 TraceCheckUtils]: 32: Hoare triple {1682#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:46,969 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1682#true} {1682#true} [149] __VERIFIER_assertEXIT-->L40: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {1682#true} is VALID [2022-04-07 18:31:46,969 INFO L290 TraceCheckUtils]: 34: Hoare triple {1682#true} [128] L40-->L47-2: Formula: (and (= v_main_~b~0_4 v_main_~y~0_8) (<= v_main_~y~0_8 v_main_~r~0_5) (= v_main_~a~0_4 1)) InVars {main_~y~0=v_main_~y~0_8, main_~r~0=v_main_~r~0_5} OutVars{main_~y~0=v_main_~y~0_8, main_~b~0=v_main_~b~0_4, main_~r~0=v_main_~r~0_5, main_~a~0=v_main_~a~0_4} AuxVars[] AssignedVars[main_~b~0, main_~a~0] {1682#true} is VALID [2022-04-07 18:31:46,969 INFO L290 TraceCheckUtils]: 35: Hoare triple {1682#true} [134] L47-2-->L48: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:46,969 INFO L272 TraceCheckUtils]: 36: Hoare triple {1682#true} [136] L48-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_3| (ite (= (* v_main_~y~0_17 v_main_~a~0_11) v_main_~b~0_12) 1 0)) InVars {main_~y~0=v_main_~y~0_17, main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {1682#true} is VALID [2022-04-07 18:31:46,970 INFO L290 TraceCheckUtils]: 37: Hoare triple {1682#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1798#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-07 18:31:46,970 INFO L290 TraceCheckUtils]: 38: Hoare triple {1798#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1802#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 18:31:46,971 INFO L290 TraceCheckUtils]: 39: Hoare triple {1802#(not (= |__VERIFIER_assert_#in~cond| 0))} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1802#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 18:31:46,971 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {1802#(not (= |__VERIFIER_assert_#in~cond| 0))} {1682#true} [150] __VERIFIER_assertEXIT-->L48-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_3| (ite (= (* v_main_~y~0_17 v_main_~a~0_11) v_main_~b~0_12) 1 0)) InVars {main_~y~0=v_main_~y~0_17, main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {1809#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-07 18:31:46,972 INFO L272 TraceCheckUtils]: 41: Hoare triple {1809#(= main_~b~0 (* main_~a~0 main_~y~0))} [137] L48-1-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~x~0_11 (+ v_main_~r~0_15 (* v_main_~y~0_18 v_main_~q~0_9))) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~q~0=v_main_~q~0_9, main_~y~0=v_main_~y~0_18, main_~x~0=v_main_~x~0_11, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {1682#true} is VALID [2022-04-07 18:31:46,972 INFO L290 TraceCheckUtils]: 42: Hoare triple {1682#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1682#true} is VALID [2022-04-07 18:31:46,972 INFO L290 TraceCheckUtils]: 43: Hoare triple {1682#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:46,972 INFO L290 TraceCheckUtils]: 44: Hoare triple {1682#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:46,973 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {1682#true} {1809#(= main_~b~0 (* main_~a~0 main_~y~0))} [151] __VERIFIER_assertEXIT-->L49: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= v_main_~x~0_11 (+ v_main_~r~0_15 (* v_main_~y~0_18 v_main_~q~0_9))) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~q~0=v_main_~q~0_9, main_~y~0=v_main_~y~0_18, main_~x~0=v_main_~x~0_11, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {1809#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-07 18:31:46,973 INFO L272 TraceCheckUtils]: 46: Hoare triple {1809#(= main_~b~0 (* main_~a~0 main_~y~0))} [138] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_5| (ite (<= 0 v_main_~r~0_16) 1 0)) InVars {main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_5|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~r~0] {1682#true} is VALID [2022-04-07 18:31:46,973 INFO L290 TraceCheckUtils]: 47: Hoare triple {1682#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1682#true} is VALID [2022-04-07 18:31:46,973 INFO L290 TraceCheckUtils]: 48: Hoare triple {1682#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:46,973 INFO L290 TraceCheckUtils]: 49: Hoare triple {1682#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:46,973 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {1682#true} {1809#(= main_~b~0 (* main_~a~0 main_~y~0))} [152] __VERIFIER_assertEXIT-->L50: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_5| (ite (<= 0 v_main_~r~0_16) 1 0)) InVars {main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_5|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~r~0] {1809#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-07 18:31:46,974 INFO L290 TraceCheckUtils]: 51: Hoare triple {1809#(= main_~b~0 (* main_~a~0 main_~y~0))} [140] L50-->L55: Formula: (<= (* v_main_~b~0_7 2) v_main_~r~0_9) InVars {main_~b~0=v_main_~b~0_7, main_~r~0=v_main_~r~0_9} OutVars{main_~b~0=v_main_~b~0_7, main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[] {1843#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} is VALID [2022-04-07 18:31:46,974 INFO L272 TraceCheckUtils]: 52: Hoare triple {1843#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} [142] L55-->__VERIFIER_assertENTRY: Formula: (= (ite (<= (* (* v_main_~y~0_19 v_main_~a~0_12) 2) v_main_~r~0_17) 1 0) |v___VERIFIER_assert_#in~condInParam_6|) InVars {main_~y~0=v_main_~y~0_19, main_~r~0=v_main_~r~0_17, main_~a~0=v_main_~a~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_6|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~r~0, main_~a~0] {1847#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 18:31:46,975 INFO L290 TraceCheckUtils]: 53: Hoare triple {1847#(<= 1 |__VERIFIER_assert_#in~cond|)} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1851#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 18:31:46,975 INFO L290 TraceCheckUtils]: 54: Hoare triple {1851#(<= 1 __VERIFIER_assert_~cond)} [125] L15-->L16: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1683#false} is VALID [2022-04-07 18:31:46,975 INFO L290 TraceCheckUtils]: 55: Hoare triple {1683#false} [129] L16-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1683#false} is VALID [2022-04-07 18:31:46,975 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 15 proven. 7 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-04-07 18:31:46,975 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 18:31:55,365 INFO L290 TraceCheckUtils]: 55: Hoare triple {1683#false} [129] L16-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1683#false} is VALID [2022-04-07 18:31:55,365 INFO L290 TraceCheckUtils]: 54: Hoare triple {1851#(<= 1 __VERIFIER_assert_~cond)} [125] L15-->L16: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1683#false} is VALID [2022-04-07 18:31:55,366 INFO L290 TraceCheckUtils]: 53: Hoare triple {1847#(<= 1 |__VERIFIER_assert_#in~cond|)} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1851#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 18:31:55,366 INFO L272 TraceCheckUtils]: 52: Hoare triple {1843#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} [142] L55-->__VERIFIER_assertENTRY: Formula: (= (ite (<= (* (* v_main_~y~0_19 v_main_~a~0_12) 2) v_main_~r~0_17) 1 0) |v___VERIFIER_assert_#in~condInParam_6|) InVars {main_~y~0=v_main_~y~0_19, main_~r~0=v_main_~r~0_17, main_~a~0=v_main_~a~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_6|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~r~0, main_~a~0] {1847#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 18:31:55,367 INFO L290 TraceCheckUtils]: 51: Hoare triple {1870#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} [140] L50-->L55: Formula: (<= (* v_main_~b~0_7 2) v_main_~r~0_9) InVars {main_~b~0=v_main_~b~0_7, main_~r~0=v_main_~r~0_9} OutVars{main_~b~0=v_main_~b~0_7, main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[] {1843#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} is VALID [2022-04-07 18:31:55,368 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {1682#true} {1870#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} [152] __VERIFIER_assertEXIT-->L50: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_5| (ite (<= 0 v_main_~r~0_16) 1 0)) InVars {main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_5|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~r~0] {1870#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} is VALID [2022-04-07 18:31:55,368 INFO L290 TraceCheckUtils]: 49: Hoare triple {1682#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:55,368 INFO L290 TraceCheckUtils]: 48: Hoare triple {1682#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:55,368 INFO L290 TraceCheckUtils]: 47: Hoare triple {1682#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1682#true} is VALID [2022-04-07 18:31:55,368 INFO L272 TraceCheckUtils]: 46: Hoare triple {1870#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} [138] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_5| (ite (<= 0 v_main_~r~0_16) 1 0)) InVars {main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_5|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~r~0] {1682#true} is VALID [2022-04-07 18:31:55,369 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {1682#true} {1870#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} [151] __VERIFIER_assertEXIT-->L49: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= v_main_~x~0_11 (+ v_main_~r~0_15 (* v_main_~y~0_18 v_main_~q~0_9))) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~q~0=v_main_~q~0_9, main_~y~0=v_main_~y~0_18, main_~x~0=v_main_~x~0_11, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {1870#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} is VALID [2022-04-07 18:31:55,369 INFO L290 TraceCheckUtils]: 44: Hoare triple {1682#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:55,369 INFO L290 TraceCheckUtils]: 43: Hoare triple {1682#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:55,369 INFO L290 TraceCheckUtils]: 42: Hoare triple {1682#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1682#true} is VALID [2022-04-07 18:31:55,369 INFO L272 TraceCheckUtils]: 41: Hoare triple {1870#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} [137] L48-1-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~x~0_11 (+ v_main_~r~0_15 (* v_main_~y~0_18 v_main_~q~0_9))) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~q~0=v_main_~q~0_9, main_~y~0=v_main_~y~0_18, main_~x~0=v_main_~x~0_11, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {1682#true} is VALID [2022-04-07 18:31:55,370 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {1802#(not (= |__VERIFIER_assert_#in~cond| 0))} {1682#true} [150] __VERIFIER_assertEXIT-->L48-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_3| (ite (= (* v_main_~y~0_17 v_main_~a~0_11) v_main_~b~0_12) 1 0)) InVars {main_~y~0=v_main_~y~0_17, main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {1870#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} is VALID [2022-04-07 18:31:55,370 INFO L290 TraceCheckUtils]: 39: Hoare triple {1802#(not (= |__VERIFIER_assert_#in~cond| 0))} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1802#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 18:31:55,371 INFO L290 TraceCheckUtils]: 38: Hoare triple {1913#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1802#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 18:31:55,371 INFO L290 TraceCheckUtils]: 37: Hoare triple {1682#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1913#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-07 18:31:55,371 INFO L272 TraceCheckUtils]: 36: Hoare triple {1682#true} [136] L48-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_3| (ite (= (* v_main_~y~0_17 v_main_~a~0_11) v_main_~b~0_12) 1 0)) InVars {main_~y~0=v_main_~y~0_17, main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {1682#true} is VALID [2022-04-07 18:31:55,371 INFO L290 TraceCheckUtils]: 35: Hoare triple {1682#true} [134] L47-2-->L48: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:55,371 INFO L290 TraceCheckUtils]: 34: Hoare triple {1682#true} [128] L40-->L47-2: Formula: (and (= v_main_~b~0_4 v_main_~y~0_8) (<= v_main_~y~0_8 v_main_~r~0_5) (= v_main_~a~0_4 1)) InVars {main_~y~0=v_main_~y~0_8, main_~r~0=v_main_~r~0_5} OutVars{main_~y~0=v_main_~y~0_8, main_~b~0=v_main_~b~0_4, main_~r~0=v_main_~r~0_5, main_~a~0=v_main_~a~0_4} AuxVars[] AssignedVars[main_~b~0, main_~a~0] {1682#true} is VALID [2022-04-07 18:31:55,372 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1682#true} {1682#true} [149] __VERIFIER_assertEXIT-->L40: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {1682#true} is VALID [2022-04-07 18:31:55,372 INFO L290 TraceCheckUtils]: 32: Hoare triple {1682#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:55,372 INFO L290 TraceCheckUtils]: 31: Hoare triple {1682#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:55,372 INFO L290 TraceCheckUtils]: 30: Hoare triple {1682#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1682#true} is VALID [2022-04-07 18:31:55,372 INFO L272 TraceCheckUtils]: 29: Hoare triple {1682#true} [123] L39-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {1682#true} is VALID [2022-04-07 18:31:55,372 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1682#true} {1682#true} [148] __VERIFIER_assertEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {1682#true} is VALID [2022-04-07 18:31:55,372 INFO L290 TraceCheckUtils]: 27: Hoare triple {1682#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:55,372 INFO L290 TraceCheckUtils]: 26: Hoare triple {1682#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:55,372 INFO L290 TraceCheckUtils]: 25: Hoare triple {1682#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1682#true} is VALID [2022-04-07 18:31:55,372 INFO L272 TraceCheckUtils]: 24: Hoare triple {1682#true} [120] L39-->__VERIFIER_assertENTRY: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {1682#true} is VALID [2022-04-07 18:31:55,372 INFO L290 TraceCheckUtils]: 23: Hoare triple {1682#true} [118] L38-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:55,373 INFO L290 TraceCheckUtils]: 22: Hoare triple {1682#true} [115] L31-->L38-2: Formula: (and (= v_main_~b~0_2 0) (= v_main_~q~0_2 0) (= v_main_~a~0_2 0) (= v_main_~r~0_2 v_main_~x~0_5)) InVars {main_~x~0=v_main_~x~0_5} OutVars{main_~q~0=v_main_~q~0_2, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0, main_~a~0] {1682#true} is VALID [2022-04-07 18:31:55,373 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1682#true} {1682#true} [146] assume_abort_if_notEXIT-->L31: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1682#true} is VALID [2022-04-07 18:31:55,373 INFO L290 TraceCheckUtils]: 20: Hoare triple {1682#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:55,373 INFO L290 TraceCheckUtils]: 19: Hoare triple {1682#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:55,373 INFO L290 TraceCheckUtils]: 18: Hoare triple {1682#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1682#true} is VALID [2022-04-07 18:31:55,373 INFO L272 TraceCheckUtils]: 17: Hoare triple {1682#true} [113] L29-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1682#true} is VALID [2022-04-07 18:31:55,373 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1682#true} {1682#true} [145] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1682#true} is VALID [2022-04-07 18:31:55,373 INFO L290 TraceCheckUtils]: 15: Hoare triple {1682#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:55,373 INFO L290 TraceCheckUtils]: 14: Hoare triple {1682#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:55,373 INFO L290 TraceCheckUtils]: 13: Hoare triple {1682#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1682#true} is VALID [2022-04-07 18:31:55,373 INFO L272 TraceCheckUtils]: 12: Hoare triple {1682#true} [110] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1682#true} is VALID [2022-04-07 18:31:55,374 INFO L290 TraceCheckUtils]: 11: Hoare triple {1682#true} [108] L27-1-->L29: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~y~0] {1682#true} is VALID [2022-04-07 18:31:55,374 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1682#true} {1682#true} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {1682#true} is VALID [2022-04-07 18:31:55,374 INFO L290 TraceCheckUtils]: 9: Hoare triple {1682#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:55,374 INFO L290 TraceCheckUtils]: 8: Hoare triple {1682#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:55,374 INFO L290 TraceCheckUtils]: 7: Hoare triple {1682#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1682#true} is VALID [2022-04-07 18:31:55,374 INFO L272 TraceCheckUtils]: 6: Hoare triple {1682#true} [107] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {1682#true} is VALID [2022-04-07 18:31:55,374 INFO L290 TraceCheckUtils]: 5: Hoare triple {1682#true} [105] mainENTRY-->L27: Formula: (and (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_1, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1, main_~a~0=v_main_~a~0_1} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~r~0, main_~a~0] {1682#true} is VALID [2022-04-07 18:31:55,374 INFO L272 TraceCheckUtils]: 4: Hoare triple {1682#true} [102] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:55,374 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1682#true} {1682#true} [143] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:55,374 INFO L290 TraceCheckUtils]: 2: Hoare triple {1682#true} [106] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:55,375 INFO L290 TraceCheckUtils]: 1: Hoare triple {1682#true} [103] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select |v_#length_1| 2) 14) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1682#true} is VALID [2022-04-07 18:31:55,375 INFO L272 TraceCheckUtils]: 0: Hoare triple {1682#true} [101] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-07 18:31:55,375 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 15 proven. 7 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-04-07 18:31:55,375 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 18:31:55,375 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1097570579] [2022-04-07 18:31:55,375 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 18:31:55,375 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [98902137] [2022-04-07 18:31:55,375 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [98902137] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 18:31:55,375 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 18:31:55,375 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-07 18:31:55,376 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [737091812] [2022-04-07 18:31:55,376 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 18:31:55,376 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) Word has length 56 [2022-04-07 18:31:55,376 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 18:31:55,377 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) [2022-04-07 18:31:55,408 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 18:31:55,408 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-07 18:31:55,409 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 18:31:55,409 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-07 18:31:55,409 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=68, Unknown=0, NotChecked=0, Total=90 [2022-04-07 18:31:55,410 INFO L87 Difference]: Start difference. First operand 61 states and 73 transitions. Second operand has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) [2022-04-07 18:31:55,712 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:31:55,713 INFO L93 Difference]: Finished difference Result 65 states and 76 transitions. [2022-04-07 18:31:55,713 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-07 18:31:55,713 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) Word has length 56 [2022-04-07 18:31:55,713 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 18:31:55,713 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) [2022-04-07 18:31:55,715 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-07 18:31:55,715 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) [2022-04-07 18:31:55,718 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-07 18:31:55,718 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 47 transitions. [2022-04-07 18:31:55,754 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 18:31:55,756 INFO L225 Difference]: With dead ends: 65 [2022-04-07 18:31:55,756 INFO L226 Difference]: Without dead ends: 65 [2022-04-07 18:31:55,756 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 114 GetRequests, 102 SyntacticMatches, 1 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=40, Invalid=116, Unknown=0, NotChecked=0, Total=156 [2022-04-07 18:31:55,757 INFO L913 BasicCegarLoop]: 28 mSDtfsCounter, 30 mSDsluCounter, 93 mSDsCounter, 0 mSdLazyCounter, 112 mSolverCounterSat, 16 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 32 SdHoareTripleChecker+Valid, 121 SdHoareTripleChecker+Invalid, 128 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 16 IncrementalHoareTripleChecker+Valid, 112 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-07 18:31:55,757 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [32 Valid, 121 Invalid, 128 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 112 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-07 18:31:55,757 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 65 states. [2022-04-07 18:31:55,760 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 65 to 65. [2022-04-07 18:31:55,760 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 18:31:55,760 INFO L82 GeneralOperation]: Start isEquivalent. First operand 65 states. Second operand has 65 states, 38 states have (on average 1.105263157894737) internal successors, (42), 39 states have internal predecessors, (42), 18 states have call successors, (18), 9 states have call predecessors, (18), 8 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-07 18:31:55,760 INFO L74 IsIncluded]: Start isIncluded. First operand 65 states. Second operand has 65 states, 38 states have (on average 1.105263157894737) internal successors, (42), 39 states have internal predecessors, (42), 18 states have call successors, (18), 9 states have call predecessors, (18), 8 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-07 18:31:55,760 INFO L87 Difference]: Start difference. First operand 65 states. Second operand has 65 states, 38 states have (on average 1.105263157894737) internal successors, (42), 39 states have internal predecessors, (42), 18 states have call successors, (18), 9 states have call predecessors, (18), 8 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-07 18:31:55,762 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:31:55,762 INFO L93 Difference]: Finished difference Result 65 states and 76 transitions. [2022-04-07 18:31:55,763 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 76 transitions. [2022-04-07 18:31:55,763 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:31:55,763 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:31:55,763 INFO L74 IsIncluded]: Start isIncluded. First operand has 65 states, 38 states have (on average 1.105263157894737) internal successors, (42), 39 states have internal predecessors, (42), 18 states have call successors, (18), 9 states have call predecessors, (18), 8 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 65 states. [2022-04-07 18:31:55,763 INFO L87 Difference]: Start difference. First operand has 65 states, 38 states have (on average 1.105263157894737) internal successors, (42), 39 states have internal predecessors, (42), 18 states have call successors, (18), 9 states have call predecessors, (18), 8 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 65 states. [2022-04-07 18:31:55,765 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:31:55,765 INFO L93 Difference]: Finished difference Result 65 states and 76 transitions. [2022-04-07 18:31:55,765 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 76 transitions. [2022-04-07 18:31:55,765 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:31:55,766 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:31:55,766 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 18:31:55,766 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 18:31:55,766 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 65 states, 38 states have (on average 1.105263157894737) internal successors, (42), 39 states have internal predecessors, (42), 18 states have call successors, (18), 9 states have call predecessors, (18), 8 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-07 18:31:55,767 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 65 states to 65 states and 76 transitions. [2022-04-07 18:31:55,768 INFO L78 Accepts]: Start accepts. Automaton has 65 states and 76 transitions. Word has length 56 [2022-04-07 18:31:55,768 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 18:31:55,768 INFO L478 AbstractCegarLoop]: Abstraction has 65 states and 76 transitions. [2022-04-07 18:31:55,768 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) [2022-04-07 18:31:55,768 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 76 transitions. [2022-04-07 18:31:55,768 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-04-07 18:31:55,768 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 18:31:55,769 INFO L499 BasicCegarLoop]: trace histogram [7, 6, 6, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 18:31:55,794 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-07 18:31:55,978 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:31:55,978 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 18:31:55,978 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 18:31:55,978 INFO L85 PathProgramCache]: Analyzing trace with hash -1603019557, now seen corresponding path program 1 times [2022-04-07 18:31:55,979 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 18:31:55,979 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2013684176] [2022-04-07 18:31:55,979 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:31:55,979 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 18:31:55,990 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 18:31:55,990 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [543500472] [2022-04-07 18:31:55,991 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 18:31:55,991 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:31:55,991 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 18:31:55,999 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 18:31:56,001 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-07 18:31:56,035 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:31:56,036 INFO L263 TraceCheckSpWp]: Trace formula consists of 158 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-07 18:31:56,043 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 18:31:56,044 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 18:31:56,433 INFO L272 TraceCheckUtils]: 0: Hoare triple {2293#true} [101] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,434 INFO L290 TraceCheckUtils]: 1: Hoare triple {2293#true} [103] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select |v_#length_1| 2) 14) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {2293#true} is VALID [2022-04-07 18:31:56,434 INFO L290 TraceCheckUtils]: 2: Hoare triple {2293#true} [106] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,434 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2293#true} {2293#true} [143] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,434 INFO L272 TraceCheckUtils]: 4: Hoare triple {2293#true} [102] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,434 INFO L290 TraceCheckUtils]: 5: Hoare triple {2293#true} [105] mainENTRY-->L27: Formula: (and (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_1, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1, main_~a~0=v_main_~a~0_1} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~r~0, main_~a~0] {2293#true} is VALID [2022-04-07 18:31:56,434 INFO L272 TraceCheckUtils]: 6: Hoare triple {2293#true} [107] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {2293#true} is VALID [2022-04-07 18:31:56,434 INFO L290 TraceCheckUtils]: 7: Hoare triple {2293#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2293#true} is VALID [2022-04-07 18:31:56,434 INFO L290 TraceCheckUtils]: 8: Hoare triple {2293#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,434 INFO L290 TraceCheckUtils]: 9: Hoare triple {2293#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,434 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2293#true} {2293#true} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {2293#true} is VALID [2022-04-07 18:31:56,435 INFO L290 TraceCheckUtils]: 11: Hoare triple {2293#true} [108] L27-1-->L29: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~y~0] {2293#true} is VALID [2022-04-07 18:31:56,435 INFO L272 TraceCheckUtils]: 12: Hoare triple {2293#true} [110] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {2293#true} is VALID [2022-04-07 18:31:56,435 INFO L290 TraceCheckUtils]: 13: Hoare triple {2293#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2293#true} is VALID [2022-04-07 18:31:56,435 INFO L290 TraceCheckUtils]: 14: Hoare triple {2293#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,435 INFO L290 TraceCheckUtils]: 15: Hoare triple {2293#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,435 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2293#true} {2293#true} [145] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {2293#true} is VALID [2022-04-07 18:31:56,435 INFO L272 TraceCheckUtils]: 17: Hoare triple {2293#true} [113] L29-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {2293#true} is VALID [2022-04-07 18:31:56,435 INFO L290 TraceCheckUtils]: 18: Hoare triple {2293#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2293#true} is VALID [2022-04-07 18:31:56,435 INFO L290 TraceCheckUtils]: 19: Hoare triple {2293#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,435 INFO L290 TraceCheckUtils]: 20: Hoare triple {2293#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,435 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2293#true} {2293#true} [146] assume_abort_if_notEXIT-->L31: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {2293#true} is VALID [2022-04-07 18:31:56,436 INFO L290 TraceCheckUtils]: 22: Hoare triple {2293#true} [115] L31-->L38-2: Formula: (and (= v_main_~b~0_2 0) (= v_main_~q~0_2 0) (= v_main_~a~0_2 0) (= v_main_~r~0_2 v_main_~x~0_5)) InVars {main_~x~0=v_main_~x~0_5} OutVars{main_~q~0=v_main_~q~0_2, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0, main_~a~0] {2364#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-07 18:31:56,436 INFO L290 TraceCheckUtils]: 23: Hoare triple {2364#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} [118] L38-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2364#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-07 18:31:56,436 INFO L272 TraceCheckUtils]: 24: Hoare triple {2364#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} [120] L39-->__VERIFIER_assertENTRY: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {2293#true} is VALID [2022-04-07 18:31:56,436 INFO L290 TraceCheckUtils]: 25: Hoare triple {2293#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2293#true} is VALID [2022-04-07 18:31:56,437 INFO L290 TraceCheckUtils]: 26: Hoare triple {2293#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,437 INFO L290 TraceCheckUtils]: 27: Hoare triple {2293#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,443 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2293#true} {2364#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} [148] __VERIFIER_assertEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {2364#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-07 18:31:56,443 INFO L272 TraceCheckUtils]: 29: Hoare triple {2364#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} [123] L39-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {2293#true} is VALID [2022-04-07 18:31:56,443 INFO L290 TraceCheckUtils]: 30: Hoare triple {2293#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2293#true} is VALID [2022-04-07 18:31:56,443 INFO L290 TraceCheckUtils]: 31: Hoare triple {2293#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,443 INFO L290 TraceCheckUtils]: 32: Hoare triple {2293#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,447 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2293#true} {2364#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} [149] __VERIFIER_assertEXIT-->L40: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {2364#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-07 18:31:56,451 INFO L290 TraceCheckUtils]: 34: Hoare triple {2364#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} [128] L40-->L47-2: Formula: (and (= v_main_~b~0_4 v_main_~y~0_8) (<= v_main_~y~0_8 v_main_~r~0_5) (= v_main_~a~0_4 1)) InVars {main_~y~0=v_main_~y~0_8, main_~r~0=v_main_~r~0_5} OutVars{main_~y~0=v_main_~y~0_8, main_~b~0=v_main_~b~0_4, main_~r~0=v_main_~r~0_5, main_~a~0=v_main_~a~0_4} AuxVars[] AssignedVars[main_~b~0, main_~a~0] {2401#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-07 18:31:56,451 INFO L290 TraceCheckUtils]: 35: Hoare triple {2401#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} [134] L47-2-->L48: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2401#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-07 18:31:56,451 INFO L272 TraceCheckUtils]: 36: Hoare triple {2401#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} [136] L48-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_3| (ite (= (* v_main_~y~0_17 v_main_~a~0_11) v_main_~b~0_12) 1 0)) InVars {main_~y~0=v_main_~y~0_17, main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {2293#true} is VALID [2022-04-07 18:31:56,451 INFO L290 TraceCheckUtils]: 37: Hoare triple {2293#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2293#true} is VALID [2022-04-07 18:31:56,451 INFO L290 TraceCheckUtils]: 38: Hoare triple {2293#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,451 INFO L290 TraceCheckUtils]: 39: Hoare triple {2293#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,452 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {2293#true} {2401#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} [150] __VERIFIER_assertEXIT-->L48-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_3| (ite (= (* v_main_~y~0_17 v_main_~a~0_11) v_main_~b~0_12) 1 0)) InVars {main_~y~0=v_main_~y~0_17, main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {2401#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-07 18:31:56,452 INFO L272 TraceCheckUtils]: 41: Hoare triple {2401#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} [137] L48-1-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~x~0_11 (+ v_main_~r~0_15 (* v_main_~y~0_18 v_main_~q~0_9))) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~q~0=v_main_~q~0_9, main_~y~0=v_main_~y~0_18, main_~x~0=v_main_~x~0_11, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {2293#true} is VALID [2022-04-07 18:31:56,452 INFO L290 TraceCheckUtils]: 42: Hoare triple {2293#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2293#true} is VALID [2022-04-07 18:31:56,452 INFO L290 TraceCheckUtils]: 43: Hoare triple {2293#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,452 INFO L290 TraceCheckUtils]: 44: Hoare triple {2293#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,453 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2293#true} {2401#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} [151] __VERIFIER_assertEXIT-->L49: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= v_main_~x~0_11 (+ v_main_~r~0_15 (* v_main_~y~0_18 v_main_~q~0_9))) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~q~0=v_main_~q~0_9, main_~y~0=v_main_~y~0_18, main_~x~0=v_main_~x~0_11, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {2401#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-07 18:31:56,453 INFO L272 TraceCheckUtils]: 46: Hoare triple {2401#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} [138] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_5| (ite (<= 0 v_main_~r~0_16) 1 0)) InVars {main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_5|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~r~0] {2293#true} is VALID [2022-04-07 18:31:56,453 INFO L290 TraceCheckUtils]: 47: Hoare triple {2293#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2293#true} is VALID [2022-04-07 18:31:56,453 INFO L290 TraceCheckUtils]: 48: Hoare triple {2293#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,453 INFO L290 TraceCheckUtils]: 49: Hoare triple {2293#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,454 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2293#true} {2401#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} [152] __VERIFIER_assertEXIT-->L50: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_5| (ite (<= 0 v_main_~r~0_16) 1 0)) InVars {main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_5|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~r~0] {2401#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-07 18:31:56,454 INFO L290 TraceCheckUtils]: 51: Hoare triple {2401#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} [139] L50-->L47-3: Formula: (not (<= (* v_main_~b~0_6 2) v_main_~r~0_8)) InVars {main_~b~0=v_main_~b~0_6, main_~r~0=v_main_~r~0_8} OutVars{main_~b~0=v_main_~b~0_6, main_~r~0=v_main_~r~0_8} AuxVars[] AssignedVars[] {2453#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (not (<= (* main_~b~0 2) main_~r~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-07 18:31:56,455 INFO L290 TraceCheckUtils]: 52: Hoare triple {2453#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (not (<= (* main_~b~0 2) main_~r~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0))} [135] L47-3-->L38-2: Formula: (and (= v_main_~q~0_5 (+ v_main_~a~0_9 v_main_~q~0_6)) (= v_main_~r~0_11 (+ v_main_~r~0_12 (* (- 1) v_main_~b~0_10)))) InVars {main_~q~0=v_main_~q~0_6, main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_12, main_~a~0=v_main_~a~0_9} OutVars{main_~q~0=v_main_~q~0_5, main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_11, main_~a~0=v_main_~a~0_9} AuxVars[] AssignedVars[main_~q~0, main_~r~0] {2457#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} is VALID [2022-04-07 18:31:56,455 INFO L290 TraceCheckUtils]: 53: Hoare triple {2457#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} [118] L38-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2457#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} is VALID [2022-04-07 18:31:56,455 INFO L272 TraceCheckUtils]: 54: Hoare triple {2457#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} [120] L39-->__VERIFIER_assertENTRY: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {2293#true} is VALID [2022-04-07 18:31:56,455 INFO L290 TraceCheckUtils]: 55: Hoare triple {2293#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2293#true} is VALID [2022-04-07 18:31:56,456 INFO L290 TraceCheckUtils]: 56: Hoare triple {2293#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,456 INFO L290 TraceCheckUtils]: 57: Hoare triple {2293#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,457 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {2293#true} {2457#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} [148] __VERIFIER_assertEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {2457#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} is VALID [2022-04-07 18:31:56,458 INFO L272 TraceCheckUtils]: 59: Hoare triple {2457#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} [123] L39-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {2479#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 18:31:56,458 INFO L290 TraceCheckUtils]: 60: Hoare triple {2479#(<= 1 |__VERIFIER_assert_#in~cond|)} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2483#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 18:31:56,459 INFO L290 TraceCheckUtils]: 61: Hoare triple {2483#(<= 1 __VERIFIER_assert_~cond)} [125] L15-->L16: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2294#false} is VALID [2022-04-07 18:31:56,459 INFO L290 TraceCheckUtils]: 62: Hoare triple {2294#false} [129] L16-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#false} is VALID [2022-04-07 18:31:56,459 INFO L134 CoverageAnalysis]: Checked inductivity of 87 backedges. 12 proven. 3 refuted. 0 times theorem prover too weak. 72 trivial. 0 not checked. [2022-04-07 18:31:56,459 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 18:31:56,791 INFO L290 TraceCheckUtils]: 62: Hoare triple {2294#false} [129] L16-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#false} is VALID [2022-04-07 18:31:56,791 INFO L290 TraceCheckUtils]: 61: Hoare triple {2483#(<= 1 __VERIFIER_assert_~cond)} [125] L15-->L16: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2294#false} is VALID [2022-04-07 18:31:56,792 INFO L290 TraceCheckUtils]: 60: Hoare triple {2479#(<= 1 |__VERIFIER_assert_#in~cond|)} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2483#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 18:31:56,792 INFO L272 TraceCheckUtils]: 59: Hoare triple {2499#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} [123] L39-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {2479#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 18:31:56,793 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {2293#true} {2499#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} [148] __VERIFIER_assertEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {2499#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-07 18:31:56,793 INFO L290 TraceCheckUtils]: 57: Hoare triple {2293#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,793 INFO L290 TraceCheckUtils]: 56: Hoare triple {2293#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,793 INFO L290 TraceCheckUtils]: 55: Hoare triple {2293#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2293#true} is VALID [2022-04-07 18:31:56,793 INFO L272 TraceCheckUtils]: 54: Hoare triple {2499#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} [120] L39-->__VERIFIER_assertENTRY: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {2293#true} is VALID [2022-04-07 18:31:56,793 INFO L290 TraceCheckUtils]: 53: Hoare triple {2499#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} [118] L38-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2499#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-07 18:31:56,804 INFO L290 TraceCheckUtils]: 52: Hoare triple {2521#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} [135] L47-3-->L38-2: Formula: (and (= v_main_~q~0_5 (+ v_main_~a~0_9 v_main_~q~0_6)) (= v_main_~r~0_11 (+ v_main_~r~0_12 (* (- 1) v_main_~b~0_10)))) InVars {main_~q~0=v_main_~q~0_6, main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_12, main_~a~0=v_main_~a~0_9} OutVars{main_~q~0=v_main_~q~0_5, main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_11, main_~a~0=v_main_~a~0_9} AuxVars[] AssignedVars[main_~q~0, main_~r~0] {2499#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-07 18:31:56,804 INFO L290 TraceCheckUtils]: 51: Hoare triple {2525#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} [139] L50-->L47-3: Formula: (not (<= (* v_main_~b~0_6 2) v_main_~r~0_8)) InVars {main_~b~0=v_main_~b~0_6, main_~r~0=v_main_~r~0_8} OutVars{main_~b~0=v_main_~b~0_6, main_~r~0=v_main_~r~0_8} AuxVars[] AssignedVars[] {2521#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-07 18:31:56,805 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2293#true} {2525#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} [152] __VERIFIER_assertEXIT-->L50: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_5| (ite (<= 0 v_main_~r~0_16) 1 0)) InVars {main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_5|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~r~0] {2525#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} is VALID [2022-04-07 18:31:56,805 INFO L290 TraceCheckUtils]: 49: Hoare triple {2293#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,805 INFO L290 TraceCheckUtils]: 48: Hoare triple {2293#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,805 INFO L290 TraceCheckUtils]: 47: Hoare triple {2293#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2293#true} is VALID [2022-04-07 18:31:56,805 INFO L272 TraceCheckUtils]: 46: Hoare triple {2525#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} [138] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_5| (ite (<= 0 v_main_~r~0_16) 1 0)) InVars {main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_5|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~r~0] {2293#true} is VALID [2022-04-07 18:31:56,806 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2293#true} {2525#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} [151] __VERIFIER_assertEXIT-->L49: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= v_main_~x~0_11 (+ v_main_~r~0_15 (* v_main_~y~0_18 v_main_~q~0_9))) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~q~0=v_main_~q~0_9, main_~y~0=v_main_~y~0_18, main_~x~0=v_main_~x~0_11, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {2525#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} is VALID [2022-04-07 18:31:56,806 INFO L290 TraceCheckUtils]: 44: Hoare triple {2293#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,806 INFO L290 TraceCheckUtils]: 43: Hoare triple {2293#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,806 INFO L290 TraceCheckUtils]: 42: Hoare triple {2293#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2293#true} is VALID [2022-04-07 18:31:56,806 INFO L272 TraceCheckUtils]: 41: Hoare triple {2525#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} [137] L48-1-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~x~0_11 (+ v_main_~r~0_15 (* v_main_~y~0_18 v_main_~q~0_9))) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~q~0=v_main_~q~0_9, main_~y~0=v_main_~y~0_18, main_~x~0=v_main_~x~0_11, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {2293#true} is VALID [2022-04-07 18:31:56,807 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {2293#true} {2525#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} [150] __VERIFIER_assertEXIT-->L48-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_3| (ite (= (* v_main_~y~0_17 v_main_~a~0_11) v_main_~b~0_12) 1 0)) InVars {main_~y~0=v_main_~y~0_17, main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {2525#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} is VALID [2022-04-07 18:31:56,807 INFO L290 TraceCheckUtils]: 39: Hoare triple {2293#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,807 INFO L290 TraceCheckUtils]: 38: Hoare triple {2293#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,807 INFO L290 TraceCheckUtils]: 37: Hoare triple {2293#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2293#true} is VALID [2022-04-07 18:31:56,808 INFO L272 TraceCheckUtils]: 36: Hoare triple {2525#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} [136] L48-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_3| (ite (= (* v_main_~y~0_17 v_main_~a~0_11) v_main_~b~0_12) 1 0)) InVars {main_~y~0=v_main_~y~0_17, main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {2293#true} is VALID [2022-04-07 18:31:56,808 INFO L290 TraceCheckUtils]: 35: Hoare triple {2525#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} [134] L47-2-->L48: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2525#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} is VALID [2022-04-07 18:31:56,809 INFO L290 TraceCheckUtils]: 34: Hoare triple {2577#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} [128] L40-->L47-2: Formula: (and (= v_main_~b~0_4 v_main_~y~0_8) (<= v_main_~y~0_8 v_main_~r~0_5) (= v_main_~a~0_4 1)) InVars {main_~y~0=v_main_~y~0_8, main_~r~0=v_main_~r~0_5} OutVars{main_~y~0=v_main_~y~0_8, main_~b~0=v_main_~b~0_4, main_~r~0=v_main_~r~0_5, main_~a~0=v_main_~a~0_4} AuxVars[] AssignedVars[main_~b~0, main_~a~0] {2525#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} is VALID [2022-04-07 18:31:56,809 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2293#true} {2577#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} [149] __VERIFIER_assertEXIT-->L40: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {2577#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} is VALID [2022-04-07 18:31:56,809 INFO L290 TraceCheckUtils]: 32: Hoare triple {2293#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,809 INFO L290 TraceCheckUtils]: 31: Hoare triple {2293#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,810 INFO L290 TraceCheckUtils]: 30: Hoare triple {2293#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2293#true} is VALID [2022-04-07 18:31:56,810 INFO L272 TraceCheckUtils]: 29: Hoare triple {2577#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} [123] L39-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {2293#true} is VALID [2022-04-07 18:31:56,810 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2293#true} {2577#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} [148] __VERIFIER_assertEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {2577#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} is VALID [2022-04-07 18:31:56,810 INFO L290 TraceCheckUtils]: 27: Hoare triple {2293#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,810 INFO L290 TraceCheckUtils]: 26: Hoare triple {2293#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,811 INFO L290 TraceCheckUtils]: 25: Hoare triple {2293#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2293#true} is VALID [2022-04-07 18:31:56,811 INFO L272 TraceCheckUtils]: 24: Hoare triple {2577#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} [120] L39-->__VERIFIER_assertENTRY: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {2293#true} is VALID [2022-04-07 18:31:56,811 INFO L290 TraceCheckUtils]: 23: Hoare triple {2577#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} [118] L38-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2577#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} is VALID [2022-04-07 18:31:56,812 INFO L290 TraceCheckUtils]: 22: Hoare triple {2293#true} [115] L31-->L38-2: Formula: (and (= v_main_~b~0_2 0) (= v_main_~q~0_2 0) (= v_main_~a~0_2 0) (= v_main_~r~0_2 v_main_~x~0_5)) InVars {main_~x~0=v_main_~x~0_5} OutVars{main_~q~0=v_main_~q~0_2, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0, main_~a~0] {2577#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} is VALID [2022-04-07 18:31:56,812 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2293#true} {2293#true} [146] assume_abort_if_notEXIT-->L31: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {2293#true} is VALID [2022-04-07 18:31:56,812 INFO L290 TraceCheckUtils]: 20: Hoare triple {2293#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,812 INFO L290 TraceCheckUtils]: 19: Hoare triple {2293#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,812 INFO L290 TraceCheckUtils]: 18: Hoare triple {2293#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2293#true} is VALID [2022-04-07 18:31:56,812 INFO L272 TraceCheckUtils]: 17: Hoare triple {2293#true} [113] L29-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {2293#true} is VALID [2022-04-07 18:31:56,812 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2293#true} {2293#true} [145] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {2293#true} is VALID [2022-04-07 18:31:56,812 INFO L290 TraceCheckUtils]: 15: Hoare triple {2293#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,813 INFO L290 TraceCheckUtils]: 14: Hoare triple {2293#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,813 INFO L290 TraceCheckUtils]: 13: Hoare triple {2293#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2293#true} is VALID [2022-04-07 18:31:56,813 INFO L272 TraceCheckUtils]: 12: Hoare triple {2293#true} [110] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {2293#true} is VALID [2022-04-07 18:31:56,813 INFO L290 TraceCheckUtils]: 11: Hoare triple {2293#true} [108] L27-1-->L29: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~y~0] {2293#true} is VALID [2022-04-07 18:31:56,813 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2293#true} {2293#true} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {2293#true} is VALID [2022-04-07 18:31:56,813 INFO L290 TraceCheckUtils]: 9: Hoare triple {2293#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,813 INFO L290 TraceCheckUtils]: 8: Hoare triple {2293#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,813 INFO L290 TraceCheckUtils]: 7: Hoare triple {2293#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2293#true} is VALID [2022-04-07 18:31:56,813 INFO L272 TraceCheckUtils]: 6: Hoare triple {2293#true} [107] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {2293#true} is VALID [2022-04-07 18:31:56,813 INFO L290 TraceCheckUtils]: 5: Hoare triple {2293#true} [105] mainENTRY-->L27: Formula: (and (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_1, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1, main_~a~0=v_main_~a~0_1} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~r~0, main_~a~0] {2293#true} is VALID [2022-04-07 18:31:56,814 INFO L272 TraceCheckUtils]: 4: Hoare triple {2293#true} [102] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,814 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2293#true} {2293#true} [143] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,814 INFO L290 TraceCheckUtils]: 2: Hoare triple {2293#true} [106] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,814 INFO L290 TraceCheckUtils]: 1: Hoare triple {2293#true} [103] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select |v_#length_1| 2) 14) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {2293#true} is VALID [2022-04-07 18:31:56,814 INFO L272 TraceCheckUtils]: 0: Hoare triple {2293#true} [101] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-07 18:31:56,814 INFO L134 CoverageAnalysis]: Checked inductivity of 87 backedges. 15 proven. 0 refuted. 0 times theorem prover too weak. 72 trivial. 0 not checked. [2022-04-07 18:31:56,815 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 18:31:56,815 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2013684176] [2022-04-07 18:31:56,815 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 18:31:56,815 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [543500472] [2022-04-07 18:31:56,815 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [543500472] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-07 18:31:56,815 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-07 18:31:56,815 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [8] total 12 [2022-04-07 18:31:56,815 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1598137513] [2022-04-07 18:31:56,815 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 18:31:56,816 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 63 [2022-04-07 18:31:56,816 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 18:31:56,816 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-07 18:31:56,854 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 18:31:56,854 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-07 18:31:56,854 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 18:31:56,854 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-07 18:31:56,855 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=38, Invalid=94, Unknown=0, NotChecked=0, Total=132 [2022-04-07 18:31:56,855 INFO L87 Difference]: Start difference. First operand 65 states and 76 transitions. Second operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-07 18:31:57,156 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:31:57,156 INFO L93 Difference]: Finished difference Result 63 states and 74 transitions. [2022-04-07 18:31:57,156 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-07 18:31:57,157 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 63 [2022-04-07 18:31:57,157 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 18:31:57,157 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-07 18:31:57,158 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 45 transitions. [2022-04-07 18:31:57,158 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-07 18:31:57,159 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 45 transitions. [2022-04-07 18:31:57,159 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 45 transitions. [2022-04-07 18:31:57,206 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 18:31:57,207 INFO L225 Difference]: With dead ends: 63 [2022-04-07 18:31:57,207 INFO L226 Difference]: Without dead ends: 0 [2022-04-07 18:31:57,207 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 127 GetRequests, 114 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 31 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=50, Invalid=132, Unknown=0, NotChecked=0, Total=182 [2022-04-07 18:31:57,207 INFO L913 BasicCegarLoop]: 29 mSDtfsCounter, 21 mSDsluCounter, 69 mSDsCounter, 0 mSdLazyCounter, 72 mSolverCounterSat, 35 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 21 SdHoareTripleChecker+Valid, 98 SdHoareTripleChecker+Invalid, 107 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 35 IncrementalHoareTripleChecker+Valid, 72 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-07 18:31:57,208 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [21 Valid, 98 Invalid, 107 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [35 Valid, 72 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-07 18:31:57,208 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-07 18:31:57,208 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-07 18:31:57,208 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 18:31:57,208 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-07 18:31:57,208 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-07 18:31:57,208 INFO L87 Difference]: Start difference. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-07 18:31:57,208 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:31:57,208 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-07 18:31:57,209 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 18:31:57,209 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:31:57,209 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:31:57,209 INFO L74 IsIncluded]: Start isIncluded. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-07 18:31:57,209 INFO L87 Difference]: Start difference. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-07 18:31:57,209 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 18:31:57,209 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-07 18:31:57,209 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 18:31:57,209 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:31:57,209 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 18:31:57,209 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 18:31:57,209 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 18:31:57,209 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-07 18:31:57,209 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-07 18:31:57,209 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 63 [2022-04-07 18:31:57,210 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 18:31:57,210 INFO L478 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-07 18:31:57,210 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-07 18:31:57,210 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 18:31:57,210 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 18:31:57,212 INFO L788 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-07 18:31:57,231 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-07 18:31:57,423 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 18:31:57,426 INFO L719 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1, 1, 1, 1] [2022-04-07 18:31:57,426 INFO L178 ceAbstractionStarter]: Computing trace abstraction results [2022-04-07 18:31:57,428 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 07.04 06:31:57 BasicIcfg [2022-04-07 18:31:57,428 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-07 18:31:57,429 INFO L158 Benchmark]: Toolchain (without parser) took 15676.99ms. Allocated memory was 180.4MB in the beginning and 217.1MB in the end (delta: 36.7MB). Free memory was 133.7MB in the beginning and 145.4MB in the end (delta: -11.7MB). Peak memory consumption was 25.5MB. Max. memory is 8.0GB. [2022-04-07 18:31:57,429 INFO L158 Benchmark]: CDTParser took 0.10ms. Allocated memory is still 180.4MB. Free memory was 150.0MB in the beginning and 150.0MB in the end (delta: 75.8kB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-07 18:31:57,429 INFO L158 Benchmark]: CACSL2BoogieTranslator took 183.73ms. Allocated memory is still 180.4MB. Free memory was 133.5MB in the beginning and 158.8MB in the end (delta: -25.3MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2022-04-07 18:31:57,429 INFO L158 Benchmark]: Boogie Preprocessor took 37.72ms. Allocated memory is still 180.4MB. Free memory was 158.8MB in the beginning and 157.3MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-07 18:31:57,429 INFO L158 Benchmark]: RCFGBuilder took 321.98ms. Allocated memory is still 180.4MB. Free memory was 157.3MB in the beginning and 145.2MB in the end (delta: 12.0MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2022-04-07 18:31:57,430 INFO L158 Benchmark]: IcfgTransformer took 41.11ms. Allocated memory is still 180.4MB. Free memory was 145.2MB in the beginning and 143.2MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-07 18:31:57,430 INFO L158 Benchmark]: TraceAbstraction took 15088.10ms. Allocated memory was 180.4MB in the beginning and 217.1MB in the end (delta: 36.7MB). Free memory was 142.6MB in the beginning and 145.4MB in the end (delta: -2.8MB). Peak memory consumption was 34.7MB. Max. memory is 8.0GB. [2022-04-07 18:31:57,431 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.10ms. Allocated memory is still 180.4MB. Free memory was 150.0MB in the beginning and 150.0MB in the end (delta: 75.8kB). There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 183.73ms. Allocated memory is still 180.4MB. Free memory was 133.5MB in the beginning and 158.8MB in the end (delta: -25.3MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * Boogie Preprocessor took 37.72ms. Allocated memory is still 180.4MB. Free memory was 158.8MB in the beginning and 157.3MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 321.98ms. Allocated memory is still 180.4MB. Free memory was 157.3MB in the beginning and 145.2MB in the end (delta: 12.0MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * IcfgTransformer took 41.11ms. Allocated memory is still 180.4MB. Free memory was 145.2MB in the beginning and 143.2MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * TraceAbstraction took 15088.10ms. Allocated memory was 180.4MB in the beginning and 217.1MB in the end (delta: 36.7MB). Free memory was 142.6MB in the beginning and 145.4MB in the end (delta: -2.8MB). Peak memory consumption was 34.7MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - PositiveResult [Line: 17]: call to reach_error is unreachable For all program executions holds that call to reach_error is unreachable at this location - StatisticsResult: Ultimate Automizer benchmark data CFG has 5 procedures, 39 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 15.1s, OverallIterations: 7, TraceHistogramMax: 7, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 2.2s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 194 SdHoareTripleChecker+Valid, 0.6s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 155 mSDsluCounter, 869 SdHoareTripleChecker+Invalid, 0.6s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 632 mSDsCounter, 90 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 637 IncrementalHoareTripleChecker+Invalid, 727 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 90 mSolverCounterUnsat, 237 mSDtfsCounter, 637 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 446 GetRequests, 382 SyntacticMatches, 3 SemanticMatches, 61 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 69 ImplicationChecksByTransitivity, 0.3s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=65occurred in iteration=6, InterpolantAutomatonStates: 47, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.1s AutomataMinimizationTime, 7 MinimizatonAttempts, 4 StatesRemovedByMinimization, 2 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 10.8s InterpolantComputationTime, 298 NumberOfCodeBlocks, 298 NumberOfCodeBlocksAsserted, 7 NumberOfCheckSat, 447 ConstructedInterpolants, 0 QuantifiedInterpolants, 1174 SizeOfPredicates, 24 NumberOfNonLiveVariables, 745 ConjunctsInSsa, 90 ConjunctsInUnsatCore, 10 InterpolantComputations, 6 PerfectInterpolantSequences, 400/420 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold RESULT: Ultimate proved your program to be correct! [2022-04-07 18:31:57,443 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 0 Received shutdown request...