/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/prodbin-ll_valuebound2.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-07 20:41:05,464 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-07 20:41:05,465 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-07 20:41:05,496 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-07 20:41:05,496 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-07 20:41:05,497 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-07 20:41:05,499 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-07 20:41:05,501 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-07 20:41:05,502 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-07 20:41:05,505 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-07 20:41:05,506 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-07 20:41:05,507 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-07 20:41:05,507 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-07 20:41:05,508 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-07 20:41:05,509 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-07 20:41:05,511 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-07 20:41:05,511 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-07 20:41:05,512 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-07 20:41:05,513 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-07 20:41:05,517 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-07 20:41:05,518 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-07 20:41:05,519 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-07 20:41:05,520 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-07 20:41:05,520 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-07 20:41:05,521 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-07 20:41:05,525 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-07 20:41:05,526 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-07 20:41:05,526 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-07 20:41:05,526 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-07 20:41:05,526 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-07 20:41:05,527 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-07 20:41:05,527 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-07 20:41:05,529 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-07 20:41:05,529 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-07 20:41:05,529 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-07 20:41:05,530 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-07 20:41:05,530 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-07 20:41:05,530 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-07 20:41:05,530 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-07 20:41:05,531 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-07 20:41:05,531 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-07 20:41:05,532 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-07 20:41:05,533 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/LoopAccelerationJordanC.epf [2022-04-07 20:41:05,539 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-07 20:41:05,540 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-07 20:41:05,540 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-07 20:41:05,540 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-07 20:41:05,540 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-07 20:41:05,541 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-07 20:41:05,541 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-07 20:41:05,541 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-07 20:41:05,541 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-07 20:41:05,541 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-07 20:41:05,541 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-07 20:41:05,542 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-07 20:41:05,542 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-07 20:41:05,542 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-07 20:41:05,542 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-07 20:41:05,542 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-07 20:41:05,542 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-07 20:41:05,542 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-07 20:41:05,542 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 20:41:05,542 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-07 20:41:05,542 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-07 20:41:05,543 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-07 20:41:05,543 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 20:41:05,702 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-07 20:41:05,728 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-07 20:41:05,729 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-07 20:41:05,730 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-07 20:41:05,730 INFO L275 PluginConnector]: CDTParser initialized [2022-04-07 20:41:05,731 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_valuebound2.c [2022-04-07 20:41:05,774 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/0e35734f8/0f4d306f9c434f86a0a8f581a4030b14/FLAG0809cb81b [2022-04-07 20:41:06,132 INFO L306 CDTParser]: Found 1 translation units. [2022-04-07 20:41:06,132 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_valuebound2.c [2022-04-07 20:41:06,138 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/0e35734f8/0f4d306f9c434f86a0a8f581a4030b14/FLAG0809cb81b [2022-04-07 20:41:06,150 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/0e35734f8/0f4d306f9c434f86a0a8f581a4030b14 [2022-04-07 20:41:06,152 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-07 20:41:06,153 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-07 20:41:06,155 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-07 20:41:06,155 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-07 20:41:06,158 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-07 20:41:06,159 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 08:41:06" (1/1) ... [2022-04-07 20:41:06,160 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@48b03d06 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 08:41:06, skipping insertion in model container [2022-04-07 20:41:06,160 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 08:41:06" (1/1) ... [2022-04-07 20:41:06,165 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-07 20:41:06,175 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-07 20:41:06,298 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/prodbin-ll_valuebound2.c[537,550] [2022-04-07 20:41:06,316 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 20:41:06,321 INFO L203 MainTranslator]: Completed pre-run [2022-04-07 20:41:06,337 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/prodbin-ll_valuebound2.c[537,550] [2022-04-07 20:41:06,350 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 20:41:06,359 INFO L208 MainTranslator]: Completed translation [2022-04-07 20:41:06,360 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 08:41:06 WrapperNode [2022-04-07 20:41:06,360 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-07 20:41:06,360 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-07 20:41:06,361 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-07 20:41:06,361 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-07 20:41:06,368 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 08:41:06" (1/1) ... [2022-04-07 20:41:06,368 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 08:41:06" (1/1) ... [2022-04-07 20:41:06,373 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 08:41:06" (1/1) ... [2022-04-07 20:41:06,373 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 08:41:06" (1/1) ... [2022-04-07 20:41:06,377 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 08:41:06" (1/1) ... [2022-04-07 20:41:06,379 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 08:41:06" (1/1) ... [2022-04-07 20:41:06,380 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 08:41:06" (1/1) ... [2022-04-07 20:41:06,381 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-07 20:41:06,381 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-07 20:41:06,382 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-07 20:41:06,382 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-07 20:41:06,382 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 08:41:06" (1/1) ... [2022-04-07 20:41:06,388 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 20:41:06,394 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 20:41:06,403 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 20:41:06,411 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 20:41:06,435 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-07 20:41:06,436 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-07 20:41:06,436 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-07 20:41:06,436 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-07 20:41:06,436 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-07 20:41:06,436 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-07 20:41:06,436 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-07 20:41:06,436 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-07 20:41:06,436 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-07 20:41:06,436 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-07 20:41:06,436 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-07 20:41:06,437 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-07 20:41:06,437 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-07 20:41:06,437 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-07 20:41:06,437 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-07 20:41:06,437 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-07 20:41:06,437 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-07 20:41:06,437 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-07 20:41:06,437 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-07 20:41:06,437 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-07 20:41:06,480 INFO L234 CfgBuilder]: Building ICFG [2022-04-07 20:41:06,481 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-07 20:41:06,608 INFO L275 CfgBuilder]: Performing block encoding [2022-04-07 20:41:06,612 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-07 20:41:06,613 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-07 20:41:06,614 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 08:41:06 BoogieIcfgContainer [2022-04-07 20:41:06,614 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-07 20:41:06,614 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-07 20:41:06,614 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-07 20:41:06,615 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-07 20:41:06,617 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 08:41:06" (1/1) ... [2022-04-07 20:41:06,618 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_JORDAN [2022-04-07 20:41:06,637 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 07.04 08:41:06 BasicIcfg [2022-04-07 20:41:06,637 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-07 20:41:06,639 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-07 20:41:06,639 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-07 20:41:06,641 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-07 20:41:06,641 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 07.04 08:41:06" (1/4) ... [2022-04-07 20:41:06,642 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1b7050b2 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 08:41:06, skipping insertion in model container [2022-04-07 20:41:06,642 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 08:41:06" (2/4) ... [2022-04-07 20:41:06,642 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1b7050b2 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 08:41:06, skipping insertion in model container [2022-04-07 20:41:06,642 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 08:41:06" (3/4) ... [2022-04-07 20:41:06,642 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1b7050b2 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 07.04 08:41:06, skipping insertion in model container [2022-04-07 20:41:06,642 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 07.04 08:41:06" (4/4) ... [2022-04-07 20:41:06,643 INFO L111 eAbstractionObserver]: Analyzing ICFG prodbin-ll_valuebound2.cJordan [2022-04-07 20:41:06,646 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:ForwardPredicates Determinization: PREDICATE_ABSTRACTION [2022-04-07 20:41:06,646 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-07 20:41:06,672 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-07 20:41:06,676 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 20:41:06,677 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-07 20:41:06,687 INFO L276 IsEmpty]: Start isEmpty. Operand has 32 states, 19 states have (on average 1.368421052631579) internal successors, (26), 20 states have internal predecessors, (26), 7 states have call successors, (7), 4 states have call predecessors, (7), 4 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-07 20:41:06,692 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-07 20:41:06,692 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 20:41:06,692 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 20:41:06,692 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 20:41:06,695 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 20:41:06,696 INFO L85 PathProgramCache]: Analyzing trace with hash 1656134296, now seen corresponding path program 1 times [2022-04-07 20:41:06,701 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 20:41:06,702 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [509187049] [2022-04-07 20:41:06,702 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:41:06,702 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 20:41:06,789 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:41:06,844 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-07 20:41:06,856 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:41:06,865 INFO L290 TraceCheckUtils]: 0: Hoare triple {52#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [76] 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_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (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] {35#true} is VALID [2022-04-07 20:41:06,865 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-07 20:41:06,865 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {35#true} {35#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-07 20:41:06,866 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-07 20:41:06,867 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:41:06,871 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} [82] assume_abort_if_notENTRY-->L10: 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] {35#true} is VALID [2022-04-07 20:41:06,872 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} [84] L10-->L10-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 20:41:06,872 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 20:41:06,872 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {35#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {36#false} is VALID [2022-04-07 20:41:06,872 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-07 20:41:06,874 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:41:06,877 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} [82] assume_abort_if_notENTRY-->L10: 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] {35#true} is VALID [2022-04-07 20:41:06,878 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} [84] L10-->L10-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 20:41:06,878 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 20:41:06,878 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {36#false} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {36#false} is VALID [2022-04-07 20:41:06,878 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-07 20:41:06,879 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:41:06,883 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} [82] assume_abort_if_notENTRY-->L10: 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] {35#true} is VALID [2022-04-07 20:41:06,884 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} [84] L10-->L10-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 20:41:06,884 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 20:41:06,885 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {36#false} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {36#false} is VALID [2022-04-07 20:41:06,886 INFO L272 TraceCheckUtils]: 0: Hoare triple {35#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {52#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-07 20:41:06,886 INFO L290 TraceCheckUtils]: 1: Hoare triple {52#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [76] 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_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (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] {35#true} is VALID [2022-04-07 20:41:06,888 INFO L290 TraceCheckUtils]: 2: Hoare triple {35#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-07 20:41:06,888 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {35#true} {35#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-07 20:41:06,888 INFO L272 TraceCheckUtils]: 4: Hoare triple {35#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-07 20:41:06,889 INFO L290 TraceCheckUtils]: 5: Hoare triple {35#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |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_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {35#true} is VALID [2022-04-07 20:41:06,889 INFO L272 TraceCheckUtils]: 6: Hoare triple {35#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {35#true} is VALID [2022-04-07 20:41:06,889 INFO L290 TraceCheckUtils]: 7: Hoare triple {35#true} [82] assume_abort_if_notENTRY-->L10: 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] {35#true} is VALID [2022-04-07 20:41:06,890 INFO L290 TraceCheckUtils]: 8: Hoare triple {35#true} [84] L10-->L10-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 20:41:06,890 INFO L290 TraceCheckUtils]: 9: Hoare triple {36#false} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 20:41:06,890 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {36#false} {35#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {36#false} is VALID [2022-04-07 20:41:06,890 INFO L290 TraceCheckUtils]: 11: Hoare triple {36#false} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {36#false} is VALID [2022-04-07 20:41:06,891 INFO L272 TraceCheckUtils]: 12: Hoare triple {36#false} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {35#true} is VALID [2022-04-07 20:41:06,891 INFO L290 TraceCheckUtils]: 13: Hoare triple {35#true} [82] assume_abort_if_notENTRY-->L10: 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] {35#true} is VALID [2022-04-07 20:41:06,891 INFO L290 TraceCheckUtils]: 14: Hoare triple {35#true} [84] L10-->L10-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 20:41:06,891 INFO L290 TraceCheckUtils]: 15: Hoare triple {36#false} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 20:41:06,892 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {36#false} {36#false} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {36#false} is VALID [2022-04-07 20:41:06,892 INFO L272 TraceCheckUtils]: 17: Hoare triple {36#false} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {35#true} is VALID [2022-04-07 20:41:06,892 INFO L290 TraceCheckUtils]: 18: Hoare triple {35#true} [82] assume_abort_if_notENTRY-->L10: 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] {35#true} is VALID [2022-04-07 20:41:06,893 INFO L290 TraceCheckUtils]: 19: Hoare triple {35#true} [84] L10-->L10-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 20:41:06,893 INFO L290 TraceCheckUtils]: 20: Hoare triple {36#false} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 20:41:06,893 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {36#false} {36#false} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {36#false} is VALID [2022-04-07 20:41:06,894 INFO L290 TraceCheckUtils]: 22: Hoare triple {36#false} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {36#false} is VALID [2022-04-07 20:41:06,894 INFO L290 TraceCheckUtils]: 23: Hoare triple {36#false} [89] L34-2-->L34-3: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 20:41:06,894 INFO L272 TraceCheckUtils]: 24: Hoare triple {36#false} [92] L34-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_10 v_main_~b~0_11)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_11, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~z~0, main_~b~0, main_~a~0] {36#false} is VALID [2022-04-07 20:41:06,895 INFO L290 TraceCheckUtils]: 25: Hoare triple {36#false} [95] __VERIFIER_assertENTRY-->L13: 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] {36#false} is VALID [2022-04-07 20:41:06,895 INFO L290 TraceCheckUtils]: 26: Hoare triple {36#false} [99] L13-->L14: 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[] {36#false} is VALID [2022-04-07 20:41:06,896 INFO L290 TraceCheckUtils]: 27: Hoare triple {36#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 20:41:06,896 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 20:41:06,897 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 20:41:06,897 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [509187049] [2022-04-07 20:41:06,897 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [509187049] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 20:41:06,897 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 20:41:06,897 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-07 20:41:06,898 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1901767897] [2022-04-07 20:41:06,899 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 20:41:06,903 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), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-07 20:41:06,904 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 20:41:06,906 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), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-07 20:41:06,937 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 20:41:06,938 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-07 20:41:06,938 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 20:41:06,959 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-07 20:41:06,960 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-07 20:41:06,962 INFO L87 Difference]: Start difference. First operand has 32 states, 19 states have (on average 1.368421052631579) internal successors, (26), 20 states have internal predecessors, (26), 7 states have call successors, (7), 4 states have call predecessors, (7), 4 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) 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), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-07 20:41:07,062 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:41:07,062 INFO L93 Difference]: Finished difference Result 32 states and 36 transitions. [2022-04-07 20:41:07,062 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-07 20:41:07,063 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), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-07 20:41:07,063 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 20:41:07,064 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), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-07 20:41:07,072 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 40 transitions. [2022-04-07 20:41:07,072 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), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-07 20:41:07,074 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 40 transitions. [2022-04-07 20:41:07,074 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 40 transitions. [2022-04-07 20:41:07,124 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 20:41:07,132 INFO L225 Difference]: With dead ends: 32 [2022-04-07 20:41:07,132 INFO L226 Difference]: Without dead ends: 27 [2022-04-07 20:41:07,137 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 13 GetRequests, 12 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 20:41:07,140 INFO L913 BasicCegarLoop]: 31 mSDtfsCounter, 19 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 7 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 24 SdHoareTripleChecker+Valid, 34 SdHoareTripleChecker+Invalid, 13 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 7 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-07 20:41:07,140 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [24 Valid, 34 Invalid, 13 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 7 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-07 20:41:07,150 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2022-04-07 20:41:07,160 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 27. [2022-04-07 20:41:07,160 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 20:41:07,161 INFO L82 GeneralOperation]: Start isEquivalent. First operand 27 states. Second operand has 27 states, 16 states have (on average 1.1875) internal successors, (19), 17 states have internal predecessors, (19), 7 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-07 20:41:07,161 INFO L74 IsIncluded]: Start isIncluded. First operand 27 states. Second operand has 27 states, 16 states have (on average 1.1875) internal successors, (19), 17 states have internal predecessors, (19), 7 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-07 20:41:07,162 INFO L87 Difference]: Start difference. First operand 27 states. Second operand has 27 states, 16 states have (on average 1.1875) internal successors, (19), 17 states have internal predecessors, (19), 7 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-07 20:41:07,167 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:41:07,167 INFO L93 Difference]: Finished difference Result 27 states and 31 transitions. [2022-04-07 20:41:07,167 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-04-07 20:41:07,167 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:41:07,167 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:41:07,168 INFO L74 IsIncluded]: Start isIncluded. First operand has 27 states, 16 states have (on average 1.1875) internal successors, (19), 17 states have internal predecessors, (19), 7 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 27 states. [2022-04-07 20:41:07,169 INFO L87 Difference]: Start difference. First operand has 27 states, 16 states have (on average 1.1875) internal successors, (19), 17 states have internal predecessors, (19), 7 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 27 states. [2022-04-07 20:41:07,173 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:41:07,173 INFO L93 Difference]: Finished difference Result 27 states and 31 transitions. [2022-04-07 20:41:07,173 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-04-07 20:41:07,174 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:41:07,174 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:41:07,174 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 20:41:07,174 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 20:41:07,174 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 16 states have (on average 1.1875) internal successors, (19), 17 states have internal predecessors, (19), 7 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-07 20:41:07,180 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 31 transitions. [2022-04-07 20:41:07,181 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 31 transitions. Word has length 28 [2022-04-07 20:41:07,181 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 20:41:07,181 INFO L478 AbstractCegarLoop]: Abstraction has 27 states and 31 transitions. [2022-04-07 20:41:07,181 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), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-07 20:41:07,181 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-04-07 20:41:07,182 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-07 20:41:07,182 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 20:41:07,182 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 20:41:07,182 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-07 20:41:07,182 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 20:41:07,183 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 20:41:07,183 INFO L85 PathProgramCache]: Analyzing trace with hash -1063826184, now seen corresponding path program 1 times [2022-04-07 20:41:07,183 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 20:41:07,183 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1748985695] [2022-04-07 20:41:07,183 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:41:07,183 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 20:41:07,205 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 20:41:07,205 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1709040200] [2022-04-07 20:41:07,205 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:41:07,205 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 20:41:07,205 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 20:41:07,209 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 20:41:07,209 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 20:41:07,271 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:41:07,273 INFO L263 TraceCheckSpWp]: Trace formula consists of 90 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-07 20:41:07,283 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:41:07,287 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 20:41:07,428 INFO L272 TraceCheckUtils]: 0: Hoare triple {168#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {168#true} is VALID [2022-04-07 20:41:07,428 INFO L290 TraceCheckUtils]: 1: Hoare triple {168#true} [76] 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_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (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] {168#true} is VALID [2022-04-07 20:41:07,428 INFO L290 TraceCheckUtils]: 2: Hoare triple {168#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {168#true} is VALID [2022-04-07 20:41:07,428 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {168#true} {168#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {168#true} is VALID [2022-04-07 20:41:07,429 INFO L272 TraceCheckUtils]: 4: Hoare triple {168#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {168#true} is VALID [2022-04-07 20:41:07,429 INFO L290 TraceCheckUtils]: 5: Hoare triple {168#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |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_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {168#true} is VALID [2022-04-07 20:41:07,429 INFO L272 TraceCheckUtils]: 6: Hoare triple {168#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {168#true} is VALID [2022-04-07 20:41:07,429 INFO L290 TraceCheckUtils]: 7: Hoare triple {168#true} [82] assume_abort_if_notENTRY-->L10: 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] {168#true} is VALID [2022-04-07 20:41:07,429 INFO L290 TraceCheckUtils]: 8: Hoare triple {168#true} [85] L10-->L10-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[] {168#true} is VALID [2022-04-07 20:41:07,429 INFO L290 TraceCheckUtils]: 9: Hoare triple {168#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {168#true} is VALID [2022-04-07 20:41:07,429 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {168#true} {168#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {168#true} is VALID [2022-04-07 20:41:07,430 INFO L290 TraceCheckUtils]: 11: Hoare triple {168#true} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {168#true} is VALID [2022-04-07 20:41:07,430 INFO L272 TraceCheckUtils]: 12: Hoare triple {168#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {168#true} is VALID [2022-04-07 20:41:07,430 INFO L290 TraceCheckUtils]: 13: Hoare triple {168#true} [82] assume_abort_if_notENTRY-->L10: 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] {168#true} is VALID [2022-04-07 20:41:07,430 INFO L290 TraceCheckUtils]: 14: Hoare triple {168#true} [85] L10-->L10-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[] {168#true} is VALID [2022-04-07 20:41:07,430 INFO L290 TraceCheckUtils]: 15: Hoare triple {168#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {168#true} is VALID [2022-04-07 20:41:07,430 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {168#true} {168#true} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {168#true} is VALID [2022-04-07 20:41:07,430 INFO L272 TraceCheckUtils]: 17: Hoare triple {168#true} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {168#true} is VALID [2022-04-07 20:41:07,431 INFO L290 TraceCheckUtils]: 18: Hoare triple {168#true} [82] assume_abort_if_notENTRY-->L10: 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] {168#true} is VALID [2022-04-07 20:41:07,431 INFO L290 TraceCheckUtils]: 19: Hoare triple {168#true} [85] L10-->L10-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[] {168#true} is VALID [2022-04-07 20:41:07,431 INFO L290 TraceCheckUtils]: 20: Hoare triple {168#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {168#true} is VALID [2022-04-07 20:41:07,431 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {168#true} {168#true} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {168#true} is VALID [2022-04-07 20:41:07,431 INFO L290 TraceCheckUtils]: 22: Hoare triple {168#true} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {239#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-07 20:41:07,432 INFO L290 TraceCheckUtils]: 23: Hoare triple {239#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {239#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-07 20:41:07,433 INFO L272 TraceCheckUtils]: 24: Hoare triple {239#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {246#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 20:41:07,433 INFO L290 TraceCheckUtils]: 25: Hoare triple {246#(<= 1 |__VERIFIER_assert_#in~cond|)} [95] __VERIFIER_assertENTRY-->L13: 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] {250#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 20:41:07,433 INFO L290 TraceCheckUtils]: 26: Hoare triple {250#(<= 1 __VERIFIER_assert_~cond)} [99] L13-->L14: 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[] {169#false} is VALID [2022-04-07 20:41:07,434 INFO L290 TraceCheckUtils]: 27: Hoare triple {169#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {169#false} is VALID [2022-04-07 20:41:07,434 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 20:41:07,434 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 20:41:07,434 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 20:41:07,434 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1748985695] [2022-04-07 20:41:07,434 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 20:41:07,434 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1709040200] [2022-04-07 20:41:07,434 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1709040200] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 20:41:07,435 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 20:41:07,435 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-07 20:41:07,435 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [475199074] [2022-04-07 20:41:07,435 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 20:41:07,436 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 2 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 20:41:07,436 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 20:41:07,436 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 2 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 20:41:07,451 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 20:41:07,452 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-07 20:41:07,452 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 20:41:07,452 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-07 20:41:07,452 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-07 20:41:07,452 INFO L87 Difference]: Start difference. First operand 27 states and 31 transitions. Second operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 2 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 20:41:07,563 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:41:07,563 INFO L93 Difference]: Finished difference Result 37 states and 43 transitions. [2022-04-07 20:41:07,563 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-07 20:41:07,563 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 2 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 20:41:07,563 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 20:41:07,563 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 2 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 20:41:07,565 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 44 transitions. [2022-04-07 20:41:07,565 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 2 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 20:41:07,566 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 44 transitions. [2022-04-07 20:41:07,566 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 44 transitions. [2022-04-07 20:41:07,598 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 20:41:07,601 INFO L225 Difference]: With dead ends: 37 [2022-04-07 20:41:07,601 INFO L226 Difference]: Without dead ends: 37 [2022-04-07 20:41:07,601 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 28 GetRequests, 24 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-07 20:41:07,603 INFO L913 BasicCegarLoop]: 25 mSDtfsCounter, 8 mSDsluCounter, 62 mSDsCounter, 0 mSdLazyCounter, 43 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 87 SdHoareTripleChecker+Invalid, 43 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 43 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-07 20:41:07,604 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [9 Valid, 87 Invalid, 43 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 43 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-07 20:41:07,605 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2022-04-07 20:41:07,609 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 33. [2022-04-07 20:41:07,609 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 20:41:07,609 INFO L82 GeneralOperation]: Start isEquivalent. First operand 37 states. Second operand has 33 states, 20 states have (on average 1.15) internal successors, (23), 22 states have internal predecessors, (23), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 20:41:07,609 INFO L74 IsIncluded]: Start isIncluded. First operand 37 states. Second operand has 33 states, 20 states have (on average 1.15) internal successors, (23), 22 states have internal predecessors, (23), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 20:41:07,610 INFO L87 Difference]: Start difference. First operand 37 states. Second operand has 33 states, 20 states have (on average 1.15) internal successors, (23), 22 states have internal predecessors, (23), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 20:41:07,614 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:41:07,614 INFO L93 Difference]: Finished difference Result 37 states and 43 transitions. [2022-04-07 20:41:07,615 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 43 transitions. [2022-04-07 20:41:07,619 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:41:07,619 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:41:07,621 INFO L74 IsIncluded]: Start isIncluded. First operand has 33 states, 20 states have (on average 1.15) internal successors, (23), 22 states have internal predecessors, (23), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) Second operand 37 states. [2022-04-07 20:41:07,621 INFO L87 Difference]: Start difference. First operand has 33 states, 20 states have (on average 1.15) internal successors, (23), 22 states have internal predecessors, (23), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) Second operand 37 states. [2022-04-07 20:41:07,626 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:41:07,626 INFO L93 Difference]: Finished difference Result 37 states and 43 transitions. [2022-04-07 20:41:07,626 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 43 transitions. [2022-04-07 20:41:07,629 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:41:07,629 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:41:07,629 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 20:41:07,629 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 20:41:07,629 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 20 states have (on average 1.15) internal successors, (23), 22 states have internal predecessors, (23), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 20:41:07,632 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 37 transitions. [2022-04-07 20:41:07,632 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 37 transitions. Word has length 28 [2022-04-07 20:41:07,634 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 20:41:07,634 INFO L478 AbstractCegarLoop]: Abstraction has 33 states and 37 transitions. [2022-04-07 20:41:07,634 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 2 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 20:41:07,634 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 37 transitions. [2022-04-07 20:41:07,635 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-07 20:41:07,635 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 20:41:07,635 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, 1] [2022-04-07 20:41:07,654 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 20:41:07,844 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 20:41:07,845 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 20:41:07,845 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 20:41:07,845 INFO L85 PathProgramCache]: Analyzing trace with hash -499634320, now seen corresponding path program 1 times [2022-04-07 20:41:07,845 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 20:41:07,845 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1169892933] [2022-04-07 20:41:07,845 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:41:07,846 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 20:41:07,862 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 20:41:07,863 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [155234265] [2022-04-07 20:41:07,863 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:41:07,863 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 20:41:07,863 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 20:41:07,877 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 20:41:07,879 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 20:41:07,910 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:41:07,911 INFO L263 TraceCheckSpWp]: Trace formula consists of 101 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-07 20:41:07,927 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:41:07,927 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 20:41:08,082 INFO L272 TraceCheckUtils]: 0: Hoare triple {402#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {402#true} is VALID [2022-04-07 20:41:08,083 INFO L290 TraceCheckUtils]: 1: Hoare triple {402#true} [76] 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_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (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] {402#true} is VALID [2022-04-07 20:41:08,083 INFO L290 TraceCheckUtils]: 2: Hoare triple {402#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {402#true} is VALID [2022-04-07 20:41:08,083 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {402#true} {402#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {402#true} is VALID [2022-04-07 20:41:08,083 INFO L272 TraceCheckUtils]: 4: Hoare triple {402#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {402#true} is VALID [2022-04-07 20:41:08,084 INFO L290 TraceCheckUtils]: 5: Hoare triple {402#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |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_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {402#true} is VALID [2022-04-07 20:41:08,084 INFO L272 TraceCheckUtils]: 6: Hoare triple {402#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {402#true} is VALID [2022-04-07 20:41:08,084 INFO L290 TraceCheckUtils]: 7: Hoare triple {402#true} [82] assume_abort_if_notENTRY-->L10: 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] {402#true} is VALID [2022-04-07 20:41:08,084 INFO L290 TraceCheckUtils]: 8: Hoare triple {402#true} [85] L10-->L10-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[] {402#true} is VALID [2022-04-07 20:41:08,084 INFO L290 TraceCheckUtils]: 9: Hoare triple {402#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {402#true} is VALID [2022-04-07 20:41:08,084 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {402#true} {402#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {402#true} is VALID [2022-04-07 20:41:08,084 INFO L290 TraceCheckUtils]: 11: Hoare triple {402#true} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {402#true} is VALID [2022-04-07 20:41:08,084 INFO L272 TraceCheckUtils]: 12: Hoare triple {402#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {402#true} is VALID [2022-04-07 20:41:08,085 INFO L290 TraceCheckUtils]: 13: Hoare triple {402#true} [82] assume_abort_if_notENTRY-->L10: 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] {402#true} is VALID [2022-04-07 20:41:08,085 INFO L290 TraceCheckUtils]: 14: Hoare triple {402#true} [85] L10-->L10-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[] {402#true} is VALID [2022-04-07 20:41:08,085 INFO L290 TraceCheckUtils]: 15: Hoare triple {402#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {402#true} is VALID [2022-04-07 20:41:08,085 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {402#true} {402#true} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {402#true} is VALID [2022-04-07 20:41:08,085 INFO L272 TraceCheckUtils]: 17: Hoare triple {402#true} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {402#true} is VALID [2022-04-07 20:41:08,085 INFO L290 TraceCheckUtils]: 18: Hoare triple {402#true} [82] assume_abort_if_notENTRY-->L10: 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] {461#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 20:41:08,086 INFO L290 TraceCheckUtils]: 19: Hoare triple {461#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [85] L10-->L10-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[] {465#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 20:41:08,086 INFO L290 TraceCheckUtils]: 20: Hoare triple {465#(not (= |assume_abort_if_not_#in~cond| 0))} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {465#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 20:41:08,087 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {465#(not (= |assume_abort_if_not_#in~cond| 0))} {402#true} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {472#(<= 1 main_~b~0)} is VALID [2022-04-07 20:41:08,088 INFO L290 TraceCheckUtils]: 22: Hoare triple {472#(<= 1 main_~b~0)} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {476#(<= 1 main_~y~0)} is VALID [2022-04-07 20:41:08,089 INFO L290 TraceCheckUtils]: 23: Hoare triple {476#(<= 1 main_~y~0)} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {476#(<= 1 main_~y~0)} is VALID [2022-04-07 20:41:08,089 INFO L272 TraceCheckUtils]: 24: Hoare triple {476#(<= 1 main_~y~0)} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {402#true} is VALID [2022-04-07 20:41:08,089 INFO L290 TraceCheckUtils]: 25: Hoare triple {402#true} [95] __VERIFIER_assertENTRY-->L13: 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] {402#true} is VALID [2022-04-07 20:41:08,089 INFO L290 TraceCheckUtils]: 26: Hoare triple {402#true} [100] L13-->L13-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[] {402#true} is VALID [2022-04-07 20:41:08,089 INFO L290 TraceCheckUtils]: 27: Hoare triple {402#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {402#true} is VALID [2022-04-07 20:41:08,091 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {402#true} {476#(<= 1 main_~y~0)} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {476#(<= 1 main_~y~0)} is VALID [2022-04-07 20:41:08,092 INFO L290 TraceCheckUtils]: 29: Hoare triple {476#(<= 1 main_~y~0)} [96] L35-1-->L34-3: Formula: (= v_main_~y~0_9 0) InVars {main_~y~0=v_main_~y~0_9} OutVars{main_~y~0=v_main_~y~0_9} AuxVars[] AssignedVars[] {403#false} is VALID [2022-04-07 20:41:08,092 INFO L272 TraceCheckUtils]: 30: Hoare triple {403#false} [92] L34-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_10 v_main_~b~0_11)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_11, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~z~0, main_~b~0, main_~a~0] {403#false} is VALID [2022-04-07 20:41:08,092 INFO L290 TraceCheckUtils]: 31: Hoare triple {403#false} [95] __VERIFIER_assertENTRY-->L13: 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] {403#false} is VALID [2022-04-07 20:41:08,092 INFO L290 TraceCheckUtils]: 32: Hoare triple {403#false} [99] L13-->L14: 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[] {403#false} is VALID [2022-04-07 20:41:08,093 INFO L290 TraceCheckUtils]: 33: Hoare triple {403#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {403#false} is VALID [2022-04-07 20:41:08,093 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 20:41:08,093 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 20:41:08,093 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 20:41:08,093 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1169892933] [2022-04-07 20:41:08,093 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 20:41:08,094 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [155234265] [2022-04-07 20:41:08,094 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [155234265] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 20:41:08,094 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 20:41:08,094 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-07 20:41:08,094 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1888802600] [2022-04-07 20:41:08,094 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 20:41:08,095 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) Word has length 34 [2022-04-07 20:41:08,095 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 20:41:08,095 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-07 20:41:08,133 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 20:41:08,133 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-07 20:41:08,133 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 20:41:08,133 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-07 20:41:08,133 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-07 20:41:08,134 INFO L87 Difference]: Start difference. First operand 33 states and 37 transitions. Second operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-07 20:41:08,274 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:41:08,275 INFO L93 Difference]: Finished difference Result 36 states and 41 transitions. [2022-04-07 20:41:08,275 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-07 20:41:08,275 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) Word has length 34 [2022-04-07 20:41:08,275 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 20:41:08,275 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-07 20:41:08,277 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 39 transitions. [2022-04-07 20:41:08,277 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-07 20:41:08,283 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 39 transitions. [2022-04-07 20:41:08,283 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 39 transitions. [2022-04-07 20:41:08,310 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 20:41:08,312 INFO L225 Difference]: With dead ends: 36 [2022-04-07 20:41:08,312 INFO L226 Difference]: Without dead ends: 36 [2022-04-07 20:41:08,313 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 35 GetRequests, 29 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-04-07 20:41:08,315 INFO L913 BasicCegarLoop]: 24 mSDtfsCounter, 14 mSDsluCounter, 65 mSDsCounter, 0 mSdLazyCounter, 58 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 15 SdHoareTripleChecker+Valid, 89 SdHoareTripleChecker+Invalid, 60 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 58 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-07 20:41:08,316 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [15 Valid, 89 Invalid, 60 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 58 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-07 20:41:08,317 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states. [2022-04-07 20:41:08,322 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 34. [2022-04-07 20:41:08,322 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 20:41:08,322 INFO L82 GeneralOperation]: Start isEquivalent. First operand 36 states. Second operand has 34 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 states have internal predecessors, (24), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 20:41:08,324 INFO L74 IsIncluded]: Start isIncluded. First operand 36 states. Second operand has 34 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 states have internal predecessors, (24), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 20:41:08,324 INFO L87 Difference]: Start difference. First operand 36 states. Second operand has 34 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 states have internal predecessors, (24), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 20:41:08,327 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:41:08,327 INFO L93 Difference]: Finished difference Result 36 states and 41 transitions. [2022-04-07 20:41:08,328 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 41 transitions. [2022-04-07 20:41:08,328 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:41:08,328 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:41:08,329 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 states have internal predecessors, (24), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 36 states. [2022-04-07 20:41:08,329 INFO L87 Difference]: Start difference. First operand has 34 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 states have internal predecessors, (24), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 36 states. [2022-04-07 20:41:08,335 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:41:08,335 INFO L93 Difference]: Finished difference Result 36 states and 41 transitions. [2022-04-07 20:41:08,335 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 41 transitions. [2022-04-07 20:41:08,335 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:41:08,335 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:41:08,335 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 20:41:08,335 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 20:41:08,335 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 states have internal predecessors, (24), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 20:41:08,337 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 38 transitions. [2022-04-07 20:41:08,337 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 38 transitions. Word has length 34 [2022-04-07 20:41:08,337 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 20:41:08,337 INFO L478 AbstractCegarLoop]: Abstraction has 34 states and 38 transitions. [2022-04-07 20:41:08,337 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-07 20:41:08,337 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 38 transitions. [2022-04-07 20:41:08,338 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-04-07 20:41:08,338 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 20:41:08,338 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 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] [2022-04-07 20:41:08,361 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-07 20:41:08,543 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 20:41:08,543 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 20:41:08,544 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 20:41:08,544 INFO L85 PathProgramCache]: Analyzing trace with hash -1096608558, now seen corresponding path program 1 times [2022-04-07 20:41:08,544 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 20:41:08,544 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1049988152] [2022-04-07 20:41:08,544 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:41:08,544 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 20:41:08,565 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 20:41:08,565 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1723475320] [2022-04-07 20:41:08,565 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:41:08,566 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 20:41:08,566 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 20:41:08,566 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 20:41:08,567 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 20:41:08,604 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:41:08,605 INFO L263 TraceCheckSpWp]: Trace formula consists of 111 conjuncts, 38 conjunts are in the unsatisfiable core [2022-04-07 20:41:08,616 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:41:08,617 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 20:41:09,571 INFO L272 TraceCheckUtils]: 0: Hoare triple {655#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {655#true} is VALID [2022-04-07 20:41:09,571 INFO L290 TraceCheckUtils]: 1: Hoare triple {655#true} [76] 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_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (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] {655#true} is VALID [2022-04-07 20:41:09,571 INFO L290 TraceCheckUtils]: 2: Hoare triple {655#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {655#true} is VALID [2022-04-07 20:41:09,572 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {655#true} {655#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {655#true} is VALID [2022-04-07 20:41:09,572 INFO L272 TraceCheckUtils]: 4: Hoare triple {655#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {655#true} is VALID [2022-04-07 20:41:09,572 INFO L290 TraceCheckUtils]: 5: Hoare triple {655#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |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_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {655#true} is VALID [2022-04-07 20:41:09,572 INFO L272 TraceCheckUtils]: 6: Hoare triple {655#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {655#true} is VALID [2022-04-07 20:41:09,572 INFO L290 TraceCheckUtils]: 7: Hoare triple {655#true} [82] assume_abort_if_notENTRY-->L10: 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] {681#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 20:41:09,573 INFO L290 TraceCheckUtils]: 8: Hoare triple {681#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [85] L10-->L10-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[] {685#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 20:41:09,573 INFO L290 TraceCheckUtils]: 9: Hoare triple {685#(not (= |assume_abort_if_not_#in~cond| 0))} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {685#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 20:41:09,574 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {685#(not (= |assume_abort_if_not_#in~cond| 0))} {655#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {692#(and (<= 0 main_~a~0) (<= main_~a~0 2))} is VALID [2022-04-07 20:41:09,574 INFO L290 TraceCheckUtils]: 11: Hoare triple {692#(and (<= 0 main_~a~0) (<= main_~a~0 2))} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {692#(and (<= 0 main_~a~0) (<= main_~a~0 2))} is VALID [2022-04-07 20:41:09,574 INFO L272 TraceCheckUtils]: 12: Hoare triple {692#(and (<= 0 main_~a~0) (<= main_~a~0 2))} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {655#true} is VALID [2022-04-07 20:41:09,575 INFO L290 TraceCheckUtils]: 13: Hoare triple {655#true} [82] assume_abort_if_notENTRY-->L10: 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] {681#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 20:41:09,575 INFO L290 TraceCheckUtils]: 14: Hoare triple {681#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [85] L10-->L10-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[] {685#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 20:41:09,575 INFO L290 TraceCheckUtils]: 15: Hoare triple {685#(not (= |assume_abort_if_not_#in~cond| 0))} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {685#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 20:41:09,576 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {685#(not (= |assume_abort_if_not_#in~cond| 0))} {692#(and (<= 0 main_~a~0) (<= main_~a~0 2))} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {711#(and (<= main_~b~0 2) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0))} is VALID [2022-04-07 20:41:09,576 INFO L272 TraceCheckUtils]: 17: Hoare triple {711#(and (<= main_~b~0 2) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0))} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {655#true} is VALID [2022-04-07 20:41:09,576 INFO L290 TraceCheckUtils]: 18: Hoare triple {655#true} [82] assume_abort_if_notENTRY-->L10: 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] {655#true} is VALID [2022-04-07 20:41:09,576 INFO L290 TraceCheckUtils]: 19: Hoare triple {655#true} [85] L10-->L10-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[] {655#true} is VALID [2022-04-07 20:41:09,576 INFO L290 TraceCheckUtils]: 20: Hoare triple {655#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {655#true} is VALID [2022-04-07 20:41:09,577 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {655#true} {711#(and (<= main_~b~0 2) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0))} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {711#(and (<= main_~b~0 2) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0))} is VALID [2022-04-07 20:41:09,577 INFO L290 TraceCheckUtils]: 22: Hoare triple {711#(and (<= main_~b~0 2) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0))} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {730#(and (= main_~z~0 0) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-07 20:41:09,578 INFO L290 TraceCheckUtils]: 23: Hoare triple {730#(and (= main_~z~0 0) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {730#(and (= main_~z~0 0) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-07 20:41:09,578 INFO L272 TraceCheckUtils]: 24: Hoare triple {730#(and (= main_~z~0 0) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {655#true} is VALID [2022-04-07 20:41:09,578 INFO L290 TraceCheckUtils]: 25: Hoare triple {655#true} [95] __VERIFIER_assertENTRY-->L13: 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] {740#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-07 20:41:09,579 INFO L290 TraceCheckUtils]: 26: Hoare triple {740#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [100] L13-->L13-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[] {744#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 20:41:09,579 INFO L290 TraceCheckUtils]: 27: Hoare triple {744#(not (= |__VERIFIER_assert_#in~cond| 0))} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {744#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 20:41:09,580 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {744#(not (= |__VERIFIER_assert_#in~cond| 0))} {730#(and (= main_~z~0 0) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {730#(and (= main_~z~0 0) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-07 20:41:09,580 INFO L290 TraceCheckUtils]: 29: Hoare triple {730#(and (= main_~z~0 0) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {754#(and (= main_~z~0 0) (not (= main_~y~0 0)) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-07 20:41:09,581 INFO L290 TraceCheckUtils]: 30: Hoare triple {754#(and (= main_~z~0 0) (not (= main_~y~0 0)) (<= main_~b~0 2) (= main_~b~0 main_~y~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= main_~a~0 main_~x~0))} [101] L39-->L39-2: Formula: (and (= v_main_~y~0_1 (+ (- 1) v_main_~y~0_2)) (= v_main_~z~0_1 (+ v_main_~x~0_1 v_main_~z~0_2)) (= (let ((.cse0 (mod v_main_~y~0_2 2))) (ite (and (< v_main_~y~0_2 0) (not (= .cse0 0))) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_2, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_2} OutVars{main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_1} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {758#(and (<= 1 (mod (+ main_~y~0 1) 2)) (= main_~b~0 (+ main_~y~0 1)) (= main_~z~0 main_~x~0) (<= main_~b~0 2) (<= 0 main_~a~0) (<= main_~a~0 2) (= main_~a~0 main_~x~0) (<= 0 (+ main_~y~0 1)))} is VALID [2022-04-07 20:41:09,582 INFO L290 TraceCheckUtils]: 31: Hoare triple {758#(and (<= 1 (mod (+ main_~y~0 1) 2)) (= main_~b~0 (+ main_~y~0 1)) (= main_~z~0 main_~x~0) (<= main_~b~0 2) (<= 0 main_~a~0) (<= main_~a~0 2) (= main_~a~0 main_~x~0) (<= 0 (+ main_~y~0 1)))} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {762#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (<= main_~b~0 2) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-07 20:41:09,583 INFO L290 TraceCheckUtils]: 32: Hoare triple {762#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (<= main_~b~0 2) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {762#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (<= main_~b~0 2) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-07 20:41:09,585 INFO L272 TraceCheckUtils]: 33: Hoare triple {762#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (<= main_~b~0 2) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~a~0) (<= main_~a~0 2) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {769#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 20:41:09,585 INFO L290 TraceCheckUtils]: 34: Hoare triple {769#(<= 1 |__VERIFIER_assert_#in~cond|)} [95] __VERIFIER_assertENTRY-->L13: 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] {773#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 20:41:09,586 INFO L290 TraceCheckUtils]: 35: Hoare triple {773#(<= 1 __VERIFIER_assert_~cond)} [99] L13-->L14: 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[] {656#false} is VALID [2022-04-07 20:41:09,586 INFO L290 TraceCheckUtils]: 36: Hoare triple {656#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {656#false} is VALID [2022-04-07 20:41:09,586 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 1 proven. 9 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-07 20:41:09,586 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 20:41:57,509 INFO L290 TraceCheckUtils]: 36: Hoare triple {656#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {656#false} is VALID [2022-04-07 20:41:57,510 INFO L290 TraceCheckUtils]: 35: Hoare triple {773#(<= 1 __VERIFIER_assert_~cond)} [99] L13-->L14: 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[] {656#false} is VALID [2022-04-07 20:41:57,510 INFO L290 TraceCheckUtils]: 34: Hoare triple {769#(<= 1 |__VERIFIER_assert_#in~cond|)} [95] __VERIFIER_assertENTRY-->L13: 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] {773#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 20:41:57,511 INFO L272 TraceCheckUtils]: 33: Hoare triple {789#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {769#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 20:41:57,511 INFO L290 TraceCheckUtils]: 32: Hoare triple {789#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {789#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-07 20:41:57,516 INFO L290 TraceCheckUtils]: 31: Hoare triple {796#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {789#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-07 20:41:57,518 INFO L290 TraceCheckUtils]: 30: Hoare triple {800#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} [101] L39-->L39-2: Formula: (and (= v_main_~y~0_1 (+ (- 1) v_main_~y~0_2)) (= v_main_~z~0_1 (+ v_main_~x~0_1 v_main_~z~0_2)) (= (let ((.cse0 (mod v_main_~y~0_2 2))) (ite (and (< v_main_~y~0_2 0) (not (= .cse0 0))) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_2, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_2} OutVars{main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_1} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {796#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} is VALID [2022-04-07 20:41:57,518 INFO L290 TraceCheckUtils]: 29: Hoare triple {800#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {800#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} is VALID [2022-04-07 20:41:57,739 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {744#(not (= |__VERIFIER_assert_#in~cond| 0))} {655#true} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {800#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} is VALID [2022-04-07 20:41:57,740 INFO L290 TraceCheckUtils]: 27: Hoare triple {744#(not (= |__VERIFIER_assert_#in~cond| 0))} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {744#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 20:41:57,740 INFO L290 TraceCheckUtils]: 26: Hoare triple {816#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [100] L13-->L13-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[] {744#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 20:41:57,740 INFO L290 TraceCheckUtils]: 25: Hoare triple {655#true} [95] __VERIFIER_assertENTRY-->L13: 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] {816#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-07 20:41:57,740 INFO L272 TraceCheckUtils]: 24: Hoare triple {655#true} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {655#true} is VALID [2022-04-07 20:41:57,741 INFO L290 TraceCheckUtils]: 23: Hoare triple {655#true} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {655#true} is VALID [2022-04-07 20:41:57,741 INFO L290 TraceCheckUtils]: 22: Hoare triple {655#true} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {655#true} is VALID [2022-04-07 20:41:57,741 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {655#true} {655#true} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {655#true} is VALID [2022-04-07 20:41:57,741 INFO L290 TraceCheckUtils]: 20: Hoare triple {655#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {655#true} is VALID [2022-04-07 20:41:57,741 INFO L290 TraceCheckUtils]: 19: Hoare triple {655#true} [85] L10-->L10-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[] {655#true} is VALID [2022-04-07 20:41:57,741 INFO L290 TraceCheckUtils]: 18: Hoare triple {655#true} [82] assume_abort_if_notENTRY-->L10: 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] {655#true} is VALID [2022-04-07 20:41:57,741 INFO L272 TraceCheckUtils]: 17: Hoare triple {655#true} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {655#true} is VALID [2022-04-07 20:41:57,741 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {655#true} {655#true} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {655#true} is VALID [2022-04-07 20:41:57,741 INFO L290 TraceCheckUtils]: 15: Hoare triple {655#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {655#true} is VALID [2022-04-07 20:41:57,741 INFO L290 TraceCheckUtils]: 14: Hoare triple {655#true} [85] L10-->L10-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[] {655#true} is VALID [2022-04-07 20:41:57,741 INFO L290 TraceCheckUtils]: 13: Hoare triple {655#true} [82] assume_abort_if_notENTRY-->L10: 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] {655#true} is VALID [2022-04-07 20:41:57,742 INFO L272 TraceCheckUtils]: 12: Hoare triple {655#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {655#true} is VALID [2022-04-07 20:41:57,742 INFO L290 TraceCheckUtils]: 11: Hoare triple {655#true} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {655#true} is VALID [2022-04-07 20:41:57,742 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {655#true} {655#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {655#true} is VALID [2022-04-07 20:41:57,742 INFO L290 TraceCheckUtils]: 9: Hoare triple {655#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {655#true} is VALID [2022-04-07 20:41:57,742 INFO L290 TraceCheckUtils]: 8: Hoare triple {655#true} [85] L10-->L10-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[] {655#true} is VALID [2022-04-07 20:41:57,742 INFO L290 TraceCheckUtils]: 7: Hoare triple {655#true} [82] assume_abort_if_notENTRY-->L10: 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] {655#true} is VALID [2022-04-07 20:41:57,742 INFO L272 TraceCheckUtils]: 6: Hoare triple {655#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {655#true} is VALID [2022-04-07 20:41:57,742 INFO L290 TraceCheckUtils]: 5: Hoare triple {655#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |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_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {655#true} is VALID [2022-04-07 20:41:57,742 INFO L272 TraceCheckUtils]: 4: Hoare triple {655#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {655#true} is VALID [2022-04-07 20:41:57,742 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {655#true} {655#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {655#true} is VALID [2022-04-07 20:41:57,743 INFO L290 TraceCheckUtils]: 2: Hoare triple {655#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {655#true} is VALID [2022-04-07 20:41:57,743 INFO L290 TraceCheckUtils]: 1: Hoare triple {655#true} [76] 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_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (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] {655#true} is VALID [2022-04-07 20:41:57,743 INFO L272 TraceCheckUtils]: 0: Hoare triple {655#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {655#true} is VALID [2022-04-07 20:41:57,743 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 3 proven. 1 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-07 20:41:57,743 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 20:41:57,743 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1049988152] [2022-04-07 20:41:57,743 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 20:41:57,743 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1723475320] [2022-04-07 20:41:57,743 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1723475320] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 20:41:57,743 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 20:41:57,743 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 9] total 18 [2022-04-07 20:41:57,744 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1876332490] [2022-04-07 20:41:57,744 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 20:41:57,744 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 18 states have (on average 1.7222222222222223) internal successors, (31), 16 states have internal predecessors, (31), 6 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 5 states have call predecessors, (9), 4 states have call successors, (9) Word has length 37 [2022-04-07 20:41:57,744 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 20:41:57,745 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 18 states, 18 states have (on average 1.7222222222222223) internal successors, (31), 16 states have internal predecessors, (31), 6 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 5 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-07 20:41:58,112 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 20:41:58,113 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-04-07 20:41:58,113 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 20:41:58,113 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-04-07 20:41:58,113 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=58, Invalid=248, Unknown=0, NotChecked=0, Total=306 [2022-04-07 20:41:58,113 INFO L87 Difference]: Start difference. First operand 34 states and 38 transitions. Second operand has 18 states, 18 states have (on average 1.7222222222222223) internal successors, (31), 16 states have internal predecessors, (31), 6 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 5 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-07 20:42:00,418 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:42:00,418 INFO L93 Difference]: Finished difference Result 48 states and 54 transitions. [2022-04-07 20:42:00,418 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-04-07 20:42:00,418 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 18 states have (on average 1.7222222222222223) internal successors, (31), 16 states have internal predecessors, (31), 6 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 5 states have call predecessors, (9), 4 states have call successors, (9) Word has length 37 [2022-04-07 20:42:00,419 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 20:42:00,419 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 18 states have (on average 1.7222222222222223) internal successors, (31), 16 states have internal predecessors, (31), 6 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 5 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-07 20:42:00,420 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 53 transitions. [2022-04-07 20:42:00,421 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 18 states have (on average 1.7222222222222223) internal successors, (31), 16 states have internal predecessors, (31), 6 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 5 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-07 20:42:00,422 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 53 transitions. [2022-04-07 20:42:00,422 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 17 states and 53 transitions. [2022-04-07 20:42:00,477 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 20:42:00,478 INFO L225 Difference]: With dead ends: 48 [2022-04-07 20:42:00,478 INFO L226 Difference]: Without dead ends: 43 [2022-04-07 20:42:00,478 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 80 GetRequests, 55 SyntacticMatches, 3 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 98 ImplicationChecksByTransitivity, 2.6s TimeCoverageRelationStatistics Valid=106, Invalid=446, Unknown=0, NotChecked=0, Total=552 [2022-04-07 20:42:00,480 INFO L913 BasicCegarLoop]: 20 mSDtfsCounter, 43 mSDsluCounter, 138 mSDsCounter, 0 mSdLazyCounter, 290 mSolverCounterSat, 37 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 46 SdHoareTripleChecker+Valid, 158 SdHoareTripleChecker+Invalid, 327 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 37 IncrementalHoareTripleChecker+Valid, 290 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-07 20:42:00,480 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [46 Valid, 158 Invalid, 327 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [37 Valid, 290 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-07 20:42:00,481 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 43 states. [2022-04-07 20:42:00,482 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 43 to 42. [2022-04-07 20:42:00,482 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 20:42:00,483 INFO L82 GeneralOperation]: Start isEquivalent. First operand 43 states. Second operand has 42 states, 27 states have (on average 1.1111111111111112) internal successors, (30), 29 states have internal predecessors, (30), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-07 20:42:00,483 INFO L74 IsIncluded]: Start isIncluded. First operand 43 states. Second operand has 42 states, 27 states have (on average 1.1111111111111112) internal successors, (30), 29 states have internal predecessors, (30), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-07 20:42:00,483 INFO L87 Difference]: Start difference. First operand 43 states. Second operand has 42 states, 27 states have (on average 1.1111111111111112) internal successors, (30), 29 states have internal predecessors, (30), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-07 20:42:00,484 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:42:00,484 INFO L93 Difference]: Finished difference Result 43 states and 47 transitions. [2022-04-07 20:42:00,484 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 47 transitions. [2022-04-07 20:42:00,485 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:42:00,485 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:42:00,485 INFO L74 IsIncluded]: Start isIncluded. First operand has 42 states, 27 states have (on average 1.1111111111111112) internal successors, (30), 29 states have internal predecessors, (30), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 43 states. [2022-04-07 20:42:00,485 INFO L87 Difference]: Start difference. First operand has 42 states, 27 states have (on average 1.1111111111111112) internal successors, (30), 29 states have internal predecessors, (30), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 43 states. [2022-04-07 20:42:00,486 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:42:00,486 INFO L93 Difference]: Finished difference Result 43 states and 47 transitions. [2022-04-07 20:42:00,486 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 47 transitions. [2022-04-07 20:42:00,486 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:42:00,486 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:42:00,486 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 20:42:00,487 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 20:42:00,487 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 42 states, 27 states have (on average 1.1111111111111112) internal successors, (30), 29 states have internal predecessors, (30), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-07 20:42:00,488 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 42 states to 42 states and 46 transitions. [2022-04-07 20:42:00,488 INFO L78 Accepts]: Start accepts. Automaton has 42 states and 46 transitions. Word has length 37 [2022-04-07 20:42:00,488 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 20:42:00,488 INFO L478 AbstractCegarLoop]: Abstraction has 42 states and 46 transitions. [2022-04-07 20:42:00,488 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 18 states have (on average 1.7222222222222223) internal successors, (31), 16 states have internal predecessors, (31), 6 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 5 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-07 20:42:00,488 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 46 transitions. [2022-04-07 20:42:00,489 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-07 20:42:00,489 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 20:42:00,489 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 2, 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] [2022-04-07 20:42:00,505 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Ended with exit code 0 [2022-04-07 20:42:00,703 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 20:42:00,703 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 20:42:00,704 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 20:42:00,704 INFO L85 PathProgramCache]: Analyzing trace with hash -559664565, now seen corresponding path program 1 times [2022-04-07 20:42:00,704 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 20:42:00,704 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [886454682] [2022-04-07 20:42:00,704 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:42:00,704 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 20:42:00,732 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 20:42:00,733 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [241483286] [2022-04-07 20:42:00,733 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:42:00,733 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 20:42:00,733 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 20:42:00,736 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 20:42:00,737 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 20:42:00,773 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:42:00,774 INFO L263 TraceCheckSpWp]: Trace formula consists of 117 conjuncts, 12 conjunts are in the unsatisfiable core [2022-04-07 20:42:00,782 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:42:00,783 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 20:42:01,098 INFO L272 TraceCheckUtils]: 0: Hoare triple {1083#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1083#true} is VALID [2022-04-07 20:42:01,098 INFO L290 TraceCheckUtils]: 1: Hoare triple {1083#true} [76] 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_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (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] {1083#true} is VALID [2022-04-07 20:42:01,098 INFO L290 TraceCheckUtils]: 2: Hoare triple {1083#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1083#true} is VALID [2022-04-07 20:42:01,098 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1083#true} {1083#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1083#true} is VALID [2022-04-07 20:42:01,098 INFO L272 TraceCheckUtils]: 4: Hoare triple {1083#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1083#true} is VALID [2022-04-07 20:42:01,098 INFO L290 TraceCheckUtils]: 5: Hoare triple {1083#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |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_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1083#true} is VALID [2022-04-07 20:42:01,099 INFO L272 TraceCheckUtils]: 6: Hoare triple {1083#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {1083#true} is VALID [2022-04-07 20:42:01,099 INFO L290 TraceCheckUtils]: 7: Hoare triple {1083#true} [82] assume_abort_if_notENTRY-->L10: 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] {1083#true} is VALID [2022-04-07 20:42:01,099 INFO L290 TraceCheckUtils]: 8: Hoare triple {1083#true} [85] L10-->L10-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[] {1083#true} is VALID [2022-04-07 20:42:01,099 INFO L290 TraceCheckUtils]: 9: Hoare triple {1083#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1083#true} is VALID [2022-04-07 20:42:01,099 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1083#true} {1083#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {1083#true} is VALID [2022-04-07 20:42:01,099 INFO L290 TraceCheckUtils]: 11: Hoare triple {1083#true} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {1083#true} is VALID [2022-04-07 20:42:01,099 INFO L272 TraceCheckUtils]: 12: Hoare triple {1083#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1083#true} is VALID [2022-04-07 20:42:01,099 INFO L290 TraceCheckUtils]: 13: Hoare triple {1083#true} [82] assume_abort_if_notENTRY-->L10: 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] {1083#true} is VALID [2022-04-07 20:42:01,099 INFO L290 TraceCheckUtils]: 14: Hoare triple {1083#true} [85] L10-->L10-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[] {1083#true} is VALID [2022-04-07 20:42:01,099 INFO L290 TraceCheckUtils]: 15: Hoare triple {1083#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1083#true} is VALID [2022-04-07 20:42:01,099 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1083#true} {1083#true} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1083#true} is VALID [2022-04-07 20:42:01,100 INFO L272 TraceCheckUtils]: 17: Hoare triple {1083#true} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1083#true} is VALID [2022-04-07 20:42:01,101 INFO L290 TraceCheckUtils]: 18: Hoare triple {1083#true} [82] assume_abort_if_notENTRY-->L10: 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] {1142#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 20:42:01,101 INFO L290 TraceCheckUtils]: 19: Hoare triple {1142#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [85] L10-->L10-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[] {1146#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 20:42:01,102 INFO L290 TraceCheckUtils]: 20: Hoare triple {1146#(not (= |assume_abort_if_not_#in~cond| 0))} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1146#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 20:42:01,102 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1146#(not (= |assume_abort_if_not_#in~cond| 0))} {1083#true} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1153#(<= 1 main_~b~0)} is VALID [2022-04-07 20:42:01,103 INFO L290 TraceCheckUtils]: 22: Hoare triple {1153#(<= 1 main_~b~0)} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {1157#(<= 1 main_~y~0)} is VALID [2022-04-07 20:42:01,103 INFO L290 TraceCheckUtils]: 23: Hoare triple {1157#(<= 1 main_~y~0)} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1157#(<= 1 main_~y~0)} is VALID [2022-04-07 20:42:01,103 INFO L272 TraceCheckUtils]: 24: Hoare triple {1157#(<= 1 main_~y~0)} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1083#true} is VALID [2022-04-07 20:42:01,103 INFO L290 TraceCheckUtils]: 25: Hoare triple {1083#true} [95] __VERIFIER_assertENTRY-->L13: 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] {1083#true} is VALID [2022-04-07 20:42:01,103 INFO L290 TraceCheckUtils]: 26: Hoare triple {1083#true} [100] L13-->L13-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[] {1083#true} is VALID [2022-04-07 20:42:01,103 INFO L290 TraceCheckUtils]: 27: Hoare triple {1083#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1083#true} is VALID [2022-04-07 20:42:01,104 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1083#true} {1157#(<= 1 main_~y~0)} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1157#(<= 1 main_~y~0)} is VALID [2022-04-07 20:42:01,104 INFO L290 TraceCheckUtils]: 29: Hoare triple {1157#(<= 1 main_~y~0)} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {1157#(<= 1 main_~y~0)} is VALID [2022-04-07 20:42:01,105 INFO L290 TraceCheckUtils]: 30: Hoare triple {1157#(<= 1 main_~y~0)} [102] L39-->L39-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_3} OutVars{main_~y~0=v_main_~y~0_3} AuxVars[] AssignedVars[] {1182#(and (not (= (mod main_~y~0 2) 1)) (<= 1 main_~y~0))} is VALID [2022-04-07 20:42:01,106 INFO L290 TraceCheckUtils]: 31: Hoare triple {1182#(and (not (= (mod main_~y~0 2) 1)) (<= 1 main_~y~0))} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {1157#(<= 1 main_~y~0)} is VALID [2022-04-07 20:42:01,106 INFO L290 TraceCheckUtils]: 32: Hoare triple {1157#(<= 1 main_~y~0)} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1157#(<= 1 main_~y~0)} is VALID [2022-04-07 20:42:01,106 INFO L272 TraceCheckUtils]: 33: Hoare triple {1157#(<= 1 main_~y~0)} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1083#true} is VALID [2022-04-07 20:42:01,106 INFO L290 TraceCheckUtils]: 34: Hoare triple {1083#true} [95] __VERIFIER_assertENTRY-->L13: 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] {1083#true} is VALID [2022-04-07 20:42:01,106 INFO L290 TraceCheckUtils]: 35: Hoare triple {1083#true} [100] L13-->L13-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[] {1083#true} is VALID [2022-04-07 20:42:01,106 INFO L290 TraceCheckUtils]: 36: Hoare triple {1083#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1083#true} is VALID [2022-04-07 20:42:01,107 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {1083#true} {1157#(<= 1 main_~y~0)} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1157#(<= 1 main_~y~0)} is VALID [2022-04-07 20:42:01,107 INFO L290 TraceCheckUtils]: 38: Hoare triple {1157#(<= 1 main_~y~0)} [96] L35-1-->L34-3: Formula: (= v_main_~y~0_9 0) InVars {main_~y~0=v_main_~y~0_9} OutVars{main_~y~0=v_main_~y~0_9} AuxVars[] AssignedVars[] {1084#false} is VALID [2022-04-07 20:42:01,108 INFO L272 TraceCheckUtils]: 39: Hoare triple {1084#false} [92] L34-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_10 v_main_~b~0_11)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_11, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~z~0, main_~b~0, main_~a~0] {1084#false} is VALID [2022-04-07 20:42:01,108 INFO L290 TraceCheckUtils]: 40: Hoare triple {1084#false} [95] __VERIFIER_assertENTRY-->L13: 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] {1084#false} is VALID [2022-04-07 20:42:01,108 INFO L290 TraceCheckUtils]: 41: Hoare triple {1084#false} [99] L13-->L14: 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[] {1084#false} is VALID [2022-04-07 20:42:01,108 INFO L290 TraceCheckUtils]: 42: Hoare triple {1084#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1084#false} is VALID [2022-04-07 20:42:01,108 INFO L134 CoverageAnalysis]: Checked inductivity of 23 backedges. 10 proven. 0 refuted. 0 times theorem prover too weak. 13 trivial. 0 not checked. [2022-04-07 20:42:01,108 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 20:42:01,108 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 20:42:01,108 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [886454682] [2022-04-07 20:42:01,108 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 20:42:01,108 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [241483286] [2022-04-07 20:42:01,108 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [241483286] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 20:42:01,108 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 20:42:01,108 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-07 20:42:01,109 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [460786882] [2022-04-07 20:42:01,109 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 20:42:01,109 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) Word has length 43 [2022-04-07 20:42:01,109 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 20:42:01,109 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-07 20:42:01,130 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 20:42:01,130 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-07 20:42:01,130 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 20:42:01,131 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-07 20:42:01,131 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=30, Unknown=0, NotChecked=0, Total=42 [2022-04-07 20:42:01,131 INFO L87 Difference]: Start difference. First operand 42 states and 46 transitions. Second operand has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-07 20:42:01,337 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:42:01,337 INFO L93 Difference]: Finished difference Result 50 states and 57 transitions. [2022-04-07 20:42:01,337 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-07 20:42:01,337 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) Word has length 43 [2022-04-07 20:42:01,337 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 20:42:01,338 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-07 20:42:01,338 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 39 transitions. [2022-04-07 20:42:01,339 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-07 20:42:01,339 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 39 transitions. [2022-04-07 20:42:01,339 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 39 transitions. [2022-04-07 20:42:01,370 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 20:42:01,371 INFO L225 Difference]: With dead ends: 50 [2022-04-07 20:42:01,371 INFO L226 Difference]: Without dead ends: 50 [2022-04-07 20:42:01,371 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 45 GetRequests, 36 SyntacticMatches, 1 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=26, Invalid=64, Unknown=0, NotChecked=0, Total=90 [2022-04-07 20:42:01,372 INFO L913 BasicCegarLoop]: 23 mSDtfsCounter, 13 mSDsluCounter, 81 mSDsCounter, 0 mSdLazyCounter, 71 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 104 SdHoareTripleChecker+Invalid, 74 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 71 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-07 20:42:01,372 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 104 Invalid, 74 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 71 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-07 20:42:01,373 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2022-04-07 20:42:01,378 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 50. [2022-04-07 20:42:01,378 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 20:42:01,379 INFO L82 GeneralOperation]: Start isEquivalent. First operand 50 states. Second operand has 50 states, 33 states have (on average 1.121212121212121) internal successors, (37), 36 states have internal predecessors, (37), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-07 20:42:01,379 INFO L74 IsIncluded]: Start isIncluded. First operand 50 states. Second operand has 50 states, 33 states have (on average 1.121212121212121) internal successors, (37), 36 states have internal predecessors, (37), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-07 20:42:01,380 INFO L87 Difference]: Start difference. First operand 50 states. Second operand has 50 states, 33 states have (on average 1.121212121212121) internal successors, (37), 36 states have internal predecessors, (37), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-07 20:42:01,382 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:42:01,382 INFO L93 Difference]: Finished difference Result 50 states and 57 transitions. [2022-04-07 20:42:01,382 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 57 transitions. [2022-04-07 20:42:01,383 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:42:01,383 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:42:01,383 INFO L74 IsIncluded]: Start isIncluded. First operand has 50 states, 33 states have (on average 1.121212121212121) internal successors, (37), 36 states have internal predecessors, (37), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) Second operand 50 states. [2022-04-07 20:42:01,384 INFO L87 Difference]: Start difference. First operand has 50 states, 33 states have (on average 1.121212121212121) internal successors, (37), 36 states have internal predecessors, (37), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) Second operand 50 states. [2022-04-07 20:42:01,387 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:42:01,387 INFO L93 Difference]: Finished difference Result 50 states and 57 transitions. [2022-04-07 20:42:01,387 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 57 transitions. [2022-04-07 20:42:01,388 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:42:01,388 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:42:01,388 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 20:42:01,388 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 20:42:01,388 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 50 states, 33 states have (on average 1.121212121212121) internal successors, (37), 36 states have internal predecessors, (37), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-07 20:42:01,390 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 57 transitions. [2022-04-07 20:42:01,390 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 57 transitions. Word has length 43 [2022-04-07 20:42:01,391 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 20:42:01,391 INFO L478 AbstractCegarLoop]: Abstraction has 50 states and 57 transitions. [2022-04-07 20:42:01,393 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 6 states have internal predecessors, (22), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-07 20:42:01,393 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 57 transitions. [2022-04-07 20:42:01,394 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-04-07 20:42:01,394 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 20:42:01,394 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 20:42:01,412 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 20:42:01,607 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 20:42:01,607 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 20:42:01,608 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 20:42:01,608 INFO L85 PathProgramCache]: Analyzing trace with hash -1863738536, now seen corresponding path program 1 times [2022-04-07 20:42:01,608 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 20:42:01,608 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1149481748] [2022-04-07 20:42:01,608 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:42:01,608 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 20:42:01,620 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 20:42:01,621 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1920118963] [2022-04-07 20:42:01,621 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:42:01,621 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 20:42:01,621 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 20:42:01,621 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 20:42:01,622 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 20:42:01,654 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:42:01,655 INFO L263 TraceCheckSpWp]: Trace formula consists of 122 conjuncts, 12 conjunts are in the unsatisfiable core [2022-04-07 20:42:01,668 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:42:01,669 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 20:42:02,288 INFO L272 TraceCheckUtils]: 0: Hoare triple {1424#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1424#true} is VALID [2022-04-07 20:42:02,288 INFO L290 TraceCheckUtils]: 1: Hoare triple {1424#true} [76] 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_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (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] {1424#true} is VALID [2022-04-07 20:42:02,288 INFO L290 TraceCheckUtils]: 2: Hoare triple {1424#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1424#true} is VALID [2022-04-07 20:42:02,288 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1424#true} {1424#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1424#true} is VALID [2022-04-07 20:42:02,288 INFO L272 TraceCheckUtils]: 4: Hoare triple {1424#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1424#true} is VALID [2022-04-07 20:42:02,288 INFO L290 TraceCheckUtils]: 5: Hoare triple {1424#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |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_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1424#true} is VALID [2022-04-07 20:42:02,289 INFO L272 TraceCheckUtils]: 6: Hoare triple {1424#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {1424#true} is VALID [2022-04-07 20:42:02,289 INFO L290 TraceCheckUtils]: 7: Hoare triple {1424#true} [82] assume_abort_if_notENTRY-->L10: 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] {1424#true} is VALID [2022-04-07 20:42:02,289 INFO L290 TraceCheckUtils]: 8: Hoare triple {1424#true} [85] L10-->L10-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[] {1424#true} is VALID [2022-04-07 20:42:02,289 INFO L290 TraceCheckUtils]: 9: Hoare triple {1424#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1424#true} is VALID [2022-04-07 20:42:02,290 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1424#true} {1424#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {1424#true} is VALID [2022-04-07 20:42:02,290 INFO L290 TraceCheckUtils]: 11: Hoare triple {1424#true} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {1424#true} is VALID [2022-04-07 20:42:02,290 INFO L272 TraceCheckUtils]: 12: Hoare triple {1424#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1424#true} is VALID [2022-04-07 20:42:02,290 INFO L290 TraceCheckUtils]: 13: Hoare triple {1424#true} [82] assume_abort_if_notENTRY-->L10: 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] {1468#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 20:42:02,290 INFO L290 TraceCheckUtils]: 14: Hoare triple {1468#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [85] L10-->L10-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[] {1472#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 20:42:02,291 INFO L290 TraceCheckUtils]: 15: Hoare triple {1472#(not (= |assume_abort_if_not_#in~cond| 0))} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1472#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 20:42:02,291 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1472#(not (= |assume_abort_if_not_#in~cond| 0))} {1424#true} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1479#(and (<= main_~b~0 2) (<= 0 main_~b~0))} is VALID [2022-04-07 20:42:02,291 INFO L272 TraceCheckUtils]: 17: Hoare triple {1479#(and (<= main_~b~0 2) (<= 0 main_~b~0))} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1424#true} is VALID [2022-04-07 20:42:02,291 INFO L290 TraceCheckUtils]: 18: Hoare triple {1424#true} [82] assume_abort_if_notENTRY-->L10: 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] {1424#true} is VALID [2022-04-07 20:42:02,291 INFO L290 TraceCheckUtils]: 19: Hoare triple {1424#true} [85] L10-->L10-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[] {1424#true} is VALID [2022-04-07 20:42:02,296 INFO L290 TraceCheckUtils]: 20: Hoare triple {1424#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1424#true} is VALID [2022-04-07 20:42:02,296 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1424#true} {1479#(and (<= main_~b~0 2) (<= 0 main_~b~0))} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1479#(and (<= main_~b~0 2) (<= 0 main_~b~0))} is VALID [2022-04-07 20:42:02,297 INFO L290 TraceCheckUtils]: 22: Hoare triple {1479#(and (<= main_~b~0 2) (<= 0 main_~b~0))} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {1498#(and (<= 0 main_~y~0) (<= main_~y~0 2))} is VALID [2022-04-07 20:42:02,298 INFO L290 TraceCheckUtils]: 23: Hoare triple {1498#(and (<= 0 main_~y~0) (<= main_~y~0 2))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1498#(and (<= 0 main_~y~0) (<= main_~y~0 2))} is VALID [2022-04-07 20:42:02,300 INFO L272 TraceCheckUtils]: 24: Hoare triple {1498#(and (<= 0 main_~y~0) (<= main_~y~0 2))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1424#true} is VALID [2022-04-07 20:42:02,301 INFO L290 TraceCheckUtils]: 25: Hoare triple {1424#true} [95] __VERIFIER_assertENTRY-->L13: 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] {1424#true} is VALID [2022-04-07 20:42:02,301 INFO L290 TraceCheckUtils]: 26: Hoare triple {1424#true} [100] L13-->L13-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[] {1424#true} is VALID [2022-04-07 20:42:02,301 INFO L290 TraceCheckUtils]: 27: Hoare triple {1424#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1424#true} is VALID [2022-04-07 20:42:02,302 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1424#true} {1498#(and (<= 0 main_~y~0) (<= main_~y~0 2))} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1498#(and (<= 0 main_~y~0) (<= main_~y~0 2))} is VALID [2022-04-07 20:42:02,302 INFO L290 TraceCheckUtils]: 29: Hoare triple {1498#(and (<= 0 main_~y~0) (<= main_~y~0 2))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {1520#(and (<= 0 main_~y~0) (not (= main_~y~0 0)) (<= main_~y~0 2))} is VALID [2022-04-07 20:42:02,305 INFO L290 TraceCheckUtils]: 30: Hoare triple {1520#(and (<= 0 main_~y~0) (not (= main_~y~0 0)) (<= main_~y~0 2))} [102] L39-->L39-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_3} OutVars{main_~y~0=v_main_~y~0_3} AuxVars[] AssignedVars[] {1524#(and (<= 0 main_~y~0) (not (= main_~y~0 0)) (not (= (mod main_~y~0 2) 1)) (<= main_~y~0 2))} is VALID [2022-04-07 20:42:02,306 INFO L290 TraceCheckUtils]: 31: Hoare triple {1524#(and (<= 0 main_~y~0) (not (= main_~y~0 0)) (not (= (mod main_~y~0 2) 1)) (<= main_~y~0 2))} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {1528#(and (< 0 main_~y~0) (<= (* main_~y~0 2) 2))} is VALID [2022-04-07 20:42:02,306 INFO L290 TraceCheckUtils]: 32: Hoare triple {1528#(and (< 0 main_~y~0) (<= (* main_~y~0 2) 2))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1528#(and (< 0 main_~y~0) (<= (* main_~y~0 2) 2))} is VALID [2022-04-07 20:42:02,308 INFO L272 TraceCheckUtils]: 33: Hoare triple {1528#(and (< 0 main_~y~0) (<= (* main_~y~0 2) 2))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1424#true} is VALID [2022-04-07 20:42:02,309 INFO L290 TraceCheckUtils]: 34: Hoare triple {1424#true} [95] __VERIFIER_assertENTRY-->L13: 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] {1424#true} is VALID [2022-04-07 20:42:02,309 INFO L290 TraceCheckUtils]: 35: Hoare triple {1424#true} [100] L13-->L13-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[] {1424#true} is VALID [2022-04-07 20:42:02,309 INFO L290 TraceCheckUtils]: 36: Hoare triple {1424#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1424#true} is VALID [2022-04-07 20:42:02,310 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {1424#true} {1528#(and (< 0 main_~y~0) (<= (* main_~y~0 2) 2))} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1528#(and (< 0 main_~y~0) (<= (* main_~y~0 2) 2))} is VALID [2022-04-07 20:42:02,310 INFO L290 TraceCheckUtils]: 38: Hoare triple {1528#(and (< 0 main_~y~0) (<= (* main_~y~0 2) 2))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {1528#(and (< 0 main_~y~0) (<= (* main_~y~0 2) 2))} is VALID [2022-04-07 20:42:02,311 INFO L290 TraceCheckUtils]: 39: Hoare triple {1528#(and (< 0 main_~y~0) (<= (* main_~y~0 2) 2))} [102] L39-->L39-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_3} OutVars{main_~y~0=v_main_~y~0_3} AuxVars[] AssignedVars[] {1425#false} is VALID [2022-04-07 20:42:02,311 INFO L290 TraceCheckUtils]: 40: Hoare triple {1425#false} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {1425#false} is VALID [2022-04-07 20:42:02,311 INFO L290 TraceCheckUtils]: 41: Hoare triple {1425#false} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1425#false} is VALID [2022-04-07 20:42:02,311 INFO L272 TraceCheckUtils]: 42: Hoare triple {1425#false} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1425#false} is VALID [2022-04-07 20:42:02,311 INFO L290 TraceCheckUtils]: 43: Hoare triple {1425#false} [95] __VERIFIER_assertENTRY-->L13: 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] {1425#false} is VALID [2022-04-07 20:42:02,311 INFO L290 TraceCheckUtils]: 44: Hoare triple {1425#false} [99] L13-->L14: 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[] {1425#false} is VALID [2022-04-07 20:42:02,311 INFO L290 TraceCheckUtils]: 45: Hoare triple {1425#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1425#false} is VALID [2022-04-07 20:42:02,311 INFO L134 CoverageAnalysis]: Checked inductivity of 29 backedges. 16 proven. 3 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2022-04-07 20:42:02,311 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 20:42:02,988 INFO L290 TraceCheckUtils]: 45: Hoare triple {1425#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1425#false} is VALID [2022-04-07 20:42:02,988 INFO L290 TraceCheckUtils]: 44: Hoare triple {1425#false} [99] L13-->L14: 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[] {1425#false} is VALID [2022-04-07 20:42:02,988 INFO L290 TraceCheckUtils]: 43: Hoare triple {1425#false} [95] __VERIFIER_assertENTRY-->L13: 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] {1425#false} is VALID [2022-04-07 20:42:02,988 INFO L272 TraceCheckUtils]: 42: Hoare triple {1425#false} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1425#false} is VALID [2022-04-07 20:42:02,988 INFO L290 TraceCheckUtils]: 41: Hoare triple {1425#false} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1425#false} is VALID [2022-04-07 20:42:02,989 INFO L290 TraceCheckUtils]: 40: Hoare triple {1425#false} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {1425#false} is VALID [2022-04-07 20:42:02,989 INFO L290 TraceCheckUtils]: 39: Hoare triple {1589#(and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1))} [102] L39-->L39-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_3} OutVars{main_~y~0=v_main_~y~0_3} AuxVars[] AssignedVars[] {1425#false} is VALID [2022-04-07 20:42:02,989 INFO L290 TraceCheckUtils]: 38: Hoare triple {1589#(and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {1589#(and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1))} is VALID [2022-04-07 20:42:02,996 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {1424#true} {1589#(and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1))} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1589#(and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1))} is VALID [2022-04-07 20:42:02,996 INFO L290 TraceCheckUtils]: 36: Hoare triple {1424#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1424#true} is VALID [2022-04-07 20:42:02,996 INFO L290 TraceCheckUtils]: 35: Hoare triple {1424#true} [100] L13-->L13-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[] {1424#true} is VALID [2022-04-07 20:42:02,996 INFO L290 TraceCheckUtils]: 34: Hoare triple {1424#true} [95] __VERIFIER_assertENTRY-->L13: 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] {1424#true} is VALID [2022-04-07 20:42:02,996 INFO L272 TraceCheckUtils]: 33: Hoare triple {1589#(and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1424#true} is VALID [2022-04-07 20:42:02,996 INFO L290 TraceCheckUtils]: 32: Hoare triple {1589#(and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1589#(and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1))} is VALID [2022-04-07 20:42:02,997 INFO L290 TraceCheckUtils]: 31: Hoare triple {1614#(and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2)))} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {1589#(and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1))} is VALID [2022-04-07 20:42:02,998 INFO L290 TraceCheckUtils]: 30: Hoare triple {1618#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))} [102] L39-->L39-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_3} OutVars{main_~y~0=v_main_~y~0_3} AuxVars[] AssignedVars[] {1614#(and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2)))} is VALID [2022-04-07 20:42:02,998 INFO L290 TraceCheckUtils]: 29: Hoare triple {1622#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (= main_~y~0 0) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {1618#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))} is VALID [2022-04-07 20:42:02,998 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1424#true} {1622#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (= main_~y~0 0) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1622#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (= main_~y~0 0) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))} is VALID [2022-04-07 20:42:02,999 INFO L290 TraceCheckUtils]: 27: Hoare triple {1424#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1424#true} is VALID [2022-04-07 20:42:02,999 INFO L290 TraceCheckUtils]: 26: Hoare triple {1424#true} [100] L13-->L13-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[] {1424#true} is VALID [2022-04-07 20:42:02,999 INFO L290 TraceCheckUtils]: 25: Hoare triple {1424#true} [95] __VERIFIER_assertENTRY-->L13: 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] {1424#true} is VALID [2022-04-07 20:42:02,999 INFO L272 TraceCheckUtils]: 24: Hoare triple {1622#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (= main_~y~0 0) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1424#true} is VALID [2022-04-07 20:42:02,999 INFO L290 TraceCheckUtils]: 23: Hoare triple {1622#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (= main_~y~0 0) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1622#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (= main_~y~0 0) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))} is VALID [2022-04-07 20:42:03,000 INFO L290 TraceCheckUtils]: 22: Hoare triple {1644#(or (and (= (mod main_~b~0 2) 1) (<= 0 main_~b~0)) (= main_~b~0 0) (and (= (mod (div main_~b~0 2) 2) 1) (<= 0 (div main_~b~0 2))))} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {1622#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (= main_~y~0 0) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))} is VALID [2022-04-07 20:42:03,000 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1424#true} {1644#(or (and (= (mod main_~b~0 2) 1) (<= 0 main_~b~0)) (= main_~b~0 0) (and (= (mod (div main_~b~0 2) 2) 1) (<= 0 (div main_~b~0 2))))} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1644#(or (and (= (mod main_~b~0 2) 1) (<= 0 main_~b~0)) (= main_~b~0 0) (and (= (mod (div main_~b~0 2) 2) 1) (<= 0 (div main_~b~0 2))))} is VALID [2022-04-07 20:42:03,000 INFO L290 TraceCheckUtils]: 20: Hoare triple {1424#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1424#true} is VALID [2022-04-07 20:42:03,000 INFO L290 TraceCheckUtils]: 19: Hoare triple {1424#true} [85] L10-->L10-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[] {1424#true} is VALID [2022-04-07 20:42:03,000 INFO L290 TraceCheckUtils]: 18: Hoare triple {1424#true} [82] assume_abort_if_notENTRY-->L10: 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] {1424#true} is VALID [2022-04-07 20:42:03,000 INFO L272 TraceCheckUtils]: 17: Hoare triple {1644#(or (and (= (mod main_~b~0 2) 1) (<= 0 main_~b~0)) (= main_~b~0 0) (and (= (mod (div main_~b~0 2) 2) 1) (<= 0 (div main_~b~0 2))))} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1424#true} is VALID [2022-04-07 20:42:03,001 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1472#(not (= |assume_abort_if_not_#in~cond| 0))} {1424#true} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1644#(or (and (= (mod main_~b~0 2) 1) (<= 0 main_~b~0)) (= main_~b~0 0) (and (= (mod (div main_~b~0 2) 2) 1) (<= 0 (div main_~b~0 2))))} is VALID [2022-04-07 20:42:03,001 INFO L290 TraceCheckUtils]: 15: Hoare triple {1472#(not (= |assume_abort_if_not_#in~cond| 0))} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1472#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 20:42:03,002 INFO L290 TraceCheckUtils]: 14: Hoare triple {1672#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} [85] L10-->L10-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[] {1472#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 20:42:03,002 INFO L290 TraceCheckUtils]: 13: Hoare triple {1424#true} [82] assume_abort_if_notENTRY-->L10: 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] {1672#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-07 20:42:03,002 INFO L272 TraceCheckUtils]: 12: Hoare triple {1424#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1424#true} is VALID [2022-04-07 20:42:03,002 INFO L290 TraceCheckUtils]: 11: Hoare triple {1424#true} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {1424#true} is VALID [2022-04-07 20:42:03,002 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1424#true} {1424#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {1424#true} is VALID [2022-04-07 20:42:03,002 INFO L290 TraceCheckUtils]: 9: Hoare triple {1424#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1424#true} is VALID [2022-04-07 20:42:03,002 INFO L290 TraceCheckUtils]: 8: Hoare triple {1424#true} [85] L10-->L10-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[] {1424#true} is VALID [2022-04-07 20:42:03,002 INFO L290 TraceCheckUtils]: 7: Hoare triple {1424#true} [82] assume_abort_if_notENTRY-->L10: 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] {1424#true} is VALID [2022-04-07 20:42:03,002 INFO L272 TraceCheckUtils]: 6: Hoare triple {1424#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {1424#true} is VALID [2022-04-07 20:42:03,003 INFO L290 TraceCheckUtils]: 5: Hoare triple {1424#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |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_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1424#true} is VALID [2022-04-07 20:42:03,003 INFO L272 TraceCheckUtils]: 4: Hoare triple {1424#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1424#true} is VALID [2022-04-07 20:42:03,003 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1424#true} {1424#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1424#true} is VALID [2022-04-07 20:42:03,003 INFO L290 TraceCheckUtils]: 2: Hoare triple {1424#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1424#true} is VALID [2022-04-07 20:42:03,003 INFO L290 TraceCheckUtils]: 1: Hoare triple {1424#true} [76] 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_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (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] {1424#true} is VALID [2022-04-07 20:42:03,003 INFO L272 TraceCheckUtils]: 0: Hoare triple {1424#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1424#true} is VALID [2022-04-07 20:42:03,003 INFO L134 CoverageAnalysis]: Checked inductivity of 29 backedges. 16 proven. 3 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2022-04-07 20:42:03,003 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 20:42:03,003 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1149481748] [2022-04-07 20:42:03,003 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 20:42:03,003 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1920118963] [2022-04-07 20:42:03,003 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1920118963] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 20:42:03,003 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 20:42:03,004 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 15 [2022-04-07 20:42:03,004 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [580662262] [2022-04-07 20:42:03,004 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 20:42:03,004 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 2.4) internal successors, (36), 13 states have internal predecessors, (36), 8 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 7 states have call predecessors, (10), 7 states have call successors, (10) Word has length 46 [2022-04-07 20:42:03,004 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 20:42:03,005 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 2.4) internal successors, (36), 13 states have internal predecessors, (36), 8 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 7 states have call predecessors, (10), 7 states have call successors, (10) [2022-04-07 20:42:03,048 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 57 edges. 57 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 20:42:03,049 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-07 20:42:03,049 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 20:42:03,049 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-07 20:42:03,049 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=49, Invalid=161, Unknown=0, NotChecked=0, Total=210 [2022-04-07 20:42:03,049 INFO L87 Difference]: Start difference. First operand 50 states and 57 transitions. Second operand has 15 states, 15 states have (on average 2.4) internal successors, (36), 13 states have internal predecessors, (36), 8 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 7 states have call predecessors, (10), 7 states have call successors, (10) [2022-04-07 20:42:03,443 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:42:03,443 INFO L93 Difference]: Finished difference Result 49 states and 54 transitions. [2022-04-07 20:42:03,443 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-07 20:42:03,444 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 2.4) internal successors, (36), 13 states have internal predecessors, (36), 8 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 7 states have call predecessors, (10), 7 states have call successors, (10) Word has length 46 [2022-04-07 20:42:03,444 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 20:42:03,444 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 2.4) internal successors, (36), 13 states have internal predecessors, (36), 8 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 7 states have call predecessors, (10), 7 states have call successors, (10) [2022-04-07 20:42:03,448 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 39 transitions. [2022-04-07 20:42:03,448 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 2.4) internal successors, (36), 13 states have internal predecessors, (36), 8 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 7 states have call predecessors, (10), 7 states have call successors, (10) [2022-04-07 20:42:03,449 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 39 transitions. [2022-04-07 20:42:03,449 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 39 transitions. [2022-04-07 20:42:03,472 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 20:42:03,473 INFO L225 Difference]: With dead ends: 49 [2022-04-07 20:42:03,473 INFO L226 Difference]: Without dead ends: 49 [2022-04-07 20:42:03,473 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 96 GetRequests, 78 SyntacticMatches, 0 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 43 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=93, Invalid=287, Unknown=0, NotChecked=0, Total=380 [2022-04-07 20:42:03,474 INFO L913 BasicCegarLoop]: 24 mSDtfsCounter, 24 mSDsluCounter, 95 mSDsCounter, 0 mSdLazyCounter, 101 mSolverCounterSat, 25 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 24 SdHoareTripleChecker+Valid, 119 SdHoareTripleChecker+Invalid, 126 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 25 IncrementalHoareTripleChecker+Valid, 101 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-07 20:42:03,474 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [24 Valid, 119 Invalid, 126 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [25 Valid, 101 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-07 20:42:03,474 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 49 states. [2022-04-07 20:42:03,476 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 49 to 47. [2022-04-07 20:42:03,476 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 20:42:03,476 INFO L82 GeneralOperation]: Start isEquivalent. First operand 49 states. Second operand has 47 states, 31 states have (on average 1.096774193548387) internal successors, (34), 33 states have internal predecessors, (34), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-07 20:42:03,477 INFO L74 IsIncluded]: Start isIncluded. First operand 49 states. Second operand has 47 states, 31 states have (on average 1.096774193548387) internal successors, (34), 33 states have internal predecessors, (34), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-07 20:42:03,477 INFO L87 Difference]: Start difference. First operand 49 states. Second operand has 47 states, 31 states have (on average 1.096774193548387) internal successors, (34), 33 states have internal predecessors, (34), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-07 20:42:03,478 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:42:03,478 INFO L93 Difference]: Finished difference Result 49 states and 54 transitions. [2022-04-07 20:42:03,478 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 54 transitions. [2022-04-07 20:42:03,478 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:42:03,478 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:42:03,478 INFO L74 IsIncluded]: Start isIncluded. First operand has 47 states, 31 states have (on average 1.096774193548387) internal successors, (34), 33 states have internal predecessors, (34), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 49 states. [2022-04-07 20:42:03,478 INFO L87 Difference]: Start difference. First operand has 47 states, 31 states have (on average 1.096774193548387) internal successors, (34), 33 states have internal predecessors, (34), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 49 states. [2022-04-07 20:42:03,480 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:42:03,480 INFO L93 Difference]: Finished difference Result 49 states and 54 transitions. [2022-04-07 20:42:03,480 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 54 transitions. [2022-04-07 20:42:03,480 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:42:03,480 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:42:03,480 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 20:42:03,480 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 20:42:03,480 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 47 states, 31 states have (on average 1.096774193548387) internal successors, (34), 33 states have internal predecessors, (34), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-07 20:42:03,481 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 52 transitions. [2022-04-07 20:42:03,481 INFO L78 Accepts]: Start accepts. Automaton has 47 states and 52 transitions. Word has length 46 [2022-04-07 20:42:03,481 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 20:42:03,481 INFO L478 AbstractCegarLoop]: Abstraction has 47 states and 52 transitions. [2022-04-07 20:42:03,481 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 2.4) internal successors, (36), 13 states have internal predecessors, (36), 8 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (10), 7 states have call predecessors, (10), 7 states have call successors, (10) [2022-04-07 20:42:03,481 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 52 transitions. [2022-04-07 20:42:03,482 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 53 [2022-04-07 20:42:03,482 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 20:42:03,482 INFO L499 BasicCegarLoop]: trace histogram [4, 3, 3, 3, 3, 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] [2022-04-07 20:42:03,501 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 20:42:03,698 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 20:42:03,698 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 20:42:03,698 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 20:42:03,699 INFO L85 PathProgramCache]: Analyzing trace with hash -1158992049, now seen corresponding path program 1 times [2022-04-07 20:42:03,699 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 20:42:03,699 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [246620087] [2022-04-07 20:42:03,699 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:42:03,699 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 20:42:03,710 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 20:42:03,711 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [409815495] [2022-04-07 20:42:03,711 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:42:03,711 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 20:42:03,711 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 20:42:03,712 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 20:42:03,712 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 20:42:03,743 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:42:03,743 INFO L263 TraceCheckSpWp]: Trace formula consists of 138 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-07 20:42:03,751 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:42:03,751 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 20:42:13,890 INFO L272 TraceCheckUtils]: 0: Hoare triple {1918#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1918#true} is VALID [2022-04-07 20:42:13,891 INFO L290 TraceCheckUtils]: 1: Hoare triple {1918#true} [76] 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_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (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] {1918#true} is VALID [2022-04-07 20:42:13,891 INFO L290 TraceCheckUtils]: 2: Hoare triple {1918#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1918#true} is VALID [2022-04-07 20:42:13,891 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1918#true} {1918#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1918#true} is VALID [2022-04-07 20:42:13,891 INFO L272 TraceCheckUtils]: 4: Hoare triple {1918#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1918#true} is VALID [2022-04-07 20:42:13,891 INFO L290 TraceCheckUtils]: 5: Hoare triple {1918#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |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_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1918#true} is VALID [2022-04-07 20:42:13,891 INFO L272 TraceCheckUtils]: 6: Hoare triple {1918#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {1918#true} is VALID [2022-04-07 20:42:13,891 INFO L290 TraceCheckUtils]: 7: Hoare triple {1918#true} [82] assume_abort_if_notENTRY-->L10: 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] {1918#true} is VALID [2022-04-07 20:42:13,891 INFO L290 TraceCheckUtils]: 8: Hoare triple {1918#true} [85] L10-->L10-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[] {1918#true} is VALID [2022-04-07 20:42:13,891 INFO L290 TraceCheckUtils]: 9: Hoare triple {1918#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1918#true} is VALID [2022-04-07 20:42:13,891 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1918#true} {1918#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {1918#true} is VALID [2022-04-07 20:42:13,891 INFO L290 TraceCheckUtils]: 11: Hoare triple {1918#true} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {1918#true} is VALID [2022-04-07 20:42:13,891 INFO L272 TraceCheckUtils]: 12: Hoare triple {1918#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1918#true} is VALID [2022-04-07 20:42:13,892 INFO L290 TraceCheckUtils]: 13: Hoare triple {1918#true} [82] assume_abort_if_notENTRY-->L10: 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] {1918#true} is VALID [2022-04-07 20:42:13,892 INFO L290 TraceCheckUtils]: 14: Hoare triple {1918#true} [85] L10-->L10-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[] {1918#true} is VALID [2022-04-07 20:42:13,892 INFO L290 TraceCheckUtils]: 15: Hoare triple {1918#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1918#true} is VALID [2022-04-07 20:42:13,892 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1918#true} {1918#true} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1918#true} is VALID [2022-04-07 20:42:13,892 INFO L272 TraceCheckUtils]: 17: Hoare triple {1918#true} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1918#true} is VALID [2022-04-07 20:42:13,892 INFO L290 TraceCheckUtils]: 18: Hoare triple {1918#true} [82] assume_abort_if_notENTRY-->L10: 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] {1918#true} is VALID [2022-04-07 20:42:13,892 INFO L290 TraceCheckUtils]: 19: Hoare triple {1918#true} [85] L10-->L10-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[] {1918#true} is VALID [2022-04-07 20:42:13,892 INFO L290 TraceCheckUtils]: 20: Hoare triple {1918#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1918#true} is VALID [2022-04-07 20:42:13,892 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1918#true} {1918#true} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1918#true} is VALID [2022-04-07 20:42:13,892 INFO L290 TraceCheckUtils]: 22: Hoare triple {1918#true} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {1918#true} is VALID [2022-04-07 20:42:13,892 INFO L290 TraceCheckUtils]: 23: Hoare triple {1918#true} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1918#true} is VALID [2022-04-07 20:42:13,892 INFO L272 TraceCheckUtils]: 24: Hoare triple {1918#true} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1918#true} is VALID [2022-04-07 20:42:13,892 INFO L290 TraceCheckUtils]: 25: Hoare triple {1918#true} [95] __VERIFIER_assertENTRY-->L13: 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] {1918#true} is VALID [2022-04-07 20:42:13,892 INFO L290 TraceCheckUtils]: 26: Hoare triple {1918#true} [100] L13-->L13-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[] {1918#true} is VALID [2022-04-07 20:42:13,893 INFO L290 TraceCheckUtils]: 27: Hoare triple {1918#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1918#true} is VALID [2022-04-07 20:42:13,893 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1918#true} {1918#true} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1918#true} is VALID [2022-04-07 20:42:13,893 INFO L290 TraceCheckUtils]: 29: Hoare triple {1918#true} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {1918#true} is VALID [2022-04-07 20:42:13,893 INFO L290 TraceCheckUtils]: 30: Hoare triple {1918#true} [102] L39-->L39-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_3} OutVars{main_~y~0=v_main_~y~0_3} AuxVars[] AssignedVars[] {1918#true} is VALID [2022-04-07 20:42:13,893 INFO L290 TraceCheckUtils]: 31: Hoare triple {1918#true} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {1918#true} is VALID [2022-04-07 20:42:13,893 INFO L290 TraceCheckUtils]: 32: Hoare triple {1918#true} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1918#true} is VALID [2022-04-07 20:42:13,893 INFO L272 TraceCheckUtils]: 33: Hoare triple {1918#true} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1918#true} is VALID [2022-04-07 20:42:13,893 INFO L290 TraceCheckUtils]: 34: Hoare triple {1918#true} [95] __VERIFIER_assertENTRY-->L13: 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] {1918#true} is VALID [2022-04-07 20:42:13,893 INFO L290 TraceCheckUtils]: 35: Hoare triple {1918#true} [100] L13-->L13-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[] {1918#true} is VALID [2022-04-07 20:42:13,893 INFO L290 TraceCheckUtils]: 36: Hoare triple {1918#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1918#true} is VALID [2022-04-07 20:42:13,893 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {1918#true} {1918#true} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1918#true} is VALID [2022-04-07 20:42:13,893 INFO L290 TraceCheckUtils]: 38: Hoare triple {1918#true} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {1918#true} is VALID [2022-04-07 20:42:13,893 INFO L290 TraceCheckUtils]: 39: Hoare triple {1918#true} [101] L39-->L39-2: Formula: (and (= v_main_~y~0_1 (+ (- 1) v_main_~y~0_2)) (= v_main_~z~0_1 (+ v_main_~x~0_1 v_main_~z~0_2)) (= (let ((.cse0 (mod v_main_~y~0_2 2))) (ite (and (< v_main_~y~0_2 0) (not (= .cse0 0))) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_2, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_2} OutVars{main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_1} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {1918#true} is VALID [2022-04-07 20:42:13,894 INFO L290 TraceCheckUtils]: 40: Hoare triple {1918#true} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {1918#true} is VALID [2022-04-07 20:42:13,894 INFO L290 TraceCheckUtils]: 41: Hoare triple {1918#true} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1918#true} is VALID [2022-04-07 20:42:13,894 INFO L272 TraceCheckUtils]: 42: Hoare triple {1918#true} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1918#true} is VALID [2022-04-07 20:42:13,898 INFO L290 TraceCheckUtils]: 43: Hoare triple {1918#true} [95] __VERIFIER_assertENTRY-->L13: 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] {2052#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-07 20:42:13,898 INFO L290 TraceCheckUtils]: 44: Hoare triple {2052#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [100] L13-->L13-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[] {2056#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 20:42:13,899 INFO L290 TraceCheckUtils]: 45: Hoare triple {2056#(not (= |__VERIFIER_assert_#in~cond| 0))} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2056#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 20:42:15,900 WARN L284 TraceCheckUtils]: 46: Hoare quadruple {2056#(not (= |__VERIFIER_assert_#in~cond| 0))} {1918#true} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2063#(or (and (not (= main_~y~0 0)) (= (mod (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) main_~y~0) 0)) (= (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 0))} is UNKNOWN [2022-04-07 20:42:15,901 INFO L290 TraceCheckUtils]: 47: Hoare triple {2063#(or (and (not (= main_~y~0 0)) (= (mod (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) main_~y~0) 0)) (= (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 0))} [96] L35-1-->L34-3: Formula: (= v_main_~y~0_9 0) InVars {main_~y~0=v_main_~y~0_9} OutVars{main_~y~0=v_main_~y~0_9} AuxVars[] AssignedVars[] {2067#(= main_~z~0 (* main_~b~0 main_~a~0))} is VALID [2022-04-07 20:42:15,901 INFO L272 TraceCheckUtils]: 48: Hoare triple {2067#(= main_~z~0 (* main_~b~0 main_~a~0))} [92] L34-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_10 v_main_~b~0_11)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_11, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~z~0, main_~b~0, main_~a~0] {2071#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 20:42:15,915 INFO L290 TraceCheckUtils]: 49: Hoare triple {2071#(<= 1 |__VERIFIER_assert_#in~cond|)} [95] __VERIFIER_assertENTRY-->L13: 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] {2075#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 20:42:15,916 INFO L290 TraceCheckUtils]: 50: Hoare triple {2075#(<= 1 __VERIFIER_assert_~cond)} [99] L13-->L14: 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[] {1919#false} is VALID [2022-04-07 20:42:15,916 INFO L290 TraceCheckUtils]: 51: Hoare triple {1919#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1919#false} is VALID [2022-04-07 20:42:15,916 INFO L134 CoverageAnalysis]: Checked inductivity of 41 backedges. 13 proven. 1 refuted. 0 times theorem prover too weak. 27 trivial. 0 not checked. [2022-04-07 20:42:15,916 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 20:42:24,179 INFO L290 TraceCheckUtils]: 51: Hoare triple {1919#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1919#false} is VALID [2022-04-07 20:42:24,179 INFO L290 TraceCheckUtils]: 50: Hoare triple {2075#(<= 1 __VERIFIER_assert_~cond)} [99] L13-->L14: 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[] {1919#false} is VALID [2022-04-07 20:42:24,179 INFO L290 TraceCheckUtils]: 49: Hoare triple {2071#(<= 1 |__VERIFIER_assert_#in~cond|)} [95] __VERIFIER_assertENTRY-->L13: 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] {2075#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 20:42:24,180 INFO L272 TraceCheckUtils]: 48: Hoare triple {2067#(= main_~z~0 (* main_~b~0 main_~a~0))} [92] L34-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_10 v_main_~b~0_11)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_11, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~z~0, main_~b~0, main_~a~0] {2071#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 20:42:24,180 INFO L290 TraceCheckUtils]: 47: Hoare triple {2094#(or (not (= main_~y~0 0)) (= main_~z~0 (* main_~b~0 main_~a~0)))} [96] L35-1-->L34-3: Formula: (= v_main_~y~0_9 0) InVars {main_~y~0=v_main_~y~0_9} OutVars{main_~y~0=v_main_~y~0_9} AuxVars[] AssignedVars[] {2067#(= main_~z~0 (* main_~b~0 main_~a~0))} is VALID [2022-04-07 20:42:24,181 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {2056#(not (= |__VERIFIER_assert_#in~cond| 0))} {1918#true} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2094#(or (not (= main_~y~0 0)) (= main_~z~0 (* main_~b~0 main_~a~0)))} is VALID [2022-04-07 20:42:24,181 INFO L290 TraceCheckUtils]: 45: Hoare triple {2056#(not (= |__VERIFIER_assert_#in~cond| 0))} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2056#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 20:42:24,182 INFO L290 TraceCheckUtils]: 44: Hoare triple {2107#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [100] L13-->L13-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[] {2056#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 20:42:24,182 INFO L290 TraceCheckUtils]: 43: Hoare triple {1918#true} [95] __VERIFIER_assertENTRY-->L13: 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] {2107#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-07 20:42:24,182 INFO L272 TraceCheckUtils]: 42: Hoare triple {1918#true} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1918#true} is VALID [2022-04-07 20:42:24,182 INFO L290 TraceCheckUtils]: 41: Hoare triple {1918#true} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1918#true} is VALID [2022-04-07 20:42:24,182 INFO L290 TraceCheckUtils]: 40: Hoare triple {1918#true} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {1918#true} is VALID [2022-04-07 20:42:24,182 INFO L290 TraceCheckUtils]: 39: Hoare triple {1918#true} [101] L39-->L39-2: Formula: (and (= v_main_~y~0_1 (+ (- 1) v_main_~y~0_2)) (= v_main_~z~0_1 (+ v_main_~x~0_1 v_main_~z~0_2)) (= (let ((.cse0 (mod v_main_~y~0_2 2))) (ite (and (< v_main_~y~0_2 0) (not (= .cse0 0))) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_2, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_2} OutVars{main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_1} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {1918#true} is VALID [2022-04-07 20:42:24,182 INFO L290 TraceCheckUtils]: 38: Hoare triple {1918#true} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {1918#true} is VALID [2022-04-07 20:42:24,182 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {1918#true} {1918#true} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1918#true} is VALID [2022-04-07 20:42:24,183 INFO L290 TraceCheckUtils]: 36: Hoare triple {1918#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1918#true} is VALID [2022-04-07 20:42:24,183 INFO L290 TraceCheckUtils]: 35: Hoare triple {1918#true} [100] L13-->L13-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[] {1918#true} is VALID [2022-04-07 20:42:24,183 INFO L290 TraceCheckUtils]: 34: Hoare triple {1918#true} [95] __VERIFIER_assertENTRY-->L13: 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] {1918#true} is VALID [2022-04-07 20:42:24,183 INFO L272 TraceCheckUtils]: 33: Hoare triple {1918#true} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1918#true} is VALID [2022-04-07 20:42:24,183 INFO L290 TraceCheckUtils]: 32: Hoare triple {1918#true} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1918#true} is VALID [2022-04-07 20:42:24,183 INFO L290 TraceCheckUtils]: 31: Hoare triple {1918#true} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {1918#true} is VALID [2022-04-07 20:42:24,183 INFO L290 TraceCheckUtils]: 30: Hoare triple {1918#true} [102] L39-->L39-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_3} OutVars{main_~y~0=v_main_~y~0_3} AuxVars[] AssignedVars[] {1918#true} is VALID [2022-04-07 20:42:24,183 INFO L290 TraceCheckUtils]: 29: Hoare triple {1918#true} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {1918#true} is VALID [2022-04-07 20:42:24,183 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1918#true} {1918#true} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1918#true} is VALID [2022-04-07 20:42:24,183 INFO L290 TraceCheckUtils]: 27: Hoare triple {1918#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1918#true} is VALID [2022-04-07 20:42:24,183 INFO L290 TraceCheckUtils]: 26: Hoare triple {1918#true} [100] L13-->L13-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[] {1918#true} is VALID [2022-04-07 20:42:24,183 INFO L290 TraceCheckUtils]: 25: Hoare triple {1918#true} [95] __VERIFIER_assertENTRY-->L13: 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] {1918#true} is VALID [2022-04-07 20:42:24,183 INFO L272 TraceCheckUtils]: 24: Hoare triple {1918#true} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1918#true} is VALID [2022-04-07 20:42:24,183 INFO L290 TraceCheckUtils]: 23: Hoare triple {1918#true} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1918#true} is VALID [2022-04-07 20:42:24,183 INFO L290 TraceCheckUtils]: 22: Hoare triple {1918#true} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {1918#true} is VALID [2022-04-07 20:42:24,183 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1918#true} {1918#true} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1918#true} is VALID [2022-04-07 20:42:24,184 INFO L290 TraceCheckUtils]: 20: Hoare triple {1918#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1918#true} is VALID [2022-04-07 20:42:24,184 INFO L290 TraceCheckUtils]: 19: Hoare triple {1918#true} [85] L10-->L10-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[] {1918#true} is VALID [2022-04-07 20:42:24,184 INFO L290 TraceCheckUtils]: 18: Hoare triple {1918#true} [82] assume_abort_if_notENTRY-->L10: 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] {1918#true} is VALID [2022-04-07 20:42:24,184 INFO L272 TraceCheckUtils]: 17: Hoare triple {1918#true} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1918#true} is VALID [2022-04-07 20:42:24,184 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1918#true} {1918#true} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1918#true} is VALID [2022-04-07 20:42:24,184 INFO L290 TraceCheckUtils]: 15: Hoare triple {1918#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1918#true} is VALID [2022-04-07 20:42:24,184 INFO L290 TraceCheckUtils]: 14: Hoare triple {1918#true} [85] L10-->L10-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[] {1918#true} is VALID [2022-04-07 20:42:24,184 INFO L290 TraceCheckUtils]: 13: Hoare triple {1918#true} [82] assume_abort_if_notENTRY-->L10: 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] {1918#true} is VALID [2022-04-07 20:42:24,184 INFO L272 TraceCheckUtils]: 12: Hoare triple {1918#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1918#true} is VALID [2022-04-07 20:42:24,184 INFO L290 TraceCheckUtils]: 11: Hoare triple {1918#true} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {1918#true} is VALID [2022-04-07 20:42:24,184 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1918#true} {1918#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {1918#true} is VALID [2022-04-07 20:42:24,184 INFO L290 TraceCheckUtils]: 9: Hoare triple {1918#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1918#true} is VALID [2022-04-07 20:42:24,184 INFO L290 TraceCheckUtils]: 8: Hoare triple {1918#true} [85] L10-->L10-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[] {1918#true} is VALID [2022-04-07 20:42:24,184 INFO L290 TraceCheckUtils]: 7: Hoare triple {1918#true} [82] assume_abort_if_notENTRY-->L10: 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] {1918#true} is VALID [2022-04-07 20:42:24,184 INFO L272 TraceCheckUtils]: 6: Hoare triple {1918#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {1918#true} is VALID [2022-04-07 20:42:24,185 INFO L290 TraceCheckUtils]: 5: Hoare triple {1918#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |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_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1918#true} is VALID [2022-04-07 20:42:24,185 INFO L272 TraceCheckUtils]: 4: Hoare triple {1918#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1918#true} is VALID [2022-04-07 20:42:24,185 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1918#true} {1918#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1918#true} is VALID [2022-04-07 20:42:24,185 INFO L290 TraceCheckUtils]: 2: Hoare triple {1918#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1918#true} is VALID [2022-04-07 20:42:24,185 INFO L290 TraceCheckUtils]: 1: Hoare triple {1918#true} [76] 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_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (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] {1918#true} is VALID [2022-04-07 20:42:24,185 INFO L272 TraceCheckUtils]: 0: Hoare triple {1918#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1918#true} is VALID [2022-04-07 20:42:24,185 INFO L134 CoverageAnalysis]: Checked inductivity of 41 backedges. 13 proven. 1 refuted. 0 times theorem prover too weak. 27 trivial. 0 not checked. [2022-04-07 20:42:24,185 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 20:42:24,185 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [246620087] [2022-04-07 20:42:24,185 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 20:42:24,185 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [409815495] [2022-04-07 20:42:24,185 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [409815495] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 20:42:24,185 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 20:42:24,185 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-07 20:42:24,185 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [796977806] [2022-04-07 20:42:24,186 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 20:42:24,186 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.888888888888889) internal successors, (26), 7 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) Word has length 52 [2022-04-07 20:42:24,186 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 20:42:24,186 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.888888888888889) internal successors, (26), 7 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-07 20:42:26,211 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 39 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-07 20:42:26,211 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-07 20:42:26,212 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 20:42:26,212 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-07 20:42:26,212 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=66, Unknown=0, NotChecked=0, Total=90 [2022-04-07 20:42:26,212 INFO L87 Difference]: Start difference. First operand 47 states and 52 transitions. Second operand has 10 states, 9 states have (on average 2.888888888888889) internal successors, (26), 7 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-07 20:42:28,270 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-07 20:42:28,906 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:42:28,906 INFO L93 Difference]: Finished difference Result 51 states and 55 transitions. [2022-04-07 20:42:28,906 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-07 20:42:28,906 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.888888888888889) internal successors, (26), 7 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) Word has length 52 [2022-04-07 20:42:28,906 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 20:42:28,906 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.888888888888889) internal successors, (26), 7 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-07 20:42:28,907 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 36 transitions. [2022-04-07 20:42:28,907 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.888888888888889) internal successors, (26), 7 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-07 20:42:28,908 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 36 transitions. [2022-04-07 20:42:28,908 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 36 transitions. [2022-04-07 20:42:30,932 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 35 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-07 20:42:30,933 INFO L225 Difference]: With dead ends: 51 [2022-04-07 20:42:30,933 INFO L226 Difference]: Without dead ends: 46 [2022-04-07 20:42:30,934 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 105 GetRequests, 94 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=37, Invalid=95, Unknown=0, NotChecked=0, Total=132 [2022-04-07 20:42:30,934 INFO L913 BasicCegarLoop]: 24 mSDtfsCounter, 13 mSDsluCounter, 91 mSDsCounter, 0 mSdLazyCounter, 67 mSolverCounterSat, 2 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 13 SdHoareTripleChecker+Valid, 115 SdHoareTripleChecker+Invalid, 70 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 67 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.3s IncrementalHoareTripleChecker+Time [2022-04-07 20:42:30,934 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [13 Valid, 115 Invalid, 70 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 67 Invalid, 1 Unknown, 0 Unchecked, 2.3s Time] [2022-04-07 20:42:30,934 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 46 states. [2022-04-07 20:42:30,936 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 46 to 46. [2022-04-07 20:42:30,936 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 20:42:30,936 INFO L82 GeneralOperation]: Start isEquivalent. First operand 46 states. Second operand has 46 states, 31 states have (on average 1.064516129032258) internal successors, (33), 32 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-07 20:42:30,937 INFO L74 IsIncluded]: Start isIncluded. First operand 46 states. Second operand has 46 states, 31 states have (on average 1.064516129032258) internal successors, (33), 32 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-07 20:42:30,937 INFO L87 Difference]: Start difference. First operand 46 states. Second operand has 46 states, 31 states have (on average 1.064516129032258) internal successors, (33), 32 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-07 20:42:30,938 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:42:30,938 INFO L93 Difference]: Finished difference Result 46 states and 50 transitions. [2022-04-07 20:42:30,938 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 50 transitions. [2022-04-07 20:42:30,938 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:42:30,938 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:42:30,938 INFO L74 IsIncluded]: Start isIncluded. First operand has 46 states, 31 states have (on average 1.064516129032258) internal successors, (33), 32 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 46 states. [2022-04-07 20:42:30,938 INFO L87 Difference]: Start difference. First operand has 46 states, 31 states have (on average 1.064516129032258) internal successors, (33), 32 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 46 states. [2022-04-07 20:42:30,939 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:42:30,939 INFO L93 Difference]: Finished difference Result 46 states and 50 transitions. [2022-04-07 20:42:30,940 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 50 transitions. [2022-04-07 20:42:30,940 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:42:30,940 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:42:30,940 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 20:42:30,940 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 20:42:30,940 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 46 states, 31 states have (on average 1.064516129032258) internal successors, (33), 32 states have internal predecessors, (33), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-07 20:42:30,941 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 46 states to 46 states and 50 transitions. [2022-04-07 20:42:30,941 INFO L78 Accepts]: Start accepts. Automaton has 46 states and 50 transitions. Word has length 52 [2022-04-07 20:42:30,941 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 20:42:30,941 INFO L478 AbstractCegarLoop]: Abstraction has 46 states and 50 transitions. [2022-04-07 20:42:30,941 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.888888888888889) internal successors, (26), 7 states have internal predecessors, (26), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-07 20:42:30,941 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 50 transitions. [2022-04-07 20:42:30,942 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-07 20:42:30,942 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 20:42:30,942 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 20:42:30,960 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 20:42:31,144 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 20:42:31,144 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 20:42:31,145 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 20:42:31,145 INFO L85 PathProgramCache]: Analyzing trace with hash 2045202388, now seen corresponding path program 1 times [2022-04-07 20:42:31,145 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 20:42:31,145 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [676138832] [2022-04-07 20:42:31,145 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:42:31,145 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 20:42:31,165 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 20:42:31,165 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1663769992] [2022-04-07 20:42:31,165 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:42:31,165 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 20:42:31,165 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 20:42:31,168 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 20:42:31,169 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-07 20:42:31,205 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:42:31,206 INFO L263 TraceCheckSpWp]: Trace formula consists of 143 conjuncts, 20 conjunts are in the unsatisfiable core [2022-04-07 20:42:31,213 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:42:31,215 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 20:42:31,981 INFO L272 TraceCheckUtils]: 0: Hoare triple {2432#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2432#true} is VALID [2022-04-07 20:42:31,981 INFO L290 TraceCheckUtils]: 1: Hoare triple {2432#true} [76] 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_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (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] {2432#true} is VALID [2022-04-07 20:42:31,981 INFO L290 TraceCheckUtils]: 2: Hoare triple {2432#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2432#true} is VALID [2022-04-07 20:42:31,981 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2432#true} {2432#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2432#true} is VALID [2022-04-07 20:42:31,981 INFO L272 TraceCheckUtils]: 4: Hoare triple {2432#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2432#true} is VALID [2022-04-07 20:42:31,981 INFO L290 TraceCheckUtils]: 5: Hoare triple {2432#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |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_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2432#true} is VALID [2022-04-07 20:42:31,982 INFO L272 TraceCheckUtils]: 6: Hoare triple {2432#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {2432#true} is VALID [2022-04-07 20:42:31,982 INFO L290 TraceCheckUtils]: 7: Hoare triple {2432#true} [82] assume_abort_if_notENTRY-->L10: 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] {2432#true} is VALID [2022-04-07 20:42:31,982 INFO L290 TraceCheckUtils]: 8: Hoare triple {2432#true} [85] L10-->L10-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[] {2432#true} is VALID [2022-04-07 20:42:31,982 INFO L290 TraceCheckUtils]: 9: Hoare triple {2432#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2432#true} is VALID [2022-04-07 20:42:31,982 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2432#true} {2432#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {2432#true} is VALID [2022-04-07 20:42:31,982 INFO L290 TraceCheckUtils]: 11: Hoare triple {2432#true} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {2432#true} is VALID [2022-04-07 20:42:31,982 INFO L272 TraceCheckUtils]: 12: Hoare triple {2432#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2432#true} is VALID [2022-04-07 20:42:31,982 INFO L290 TraceCheckUtils]: 13: Hoare triple {2432#true} [82] assume_abort_if_notENTRY-->L10: 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] {2476#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 20:42:31,982 INFO L290 TraceCheckUtils]: 14: Hoare triple {2476#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [85] L10-->L10-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[] {2480#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 20:42:31,983 INFO L290 TraceCheckUtils]: 15: Hoare triple {2480#(not (= |assume_abort_if_not_#in~cond| 0))} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2480#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 20:42:31,983 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2480#(not (= |assume_abort_if_not_#in~cond| 0))} {2432#true} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2487#(and (<= main_~b~0 2) (<= 0 main_~b~0))} is VALID [2022-04-07 20:42:31,983 INFO L272 TraceCheckUtils]: 17: Hoare triple {2487#(and (<= main_~b~0 2) (<= 0 main_~b~0))} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2432#true} is VALID [2022-04-07 20:42:31,984 INFO L290 TraceCheckUtils]: 18: Hoare triple {2432#true} [82] assume_abort_if_notENTRY-->L10: 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] {2476#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 20:42:31,984 INFO L290 TraceCheckUtils]: 19: Hoare triple {2476#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [85] L10-->L10-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[] {2480#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 20:42:31,984 INFO L290 TraceCheckUtils]: 20: Hoare triple {2480#(not (= |assume_abort_if_not_#in~cond| 0))} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2480#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 20:42:31,984 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2480#(not (= |assume_abort_if_not_#in~cond| 0))} {2487#(and (<= main_~b~0 2) (<= 0 main_~b~0))} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2503#(and (<= main_~b~0 2) (<= 1 main_~b~0))} is VALID [2022-04-07 20:42:31,985 INFO L290 TraceCheckUtils]: 22: Hoare triple {2503#(and (<= main_~b~0 2) (<= 1 main_~b~0))} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {2507#(and (<= main_~y~0 2) (<= 1 main_~y~0))} is VALID [2022-04-07 20:42:31,985 INFO L290 TraceCheckUtils]: 23: Hoare triple {2507#(and (<= main_~y~0 2) (<= 1 main_~y~0))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2507#(and (<= main_~y~0 2) (<= 1 main_~y~0))} is VALID [2022-04-07 20:42:31,985 INFO L272 TraceCheckUtils]: 24: Hoare triple {2507#(and (<= main_~y~0 2) (<= 1 main_~y~0))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2432#true} is VALID [2022-04-07 20:42:31,985 INFO L290 TraceCheckUtils]: 25: Hoare triple {2432#true} [95] __VERIFIER_assertENTRY-->L13: 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] {2432#true} is VALID [2022-04-07 20:42:31,985 INFO L290 TraceCheckUtils]: 26: Hoare triple {2432#true} [100] L13-->L13-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[] {2432#true} is VALID [2022-04-07 20:42:31,985 INFO L290 TraceCheckUtils]: 27: Hoare triple {2432#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2432#true} is VALID [2022-04-07 20:42:31,986 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2432#true} {2507#(and (<= main_~y~0 2) (<= 1 main_~y~0))} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2507#(and (<= main_~y~0 2) (<= 1 main_~y~0))} is VALID [2022-04-07 20:42:31,986 INFO L290 TraceCheckUtils]: 29: Hoare triple {2507#(and (<= main_~y~0 2) (<= 1 main_~y~0))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {2507#(and (<= main_~y~0 2) (<= 1 main_~y~0))} is VALID [2022-04-07 20:42:31,986 INFO L290 TraceCheckUtils]: 30: Hoare triple {2507#(and (<= main_~y~0 2) (<= 1 main_~y~0))} [102] L39-->L39-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_3} OutVars{main_~y~0=v_main_~y~0_3} AuxVars[] AssignedVars[] {2507#(and (<= main_~y~0 2) (<= 1 main_~y~0))} is VALID [2022-04-07 20:42:31,987 INFO L290 TraceCheckUtils]: 31: Hoare triple {2507#(and (<= main_~y~0 2) (<= 1 main_~y~0))} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {2535#(<= main_~y~0 1)} is VALID [2022-04-07 20:42:31,987 INFO L290 TraceCheckUtils]: 32: Hoare triple {2535#(<= main_~y~0 1)} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2535#(<= main_~y~0 1)} is VALID [2022-04-07 20:42:31,987 INFO L272 TraceCheckUtils]: 33: Hoare triple {2535#(<= main_~y~0 1)} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2432#true} is VALID [2022-04-07 20:42:31,987 INFO L290 TraceCheckUtils]: 34: Hoare triple {2432#true} [95] __VERIFIER_assertENTRY-->L13: 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] {2432#true} is VALID [2022-04-07 20:42:31,988 INFO L290 TraceCheckUtils]: 35: Hoare triple {2432#true} [100] L13-->L13-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[] {2432#true} is VALID [2022-04-07 20:42:31,988 INFO L290 TraceCheckUtils]: 36: Hoare triple {2432#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2432#true} is VALID [2022-04-07 20:42:31,988 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2432#true} {2535#(<= main_~y~0 1)} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2535#(<= main_~y~0 1)} is VALID [2022-04-07 20:42:31,988 INFO L290 TraceCheckUtils]: 38: Hoare triple {2535#(<= main_~y~0 1)} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {2557#(and (not (= main_~y~0 0)) (<= main_~y~0 1))} is VALID [2022-04-07 20:42:31,989 INFO L290 TraceCheckUtils]: 39: Hoare triple {2557#(and (not (= main_~y~0 0)) (<= main_~y~0 1))} [101] L39-->L39-2: Formula: (and (= v_main_~y~0_1 (+ (- 1) v_main_~y~0_2)) (= v_main_~z~0_1 (+ v_main_~x~0_1 v_main_~z~0_2)) (= (let ((.cse0 (mod v_main_~y~0_2 2))) (ite (and (< v_main_~y~0_2 0) (not (= .cse0 0))) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_2, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_2} OutVars{main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_1} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {2561#(and (not (= (+ main_~y~0 1) 0)) (<= main_~y~0 0) (<= 0 (+ main_~y~0 1)))} is VALID [2022-04-07 20:42:31,990 INFO L290 TraceCheckUtils]: 40: Hoare triple {2561#(and (not (= (+ main_~y~0 1) 0)) (<= main_~y~0 0) (<= 0 (+ main_~y~0 1)))} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {2561#(and (not (= (+ main_~y~0 1) 0)) (<= main_~y~0 0) (<= 0 (+ main_~y~0 1)))} is VALID [2022-04-07 20:42:31,990 INFO L290 TraceCheckUtils]: 41: Hoare triple {2561#(and (not (= (+ main_~y~0 1) 0)) (<= main_~y~0 0) (<= 0 (+ main_~y~0 1)))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2561#(and (not (= (+ main_~y~0 1) 0)) (<= main_~y~0 0) (<= 0 (+ main_~y~0 1)))} is VALID [2022-04-07 20:42:31,990 INFO L272 TraceCheckUtils]: 42: Hoare triple {2561#(and (not (= (+ main_~y~0 1) 0)) (<= main_~y~0 0) (<= 0 (+ main_~y~0 1)))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2432#true} is VALID [2022-04-07 20:42:31,990 INFO L290 TraceCheckUtils]: 43: Hoare triple {2432#true} [95] __VERIFIER_assertENTRY-->L13: 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] {2432#true} is VALID [2022-04-07 20:42:31,990 INFO L290 TraceCheckUtils]: 44: Hoare triple {2432#true} [100] L13-->L13-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[] {2432#true} is VALID [2022-04-07 20:42:31,990 INFO L290 TraceCheckUtils]: 45: Hoare triple {2432#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2432#true} is VALID [2022-04-07 20:42:31,991 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {2432#true} {2561#(and (not (= (+ main_~y~0 1) 0)) (<= main_~y~0 0) (<= 0 (+ main_~y~0 1)))} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2561#(and (not (= (+ main_~y~0 1) 0)) (<= main_~y~0 0) (<= 0 (+ main_~y~0 1)))} is VALID [2022-04-07 20:42:31,991 INFO L290 TraceCheckUtils]: 47: Hoare triple {2561#(and (not (= (+ main_~y~0 1) 0)) (<= main_~y~0 0) (<= 0 (+ main_~y~0 1)))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {2433#false} is VALID [2022-04-07 20:42:31,991 INFO L290 TraceCheckUtils]: 48: Hoare triple {2433#false} [102] L39-->L39-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_3} OutVars{main_~y~0=v_main_~y~0_3} AuxVars[] AssignedVars[] {2433#false} is VALID [2022-04-07 20:42:31,991 INFO L290 TraceCheckUtils]: 49: Hoare triple {2433#false} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {2433#false} is VALID [2022-04-07 20:42:31,991 INFO L290 TraceCheckUtils]: 50: Hoare triple {2433#false} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2433#false} is VALID [2022-04-07 20:42:31,992 INFO L272 TraceCheckUtils]: 51: Hoare triple {2433#false} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2433#false} is VALID [2022-04-07 20:42:31,992 INFO L290 TraceCheckUtils]: 52: Hoare triple {2433#false} [95] __VERIFIER_assertENTRY-->L13: 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] {2433#false} is VALID [2022-04-07 20:42:31,992 INFO L290 TraceCheckUtils]: 53: Hoare triple {2433#false} [99] L13-->L14: 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[] {2433#false} is VALID [2022-04-07 20:42:31,992 INFO L290 TraceCheckUtils]: 54: Hoare triple {2433#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2433#false} is VALID [2022-04-07 20:42:31,992 INFO L134 CoverageAnalysis]: Checked inductivity of 51 backedges. 25 proven. 8 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2022-04-07 20:42:31,992 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 20:42:33,146 INFO L290 TraceCheckUtils]: 54: Hoare triple {2433#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2433#false} is VALID [2022-04-07 20:42:33,146 INFO L290 TraceCheckUtils]: 53: Hoare triple {2433#false} [99] L13-->L14: 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[] {2433#false} is VALID [2022-04-07 20:42:33,146 INFO L290 TraceCheckUtils]: 52: Hoare triple {2433#false} [95] __VERIFIER_assertENTRY-->L13: 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] {2433#false} is VALID [2022-04-07 20:42:33,147 INFO L272 TraceCheckUtils]: 51: Hoare triple {2433#false} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2433#false} is VALID [2022-04-07 20:42:33,147 INFO L290 TraceCheckUtils]: 50: Hoare triple {2433#false} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2433#false} is VALID [2022-04-07 20:42:33,147 INFO L290 TraceCheckUtils]: 49: Hoare triple {2433#false} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {2433#false} is VALID [2022-04-07 20:42:33,147 INFO L290 TraceCheckUtils]: 48: Hoare triple {2433#false} [102] L39-->L39-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_3} OutVars{main_~y~0=v_main_~y~0_3} AuxVars[] AssignedVars[] {2433#false} is VALID [2022-04-07 20:42:33,147 INFO L290 TraceCheckUtils]: 47: Hoare triple {2561#(and (not (= (+ main_~y~0 1) 0)) (<= main_~y~0 0) (<= 0 (+ main_~y~0 1)))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {2433#false} is VALID [2022-04-07 20:42:33,148 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {2432#true} {2561#(and (not (= (+ main_~y~0 1) 0)) (<= main_~y~0 0) (<= 0 (+ main_~y~0 1)))} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2561#(and (not (= (+ main_~y~0 1) 0)) (<= main_~y~0 0) (<= 0 (+ main_~y~0 1)))} is VALID [2022-04-07 20:42:33,148 INFO L290 TraceCheckUtils]: 45: Hoare triple {2432#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2432#true} is VALID [2022-04-07 20:42:33,148 INFO L290 TraceCheckUtils]: 44: Hoare triple {2432#true} [100] L13-->L13-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[] {2432#true} is VALID [2022-04-07 20:42:33,148 INFO L290 TraceCheckUtils]: 43: Hoare triple {2432#true} [95] __VERIFIER_assertENTRY-->L13: 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] {2432#true} is VALID [2022-04-07 20:42:33,148 INFO L272 TraceCheckUtils]: 42: Hoare triple {2561#(and (not (= (+ main_~y~0 1) 0)) (<= main_~y~0 0) (<= 0 (+ main_~y~0 1)))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2432#true} is VALID [2022-04-07 20:42:33,148 INFO L290 TraceCheckUtils]: 41: Hoare triple {2561#(and (not (= (+ main_~y~0 1) 0)) (<= main_~y~0 0) (<= 0 (+ main_~y~0 1)))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2561#(and (not (= (+ main_~y~0 1) 0)) (<= main_~y~0 0) (<= 0 (+ main_~y~0 1)))} is VALID [2022-04-07 20:42:33,149 INFO L290 TraceCheckUtils]: 40: Hoare triple {2649#(and (<= 0 (+ (div main_~y~0 2) 2)) (or (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0)) (and (<= (div main_~y~0 2) 0) (not (= (+ (div main_~y~0 2) 1) 0)))) (not (= (+ (div main_~y~0 2) 2) 0)))} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {2561#(and (not (= (+ main_~y~0 1) 0)) (<= main_~y~0 0) (<= 0 (+ main_~y~0 1)))} is VALID [2022-04-07 20:42:33,150 INFO L290 TraceCheckUtils]: 39: Hoare triple {2653#(or (<= (div (+ (- 1) main_~y~0) 2) 0) (not (<= 1 (mod main_~y~0 2))))} [101] L39-->L39-2: Formula: (and (= v_main_~y~0_1 (+ (- 1) v_main_~y~0_2)) (= v_main_~z~0_1 (+ v_main_~x~0_1 v_main_~z~0_2)) (= (let ((.cse0 (mod v_main_~y~0_2 2))) (ite (and (< v_main_~y~0_2 0) (not (= .cse0 0))) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_2, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_2} OutVars{main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_1} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {2649#(and (<= 0 (+ (div main_~y~0 2) 2)) (or (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0)) (and (<= (div main_~y~0 2) 0) (not (= (+ (div main_~y~0 2) 1) 0)))) (not (= (+ (div main_~y~0 2) 2) 0)))} is VALID [2022-04-07 20:42:33,150 INFO L290 TraceCheckUtils]: 38: Hoare triple {2653#(or (<= (div (+ (- 1) main_~y~0) 2) 0) (not (<= 1 (mod main_~y~0 2))))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {2653#(or (<= (div (+ (- 1) main_~y~0) 2) 0) (not (<= 1 (mod main_~y~0 2))))} is VALID [2022-04-07 20:42:33,151 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2432#true} {2653#(or (<= (div (+ (- 1) main_~y~0) 2) 0) (not (<= 1 (mod main_~y~0 2))))} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2653#(or (<= (div (+ (- 1) main_~y~0) 2) 0) (not (<= 1 (mod main_~y~0 2))))} is VALID [2022-04-07 20:42:33,151 INFO L290 TraceCheckUtils]: 36: Hoare triple {2432#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2432#true} is VALID [2022-04-07 20:42:33,151 INFO L290 TraceCheckUtils]: 35: Hoare triple {2432#true} [100] L13-->L13-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[] {2432#true} is VALID [2022-04-07 20:42:33,151 INFO L290 TraceCheckUtils]: 34: Hoare triple {2432#true} [95] __VERIFIER_assertENTRY-->L13: 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] {2432#true} is VALID [2022-04-07 20:42:33,151 INFO L272 TraceCheckUtils]: 33: Hoare triple {2653#(or (<= (div (+ (- 1) main_~y~0) 2) 0) (not (<= 1 (mod main_~y~0 2))))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2432#true} is VALID [2022-04-07 20:42:33,151 INFO L290 TraceCheckUtils]: 32: Hoare triple {2653#(or (<= (div (+ (- 1) main_~y~0) 2) 0) (not (<= 1 (mod main_~y~0 2))))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2653#(or (<= (div (+ (- 1) main_~y~0) 2) 0) (not (<= 1 (mod main_~y~0 2))))} is VALID [2022-04-07 20:42:33,152 INFO L290 TraceCheckUtils]: 31: Hoare triple {2678#(<= (div (* (- 1) (div main_~y~0 2)) (- 2)) 1)} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {2653#(or (<= (div (+ (- 1) main_~y~0) 2) 0) (not (<= 1 (mod main_~y~0 2))))} is VALID [2022-04-07 20:42:33,152 INFO L290 TraceCheckUtils]: 30: Hoare triple {2678#(<= (div (* (- 1) (div main_~y~0 2)) (- 2)) 1)} [102] L39-->L39-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_3} OutVars{main_~y~0=v_main_~y~0_3} AuxVars[] AssignedVars[] {2678#(<= (div (* (- 1) (div main_~y~0 2)) (- 2)) 1)} is VALID [2022-04-07 20:42:33,153 INFO L290 TraceCheckUtils]: 29: Hoare triple {2678#(<= (div (* (- 1) (div main_~y~0 2)) (- 2)) 1)} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {2678#(<= (div (* (- 1) (div main_~y~0 2)) (- 2)) 1)} is VALID [2022-04-07 20:42:33,153 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2432#true} {2678#(<= (div (* (- 1) (div main_~y~0 2)) (- 2)) 1)} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2678#(<= (div (* (- 1) (div main_~y~0 2)) (- 2)) 1)} is VALID [2022-04-07 20:42:33,153 INFO L290 TraceCheckUtils]: 27: Hoare triple {2432#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2432#true} is VALID [2022-04-07 20:42:33,153 INFO L290 TraceCheckUtils]: 26: Hoare triple {2432#true} [100] L13-->L13-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[] {2432#true} is VALID [2022-04-07 20:42:33,153 INFO L290 TraceCheckUtils]: 25: Hoare triple {2432#true} [95] __VERIFIER_assertENTRY-->L13: 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] {2432#true} is VALID [2022-04-07 20:42:33,153 INFO L272 TraceCheckUtils]: 24: Hoare triple {2678#(<= (div (* (- 1) (div main_~y~0 2)) (- 2)) 1)} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2432#true} is VALID [2022-04-07 20:42:33,154 INFO L290 TraceCheckUtils]: 23: Hoare triple {2678#(<= (div (* (- 1) (div main_~y~0 2)) (- 2)) 1)} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2678#(<= (div (* (- 1) (div main_~y~0 2)) (- 2)) 1)} is VALID [2022-04-07 20:42:33,155 INFO L290 TraceCheckUtils]: 22: Hoare triple {2706#(<= (div (* (- 1) (div main_~b~0 2)) (- 2)) 1)} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {2678#(<= (div (* (- 1) (div main_~y~0 2)) (- 2)) 1)} is VALID [2022-04-07 20:42:33,156 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2432#true} {2706#(<= (div (* (- 1) (div main_~b~0 2)) (- 2)) 1)} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2706#(<= (div (* (- 1) (div main_~b~0 2)) (- 2)) 1)} is VALID [2022-04-07 20:42:33,156 INFO L290 TraceCheckUtils]: 20: Hoare triple {2432#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2432#true} is VALID [2022-04-07 20:42:33,156 INFO L290 TraceCheckUtils]: 19: Hoare triple {2432#true} [85] L10-->L10-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[] {2432#true} is VALID [2022-04-07 20:42:33,156 INFO L290 TraceCheckUtils]: 18: Hoare triple {2432#true} [82] assume_abort_if_notENTRY-->L10: 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] {2432#true} is VALID [2022-04-07 20:42:33,156 INFO L272 TraceCheckUtils]: 17: Hoare triple {2706#(<= (div (* (- 1) (div main_~b~0 2)) (- 2)) 1)} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2432#true} is VALID [2022-04-07 20:42:33,156 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2480#(not (= |assume_abort_if_not_#in~cond| 0))} {2432#true} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2706#(<= (div (* (- 1) (div main_~b~0 2)) (- 2)) 1)} is VALID [2022-04-07 20:42:33,157 INFO L290 TraceCheckUtils]: 15: Hoare triple {2480#(not (= |assume_abort_if_not_#in~cond| 0))} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2480#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 20:42:33,157 INFO L290 TraceCheckUtils]: 14: Hoare triple {2734#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} [85] L10-->L10-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[] {2480#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 20:42:33,157 INFO L290 TraceCheckUtils]: 13: Hoare triple {2432#true} [82] assume_abort_if_notENTRY-->L10: 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] {2734#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-07 20:42:33,157 INFO L272 TraceCheckUtils]: 12: Hoare triple {2432#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~b~0_8) (<= v_main_~b~0_8 2)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2432#true} is VALID [2022-04-07 20:42:33,157 INFO L290 TraceCheckUtils]: 11: Hoare triple {2432#true} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {2432#true} is VALID [2022-04-07 20:42:33,157 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2432#true} {2432#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {2432#true} is VALID [2022-04-07 20:42:33,157 INFO L290 TraceCheckUtils]: 9: Hoare triple {2432#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2432#true} is VALID [2022-04-07 20:42:33,158 INFO L290 TraceCheckUtils]: 8: Hoare triple {2432#true} [85] L10-->L10-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[] {2432#true} is VALID [2022-04-07 20:42:33,158 INFO L290 TraceCheckUtils]: 7: Hoare triple {2432#true} [82] assume_abort_if_notENTRY-->L10: 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] {2432#true} is VALID [2022-04-07 20:42:33,158 INFO L272 TraceCheckUtils]: 6: Hoare triple {2432#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= v_main_~a~0_8 2) (<= 0 v_main_~a~0_8)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {2432#true} is VALID [2022-04-07 20:42:33,158 INFO L290 TraceCheckUtils]: 5: Hoare triple {2432#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |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_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2432#true} is VALID [2022-04-07 20:42:33,158 INFO L272 TraceCheckUtils]: 4: Hoare triple {2432#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2432#true} is VALID [2022-04-07 20:42:33,158 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2432#true} {2432#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2432#true} is VALID [2022-04-07 20:42:33,158 INFO L290 TraceCheckUtils]: 2: Hoare triple {2432#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2432#true} is VALID [2022-04-07 20:42:33,158 INFO L290 TraceCheckUtils]: 1: Hoare triple {2432#true} [76] 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_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (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] {2432#true} is VALID [2022-04-07 20:42:33,158 INFO L272 TraceCheckUtils]: 0: Hoare triple {2432#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2432#true} is VALID [2022-04-07 20:42:33,158 INFO L134 CoverageAnalysis]: Checked inductivity of 51 backedges. 26 proven. 7 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2022-04-07 20:42:33,158 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 20:42:33,158 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [676138832] [2022-04-07 20:42:33,158 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 20:42:33,158 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1663769992] [2022-04-07 20:42:33,158 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1663769992] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 20:42:33,159 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 20:42:33,159 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 9] total 15 [2022-04-07 20:42:33,159 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1935823987] [2022-04-07 20:42:33,159 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 20:42:33,159 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 14 states have (on average 2.9285714285714284) internal successors, (41), 12 states have internal predecessors, (41), 9 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (11), 9 states have call predecessors, (11), 8 states have call successors, (11) Word has length 55 [2022-04-07 20:42:33,160 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 20:42:33,160 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 14 states have (on average 2.9285714285714284) internal successors, (41), 12 states have internal predecessors, (41), 9 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (11), 9 states have call predecessors, (11), 8 states have call successors, (11) [2022-04-07 20:42:33,198 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 20:42:33,198 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-07 20:42:33,198 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 20:42:33,198 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-07 20:42:33,198 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=46, Invalid=164, Unknown=0, NotChecked=0, Total=210 [2022-04-07 20:42:33,198 INFO L87 Difference]: Start difference. First operand 46 states and 50 transitions. Second operand has 15 states, 14 states have (on average 2.9285714285714284) internal successors, (41), 12 states have internal predecessors, (41), 9 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (11), 9 states have call predecessors, (11), 8 states have call successors, (11) [2022-04-07 20:42:33,693 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:42:33,693 INFO L93 Difference]: Finished difference Result 36 states and 38 transitions. [2022-04-07 20:42:33,693 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-07 20:42:33,693 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 14 states have (on average 2.9285714285714284) internal successors, (41), 12 states have internal predecessors, (41), 9 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (11), 9 states have call predecessors, (11), 8 states have call successors, (11) Word has length 55 [2022-04-07 20:42:33,694 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 20:42:33,694 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 14 states have (on average 2.9285714285714284) internal successors, (41), 12 states have internal predecessors, (41), 9 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (11), 9 states have call predecessors, (11), 8 states have call successors, (11) [2022-04-07 20:42:33,695 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 36 transitions. [2022-04-07 20:42:33,695 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 14 states have (on average 2.9285714285714284) internal successors, (41), 12 states have internal predecessors, (41), 9 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (11), 9 states have call predecessors, (11), 8 states have call successors, (11) [2022-04-07 20:42:33,696 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 36 transitions. [2022-04-07 20:42:33,696 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 36 transitions. [2022-04-07 20:42:33,725 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 20:42:33,725 INFO L225 Difference]: With dead ends: 36 [2022-04-07 20:42:33,725 INFO L226 Difference]: Without dead ends: 0 [2022-04-07 20:42:33,726 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 114 GetRequests, 93 SyntacticMatches, 3 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 59 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=90, Invalid=290, Unknown=0, NotChecked=0, Total=380 [2022-04-07 20:42:33,726 INFO L913 BasicCegarLoop]: 24 mSDtfsCounter, 11 mSDsluCounter, 142 mSDsCounter, 0 mSdLazyCounter, 154 mSolverCounterSat, 16 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 166 SdHoareTripleChecker+Invalid, 170 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 16 IncrementalHoareTripleChecker+Valid, 154 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-07 20:42:33,726 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [12 Valid, 166 Invalid, 170 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 154 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-07 20:42:33,727 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-07 20:42:33,727 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-07 20:42:33,727 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 20:42:33,727 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 20:42:33,727 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 20:42:33,727 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 20:42:33,727 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:42:33,727 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-07 20:42:33,727 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 20:42:33,727 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:42:33,727 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:42:33,727 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 20:42:33,727 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 20:42:33,727 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:42:33,728 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-07 20:42:33,728 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 20:42:33,728 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:42:33,728 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:42:33,728 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 20:42:33,728 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 20:42:33,728 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 20:42:33,728 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-07 20:42:33,728 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 55 [2022-04-07 20:42:33,728 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 20:42:33,728 INFO L478 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-07 20:42:33,728 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 14 states have (on average 2.9285714285714284) internal successors, (41), 12 states have internal predecessors, (41), 9 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (11), 9 states have call predecessors, (11), 8 states have call successors, (11) [2022-04-07 20:42:33,728 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 20:42:33,728 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:42:33,730 INFO L788 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-07 20:42:33,746 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Ended with exit code 0 [2022-04-07 20:42:33,946 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 20:42:33,948 INFO L719 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 20:42:33,949 INFO L178 ceAbstractionStarter]: Computing trace abstraction results [2022-04-07 20:42:33,950 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 07.04 08:42:33 BasicIcfg [2022-04-07 20:42:33,950 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-07 20:42:33,951 INFO L158 Benchmark]: Toolchain (without parser) took 87797.63ms. Allocated memory was 172.0MB in the beginning and 221.2MB in the end (delta: 49.3MB). Free memory was 124.1MB in the beginning and 123.7MB in the end (delta: 466.8kB). Peak memory consumption was 50.4MB. Max. memory is 8.0GB. [2022-04-07 20:42:33,951 INFO L158 Benchmark]: CDTParser took 0.09ms. Allocated memory is still 172.0MB. Free memory is still 140.5MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-07 20:42:33,951 INFO L158 Benchmark]: CACSL2BoogieTranslator took 204.84ms. Allocated memory is still 172.0MB. Free memory was 123.9MB in the beginning and 150.4MB in the end (delta: -26.4MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-07 20:42:33,951 INFO L158 Benchmark]: Boogie Preprocessor took 20.57ms. Allocated memory is still 172.0MB. Free memory was 150.4MB in the beginning and 148.9MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-07 20:42:33,952 INFO L158 Benchmark]: RCFGBuilder took 232.26ms. Allocated memory is still 172.0MB. Free memory was 148.9MB in the beginning and 137.6MB in the end (delta: 11.2MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-07 20:42:33,952 INFO L158 Benchmark]: IcfgTransformer took 22.67ms. Allocated memory is still 172.0MB. Free memory was 137.6MB in the beginning and 136.1MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-07 20:42:33,952 INFO L158 Benchmark]: TraceAbstraction took 87311.06ms. Allocated memory was 172.0MB in the beginning and 221.2MB in the end (delta: 49.3MB). Free memory was 135.5MB in the beginning and 123.7MB in the end (delta: 11.9MB). Peak memory consumption was 62.3MB. Max. memory is 8.0GB. [2022-04-07 20:42:33,953 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.09ms. Allocated memory is still 172.0MB. Free memory is still 140.5MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 204.84ms. Allocated memory is still 172.0MB. Free memory was 123.9MB in the beginning and 150.4MB in the end (delta: -26.4MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * Boogie Preprocessor took 20.57ms. Allocated memory is still 172.0MB. Free memory was 150.4MB in the beginning and 148.9MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 232.26ms. Allocated memory is still 172.0MB. Free memory was 148.9MB in the beginning and 137.6MB in the end (delta: 11.2MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * IcfgTransformer took 22.67ms. Allocated memory is still 172.0MB. Free memory was 137.6MB in the beginning and 136.1MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * TraceAbstraction took 87311.06ms. Allocated memory was 172.0MB in the beginning and 221.2MB in the end (delta: 49.3MB). Free memory was 135.5MB in the beginning and 123.7MB in the end (delta: 11.9MB). Peak memory consumption was 62.3MB. 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: 15]: 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, 32 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 87.3s, OverallIterations: 8, TraceHistogramMax: 4, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 8.8s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 1 mSolverCounterUnknown, 157 SdHoareTripleChecker+Valid, 3.4s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 145 mSDsluCounter, 872 SdHoareTripleChecker+Invalid, 3.4s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 677 mSDsCounter, 91 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 791 IncrementalHoareTripleChecker+Invalid, 883 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 91 mSolverCounterUnsat, 195 mSDtfsCounter, 791 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 516 GetRequests, 421 SyntacticMatches, 8 SemanticMatches, 87 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 219 ImplicationChecksByTransitivity, 3.1s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=50occurred in iteration=5, InterpolantAutomatonStates: 65, 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, 8 MinimizatonAttempts, 9 StatesRemovedByMinimization, 4 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.2s SatisfiabilityAnalysisTime, 73.7s InterpolantComputationTime, 323 NumberOfCodeBlocks, 323 NumberOfCodeBlocksAsserted, 8 NumberOfCheckSat, 501 ConstructedInterpolants, 0 QuantifiedInterpolants, 1659 SizeOfPredicates, 27 NumberOfNonLiveVariables, 822 ConjunctsInSsa, 108 ConjunctsInUnsatCore, 12 InterpolantComputations, 4 PerfectInterpolantSequences, 302/335 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 20:42:33,976 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...