/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data --core.log.level.for.class de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN -tc ../../../trunk/examples/toolchains/AutomizerCTransformed.xml -s ../../../trunk/examples/settings/automizer/LoopAccelerationJordanC.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_valuebound2.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-e106359-m [2022-04-14 20:39:25,330 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-14 20:39:25,332 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-14 20:39:25,367 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-14 20:39:25,368 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-14 20:39:25,369 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-14 20:39:25,374 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-14 20:39:25,378 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-14 20:39:25,379 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-14 20:39:25,383 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-14 20:39:25,384 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-14 20:39:25,385 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-14 20:39:25,385 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-14 20:39:25,387 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-14 20:39:25,388 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-14 20:39:25,388 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-14 20:39:25,389 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-14 20:39:25,390 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-14 20:39:25,393 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-14 20:39:25,395 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-14 20:39:25,396 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-14 20:39:25,398 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-14 20:39:25,398 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-14 20:39:25,399 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-14 20:39:25,399 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-14 20:39:25,400 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-14 20:39:25,401 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-14 20:39:25,401 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-14 20:39:25,401 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-14 20:39:25,401 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-14 20:39:25,402 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-14 20:39:25,402 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-14 20:39:25,402 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-14 20:39:25,403 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-14 20:39:25,403 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-14 20:39:25,404 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-14 20:39:25,404 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-14 20:39:25,404 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-14 20:39:25,404 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-14 20:39:25,404 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-14 20:39:25,405 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-14 20:39:25,408 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-14 20:39:25,409 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/LoopAccelerationJordanC.epf [2022-04-14 20:39:25,419 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-14 20:39:25,419 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-14 20:39:25,420 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-14 20:39:25,420 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-14 20:39:25,420 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-14 20:39:25,420 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-14 20:39:25,420 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-14 20:39:25,420 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-14 20:39:25,420 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-14 20:39:25,421 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-14 20:39:25,421 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-14 20:39:25,421 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-14 20:39:25,421 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-14 20:39:25,421 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-14 20:39:25,421 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-14 20:39:25,422 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-14 20:39:25,422 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-14 20:39:25,422 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-14 20:39:25,422 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-14 20:39:25,422 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-14 20:39:25,422 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-14 20:39:25,422 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-14 20:39:25,423 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-14 20:39:25,604 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-14 20:39:25,624 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-14 20:39:25,625 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-14 20:39:25,626 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-14 20:39:25,627 INFO L275 PluginConnector]: CDTParser initialized [2022-04-14 20:39:25,627 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_valuebound2.c [2022-04-14 20:39:25,664 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/be08986e7/32d77a13552f48a49e0ea133300c3ae5/FLAG53293fcb3 [2022-04-14 20:39:26,010 INFO L306 CDTParser]: Found 1 translation units. [2022-04-14 20:39:26,010 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_valuebound2.c [2022-04-14 20:39:26,015 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/be08986e7/32d77a13552f48a49e0ea133300c3ae5/FLAG53293fcb3 [2022-04-14 20:39:26,029 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/be08986e7/32d77a13552f48a49e0ea133300c3ae5 [2022-04-14 20:39:26,031 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-14 20:39:26,031 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-14 20:39:26,033 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-14 20:39:26,033 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-14 20:39:26,036 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-14 20:39:26,040 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.04 08:39:26" (1/1) ... [2022-04-14 20:39:26,040 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@4a62af19 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:39:26, skipping insertion in model container [2022-04-14 20:39:26,041 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.04 08:39:26" (1/1) ... [2022-04-14 20:39:26,045 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-14 20:39:26,055 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-14 20:39:26,191 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_valuebound2.c[576,589] [2022-04-14 20:39:26,218 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-14 20:39:26,225 INFO L203 MainTranslator]: Completed pre-run [2022-04-14 20:39:26,235 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_valuebound2.c[576,589] [2022-04-14 20:39:26,251 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-14 20:39:26,261 INFO L208 MainTranslator]: Completed translation [2022-04-14 20:39:26,262 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:39:26 WrapperNode [2022-04-14 20:39:26,262 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-14 20:39:26,263 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-14 20:39:26,263 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-14 20:39:26,263 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-14 20:39:26,271 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:39:26" (1/1) ... [2022-04-14 20:39:26,271 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:39:26" (1/1) ... [2022-04-14 20:39:26,276 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:39:26" (1/1) ... [2022-04-14 20:39:26,276 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:39:26" (1/1) ... [2022-04-14 20:39:26,286 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:39:26" (1/1) ... [2022-04-14 20:39:26,291 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:39:26" (1/1) ... [2022-04-14 20:39:26,295 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:39:26" (1/1) ... [2022-04-14 20:39:26,298 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-14 20:39:26,298 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-14 20:39:26,298 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-14 20:39:26,299 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-14 20:39:26,299 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:39:26" (1/1) ... [2022-04-14 20:39:26,303 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-14 20:39:26,309 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 20:39:26,317 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-14 20:39:26,331 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-14 20:39:26,350 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-14 20:39:26,350 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-14 20:39:26,350 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-14 20:39:26,350 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-14 20:39:26,350 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-14 20:39:26,350 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-14 20:39:26,350 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-14 20:39:26,351 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-14 20:39:26,351 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-14 20:39:26,351 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-14 20:39:26,351 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-14 20:39:26,351 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-14 20:39:26,351 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-14 20:39:26,351 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-14 20:39:26,351 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-14 20:39:26,355 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-14 20:39:26,356 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-14 20:39:26,356 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-14 20:39:26,356 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-14 20:39:26,356 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-14 20:39:26,400 INFO L234 CfgBuilder]: Building ICFG [2022-04-14 20:39:26,401 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-14 20:39:26,569 INFO L275 CfgBuilder]: Performing block encoding [2022-04-14 20:39:26,573 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-14 20:39:26,573 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-14 20:39:26,575 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 08:39:26 BoogieIcfgContainer [2022-04-14 20:39:26,575 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-14 20:39:26,575 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-14 20:39:26,575 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-14 20:39:26,591 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-14 20:39:26,593 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 08:39:26" (1/1) ... [2022-04-14 20:39:26,594 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_JORDAN [2022-04-14 20:39:26,618 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 14.04 08:39:26 BasicIcfg [2022-04-14 20:39:26,618 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-14 20:39:26,619 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-14 20:39:26,619 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-14 20:39:26,621 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-14 20:39:26,621 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 14.04 08:39:26" (1/4) ... [2022-04-14 20:39:26,621 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@49276712 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.04 08:39:26, skipping insertion in model container [2022-04-14 20:39:26,621 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:39:26" (2/4) ... [2022-04-14 20:39:26,622 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@49276712 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.04 08:39:26, skipping insertion in model container [2022-04-14 20:39:26,622 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 08:39:26" (3/4) ... [2022-04-14 20:39:26,622 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@49276712 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 14.04 08:39:26, skipping insertion in model container [2022-04-14 20:39:26,622 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 14.04 08:39:26" (4/4) ... [2022-04-14 20:39:26,622 INFO L111 eAbstractionObserver]: Analyzing ICFG cohendiv-ll_valuebound2.cJordan [2022-04-14 20:39:26,625 INFO L202 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:ForwardPredicates Determinization: PREDICATE_ABSTRACTION [2022-04-14 20:39:26,626 INFO L161 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-14 20:39:26,659 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-14 20:39:26,664 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-14 20:39:26,665 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-14 20:39:26,677 INFO L276 IsEmpty]: Start isEmpty. Operand has 39 states, 21 states have (on average 1.4285714285714286) internal successors, (30), 22 states have internal predecessors, (30), 12 states have call successors, (12), 4 states have call predecessors, (12), 4 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-14 20:39:26,682 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-14 20:39:26,682 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 20:39:26,682 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-14 20:39:26,683 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 20:39:26,687 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 20:39:26,687 INFO L85 PathProgramCache]: Analyzing trace with hash 795680375, now seen corresponding path program 1 times [2022-04-14 20:39:26,694 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 20:39:26,695 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [505781553] [2022-04-14 20:39:26,695 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:39:26,695 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 20:39:26,787 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:39:26,858 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-14 20:39:26,863 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:39:26,874 INFO L290 TraceCheckUtils]: 0: Hoare triple {59#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [103] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select |v_#length_1| 2) 14) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {42#true} is VALID [2022-04-14 20:39:26,874 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} [106] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-14 20:39:26,876 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {42#true} {42#true} [143] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-14 20:39:26,877 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-14 20:39:26,878 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:39:26,885 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {42#true} is VALID [2022-04-14 20:39:26,885 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-14 20:39:26,886 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-14 20:39:26,886 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#true} {42#true} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {42#true} is VALID [2022-04-14 20:39:26,886 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-14 20:39:26,888 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:39:26,891 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {42#true} is VALID [2022-04-14 20:39:26,891 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-14 20:39:26,891 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-14 20:39:26,891 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#true} {42#true} [145] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {42#true} is VALID [2022-04-14 20:39:26,891 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-14 20:39:26,896 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:39:26,904 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {42#true} is VALID [2022-04-14 20:39:26,904 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-14 20:39:26,904 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-14 20:39:26,905 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#true} {42#true} [146] assume_abort_if_notEXIT-->L31: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {42#true} is VALID [2022-04-14 20:39:26,905 INFO L272 TraceCheckUtils]: 0: Hoare triple {42#true} [101] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {59#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-14 20:39:26,906 INFO L290 TraceCheckUtils]: 1: Hoare triple {59#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [103] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select |v_#length_1| 2) 14) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {42#true} is VALID [2022-04-14 20:39:26,906 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#true} [106] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-14 20:39:26,906 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#true} {42#true} [143] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-14 20:39:26,906 INFO L272 TraceCheckUtils]: 4: Hoare triple {42#true} [102] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-14 20:39:26,906 INFO L290 TraceCheckUtils]: 5: Hoare triple {42#true} [105] mainENTRY-->L27: Formula: (and (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_1, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1, main_~a~0=v_main_~a~0_1} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~r~0, main_~a~0] {42#true} is VALID [2022-04-14 20:39:26,906 INFO L272 TraceCheckUtils]: 6: Hoare triple {42#true} [107] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {42#true} is VALID [2022-04-14 20:39:26,907 INFO L290 TraceCheckUtils]: 7: Hoare triple {42#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {42#true} is VALID [2022-04-14 20:39:26,907 INFO L290 TraceCheckUtils]: 8: Hoare triple {42#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-14 20:39:26,907 INFO L290 TraceCheckUtils]: 9: Hoare triple {42#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-14 20:39:26,907 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {42#true} {42#true} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {42#true} is VALID [2022-04-14 20:39:26,907 INFO L290 TraceCheckUtils]: 11: Hoare triple {42#true} [108] L27-1-->L29: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~y~0] {42#true} is VALID [2022-04-14 20:39:26,907 INFO L272 TraceCheckUtils]: 12: Hoare triple {42#true} [110] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {42#true} is VALID [2022-04-14 20:39:26,908 INFO L290 TraceCheckUtils]: 13: Hoare triple {42#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {42#true} is VALID [2022-04-14 20:39:26,908 INFO L290 TraceCheckUtils]: 14: Hoare triple {42#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-14 20:39:26,908 INFO L290 TraceCheckUtils]: 15: Hoare triple {42#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-14 20:39:26,908 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {42#true} {42#true} [145] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {42#true} is VALID [2022-04-14 20:39:26,908 INFO L272 TraceCheckUtils]: 17: Hoare triple {42#true} [113] L29-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {42#true} is VALID [2022-04-14 20:39:26,908 INFO L290 TraceCheckUtils]: 18: Hoare triple {42#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {42#true} is VALID [2022-04-14 20:39:26,909 INFO L290 TraceCheckUtils]: 19: Hoare triple {42#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-14 20:39:26,909 INFO L290 TraceCheckUtils]: 20: Hoare triple {42#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-14 20:39:26,909 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {42#true} {42#true} [146] assume_abort_if_notEXIT-->L31: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {42#true} is VALID [2022-04-14 20:39:26,909 INFO L290 TraceCheckUtils]: 22: Hoare triple {42#true} [115] L31-->L38-2: Formula: (and (= v_main_~b~0_2 0) (= v_main_~q~0_2 0) (= v_main_~a~0_2 0) (= v_main_~r~0_2 v_main_~x~0_5)) InVars {main_~x~0=v_main_~x~0_5} OutVars{main_~q~0=v_main_~q~0_2, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0, main_~a~0] {42#true} is VALID [2022-04-14 20:39:26,911 INFO L290 TraceCheckUtils]: 23: Hoare triple {42#true} [116] L38-2-->L38-3: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {43#false} is VALID [2022-04-14 20:39:26,911 INFO L272 TraceCheckUtils]: 24: Hoare triple {43#false} [119] L38-3-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_7| (ite (= v_main_~x~0_12 (+ v_main_~r~0_18 (* v_main_~q~0_10 v_main_~y~0_20))) 1 0)) InVars {main_~q~0=v_main_~q~0_10, main_~y~0=v_main_~y~0_20, main_~x~0=v_main_~x~0_12, main_~r~0=v_main_~r~0_18} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_7|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {43#false} is VALID [2022-04-14 20:39:26,911 INFO L290 TraceCheckUtils]: 25: Hoare triple {43#false} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {43#false} is VALID [2022-04-14 20:39:26,911 INFO L290 TraceCheckUtils]: 26: Hoare triple {43#false} [125] L15-->L16: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {43#false} is VALID [2022-04-14 20:39:26,912 INFO L290 TraceCheckUtils]: 27: Hoare triple {43#false} [129] L16-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {43#false} is VALID [2022-04-14 20:39:26,912 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-14 20:39:26,912 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 20:39:26,912 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [505781553] [2022-04-14 20:39:26,913 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [505781553] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 20:39:26,913 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 20:39:26,914 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-14 20:39:26,915 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1308685589] [2022-04-14 20:39:26,915 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 20:39:26,918 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) Word has length 28 [2022-04-14 20:39:26,919 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 20:39:26,921 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-14 20:39:26,950 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-14 20:39:26,951 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-14 20:39:26,951 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 20:39:26,972 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-14 20:39:26,973 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-14 20:39:26,976 INFO L87 Difference]: Start difference. First operand has 39 states, 21 states have (on average 1.4285714285714286) internal successors, (30), 22 states have internal predecessors, (30), 12 states have call successors, (12), 4 states have call predecessors, (12), 4 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) Second operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-14 20:39:27,112 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:27,112 INFO L93 Difference]: Finished difference Result 39 states and 48 transitions. [2022-04-14 20:39:27,113 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-14 20:39:27,113 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) Word has length 28 [2022-04-14 20:39:27,113 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 20:39:27,114 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-14 20:39:27,121 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 54 transitions. [2022-04-14 20:39:27,122 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-14 20:39:27,130 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 54 transitions. [2022-04-14 20:39:27,131 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 54 transitions. [2022-04-14 20:39:27,211 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:39:27,223 INFO L225 Difference]: With dead ends: 39 [2022-04-14 20:39:27,223 INFO L226 Difference]: Without dead ends: 34 [2022-04-14 20:39:27,226 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 9 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-14 20:39:27,228 INFO L913 BasicCegarLoop]: 38 mSDtfsCounter, 21 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 12 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 31 SdHoareTripleChecker+Valid, 41 SdHoareTripleChecker+Invalid, 23 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 12 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-14 20:39:27,229 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [31 Valid, 41 Invalid, 23 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 12 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-14 20:39:27,239 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-14 20:39:27,246 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 34. [2022-04-14 20:39:27,247 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 20:39:27,247 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-14 20:39:27,248 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-14 20:39:27,248 INFO L87 Difference]: Start difference. First operand 34 states. Second operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-14 20:39:27,251 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:27,251 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-14 20:39:27,252 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-14 20:39:27,252 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:39:27,252 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:39:27,253 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 34 states. [2022-04-14 20:39:27,253 INFO L87 Difference]: Start difference. First operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 34 states. [2022-04-14 20:39:27,256 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:27,256 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-14 20:39:27,256 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-14 20:39:27,257 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:39:27,257 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:39:27,257 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 20:39:27,257 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 20:39:27,257 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-14 20:39:27,259 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 43 transitions. [2022-04-14 20:39:27,260 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 43 transitions. Word has length 28 [2022-04-14 20:39:27,260 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 20:39:27,260 INFO L478 AbstractCegarLoop]: Abstraction has 34 states and 43 transitions. [2022-04-14 20:39:27,260 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-14 20:39:27,261 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-14 20:39:27,261 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-14 20:39:27,261 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 20:39:27,261 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-14 20:39:27,261 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-14 20:39:27,262 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 20:39:27,262 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 20:39:27,262 INFO L85 PathProgramCache]: Analyzing trace with hash 797557208, now seen corresponding path program 1 times [2022-04-14 20:39:27,262 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 20:39:27,262 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1113367339] [2022-04-14 20:39:27,262 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:39:27,263 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 20:39:27,276 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 20:39:27,276 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2029529519] [2022-04-14 20:39:27,276 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:39:27,276 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:39:27,276 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 20:39:27,278 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-14 20:39:27,278 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-14 20:39:27,317 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:39:27,319 INFO L263 TraceCheckSpWp]: Trace formula consists of 92 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-14 20:39:27,328 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:39:27,332 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 20:39:27,579 INFO L272 TraceCheckUtils]: 0: Hoare triple {203#true} [101] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {203#true} is VALID [2022-04-14 20:39:27,579 INFO L290 TraceCheckUtils]: 1: Hoare triple {203#true} [103] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select |v_#length_1| 2) 14) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {203#true} is VALID [2022-04-14 20:39:27,580 INFO L290 TraceCheckUtils]: 2: Hoare triple {203#true} [106] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {203#true} is VALID [2022-04-14 20:39:27,580 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {203#true} {203#true} [143] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {203#true} is VALID [2022-04-14 20:39:27,580 INFO L272 TraceCheckUtils]: 4: Hoare triple {203#true} [102] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {203#true} is VALID [2022-04-14 20:39:27,580 INFO L290 TraceCheckUtils]: 5: Hoare triple {203#true} [105] mainENTRY-->L27: Formula: (and (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_1, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1, main_~a~0=v_main_~a~0_1} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~r~0, main_~a~0] {203#true} is VALID [2022-04-14 20:39:27,580 INFO L272 TraceCheckUtils]: 6: Hoare triple {203#true} [107] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {203#true} is VALID [2022-04-14 20:39:27,580 INFO L290 TraceCheckUtils]: 7: Hoare triple {203#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {203#true} is VALID [2022-04-14 20:39:27,581 INFO L290 TraceCheckUtils]: 8: Hoare triple {203#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {203#true} is VALID [2022-04-14 20:39:27,581 INFO L290 TraceCheckUtils]: 9: Hoare triple {203#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {203#true} is VALID [2022-04-14 20:39:27,581 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {203#true} {203#true} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {203#true} is VALID [2022-04-14 20:39:27,581 INFO L290 TraceCheckUtils]: 11: Hoare triple {203#true} [108] L27-1-->L29: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~y~0] {203#true} is VALID [2022-04-14 20:39:27,581 INFO L272 TraceCheckUtils]: 12: Hoare triple {203#true} [110] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {203#true} is VALID [2022-04-14 20:39:27,584 INFO L290 TraceCheckUtils]: 13: Hoare triple {203#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {247#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-14 20:39:27,584 INFO L290 TraceCheckUtils]: 14: Hoare triple {247#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {251#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 20:39:27,585 INFO L290 TraceCheckUtils]: 15: Hoare triple {251#(not (= |assume_abort_if_not_#in~cond| 0))} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {251#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 20:39:27,585 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {251#(not (= |assume_abort_if_not_#in~cond| 0))} {203#true} [145] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {258#(and (<= 0 main_~y~0) (<= main_~y~0 2))} is VALID [2022-04-14 20:39:27,586 INFO L272 TraceCheckUtils]: 17: Hoare triple {258#(and (<= 0 main_~y~0) (<= main_~y~0 2))} [113] L29-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {203#true} is VALID [2022-04-14 20:39:27,586 INFO L290 TraceCheckUtils]: 18: Hoare triple {203#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {247#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-14 20:39:27,587 INFO L290 TraceCheckUtils]: 19: Hoare triple {247#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {251#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 20:39:27,587 INFO L290 TraceCheckUtils]: 20: Hoare triple {251#(not (= |assume_abort_if_not_#in~cond| 0))} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {251#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 20:39:27,588 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {251#(not (= |assume_abort_if_not_#in~cond| 0))} {258#(and (<= 0 main_~y~0) (<= main_~y~0 2))} [146] assume_abort_if_notEXIT-->L31: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {274#(and (<= main_~y~0 2) (<= 1 main_~y~0))} is VALID [2022-04-14 20:39:27,588 INFO L290 TraceCheckUtils]: 22: Hoare triple {274#(and (<= main_~y~0 2) (<= 1 main_~y~0))} [115] L31-->L38-2: Formula: (and (= v_main_~b~0_2 0) (= v_main_~q~0_2 0) (= v_main_~a~0_2 0) (= v_main_~r~0_2 v_main_~x~0_5)) InVars {main_~x~0=v_main_~x~0_5} OutVars{main_~q~0=v_main_~q~0_2, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0, main_~a~0] {278#(and (= main_~a~0 0) (<= main_~y~0 2) (= main_~b~0 0) (<= 1 main_~y~0))} is VALID [2022-04-14 20:39:27,589 INFO L290 TraceCheckUtils]: 23: Hoare triple {278#(and (= main_~a~0 0) (<= main_~y~0 2) (= main_~b~0 0) (<= 1 main_~y~0))} [118] L38-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {278#(and (= main_~a~0 0) (<= main_~y~0 2) (= main_~b~0 0) (<= 1 main_~y~0))} is VALID [2022-04-14 20:39:27,589 INFO L272 TraceCheckUtils]: 24: Hoare triple {278#(and (= main_~a~0 0) (<= main_~y~0 2) (= main_~b~0 0) (<= 1 main_~y~0))} [120] L39-->__VERIFIER_assertENTRY: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {285#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 20:39:27,590 INFO L290 TraceCheckUtils]: 25: Hoare triple {285#(<= 1 |__VERIFIER_assert_#in~cond|)} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {289#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 20:39:27,590 INFO L290 TraceCheckUtils]: 26: Hoare triple {289#(<= 1 __VERIFIER_assert_~cond)} [125] L15-->L16: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {204#false} is VALID [2022-04-14 20:39:27,591 INFO L290 TraceCheckUtils]: 27: Hoare triple {204#false} [129] L16-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {204#false} is VALID [2022-04-14 20:39:27,591 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-14 20:39:27,591 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 20:39:27,592 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 20:39:27,592 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1113367339] [2022-04-14 20:39:27,592 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 20:39:27,592 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2029529519] [2022-04-14 20:39:27,601 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2029529519] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 20:39:27,602 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 20:39:27,602 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-14 20:39:27,602 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1158500317] [2022-04-14 20:39:27,602 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 20:39:27,603 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 1.875) internal successors, (15), 6 states have internal predecessors, (15), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-14 20:39:27,603 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 20:39:27,603 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 1.875) internal successors, (15), 6 states have internal predecessors, (15), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-14 20:39:27,620 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:39:27,621 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-14 20:39:27,621 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 20:39:27,622 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-14 20:39:27,622 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=54, Unknown=0, NotChecked=0, Total=72 [2022-04-14 20:39:27,622 INFO L87 Difference]: Start difference. First operand 34 states and 43 transitions. Second operand has 9 states, 8 states have (on average 1.875) internal successors, (15), 6 states have internal predecessors, (15), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-14 20:39:27,982 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:27,982 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2022-04-14 20:39:27,983 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-14 20:39:27,983 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 1.875) internal successors, (15), 6 states have internal predecessors, (15), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-14 20:39:27,984 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 20:39:27,984 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 1.875) internal successors, (15), 6 states have internal predecessors, (15), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-14 20:39:27,987 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 55 transitions. [2022-04-14 20:39:27,988 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 1.875) internal successors, (15), 6 states have internal predecessors, (15), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-14 20:39:27,989 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 55 transitions. [2022-04-14 20:39:27,989 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 55 transitions. [2022-04-14 20:39:28,032 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:39:28,035 INFO L225 Difference]: With dead ends: 43 [2022-04-14 20:39:28,035 INFO L226 Difference]: Without dead ends: 43 [2022-04-14 20:39:28,035 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 29 GetRequests, 20 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=26, Invalid=84, Unknown=0, NotChecked=0, Total=110 [2022-04-14 20:39:28,037 INFO L913 BasicCegarLoop]: 36 mSDtfsCounter, 18 mSDsluCounter, 145 mSDsCounter, 0 mSdLazyCounter, 134 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 27 SdHoareTripleChecker+Valid, 181 SdHoareTripleChecker+Invalid, 135 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 134 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-14 20:39:28,038 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [27 Valid, 181 Invalid, 135 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 134 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-14 20:39:28,040 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 43 states. [2022-04-14 20:39:28,043 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 43 to 40. [2022-04-14 20:39:28,043 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 20:39:28,044 INFO L82 GeneralOperation]: Start isEquivalent. First operand 43 states. Second operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-14 20:39:28,044 INFO L74 IsIncluded]: Start isIncluded. First operand 43 states. Second operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-14 20:39:28,044 INFO L87 Difference]: Start difference. First operand 43 states. Second operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-14 20:39:28,046 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:28,046 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2022-04-14 20:39:28,046 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-14 20:39:28,047 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:39:28,047 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:39:28,047 INFO L74 IsIncluded]: Start isIncluded. First operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) Second operand 43 states. [2022-04-14 20:39:28,048 INFO L87 Difference]: Start difference. First operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) Second operand 43 states. [2022-04-14 20:39:28,050 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:28,050 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2022-04-14 20:39:28,050 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-14 20:39:28,051 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:39:28,051 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:39:28,051 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 20:39:28,051 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 20:39:28,051 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-14 20:39:28,053 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 49 transitions. [2022-04-14 20:39:28,053 INFO L78 Accepts]: Start accepts. Automaton has 40 states and 49 transitions. Word has length 28 [2022-04-14 20:39:28,053 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 20:39:28,053 INFO L478 AbstractCegarLoop]: Abstraction has 40 states and 49 transitions. [2022-04-14 20:39:28,053 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 1.875) internal successors, (15), 6 states have internal predecessors, (15), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-14 20:39:28,053 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 49 transitions. [2022-04-14 20:39:28,054 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-14 20:39:28,054 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 20:39:28,054 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 20:39:28,070 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-04-14 20:39:28,270 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-14 20:39:28,271 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 20:39:28,271 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 20:39:28,271 INFO L85 PathProgramCache]: Analyzing trace with hash 648866686, now seen corresponding path program 1 times [2022-04-14 20:39:28,271 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 20:39:28,271 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1343035288] [2022-04-14 20:39:28,271 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:39:28,271 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 20:39:28,286 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 20:39:28,286 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [920605217] [2022-04-14 20:39:28,286 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:39:28,286 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:39:28,286 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 20:39:28,288 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-14 20:39:28,305 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-14 20:39:28,322 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:39:28,323 INFO L263 TraceCheckSpWp]: Trace formula consists of 101 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-14 20:39:28,331 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:39:28,332 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 20:39:28,527 INFO L272 TraceCheckUtils]: 0: Hoare triple {468#true} [101] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {468#true} is VALID [2022-04-14 20:39:28,528 INFO L290 TraceCheckUtils]: 1: Hoare triple {468#true} [103] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select |v_#length_1| 2) 14) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {468#true} is VALID [2022-04-14 20:39:28,528 INFO L290 TraceCheckUtils]: 2: Hoare triple {468#true} [106] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {468#true} is VALID [2022-04-14 20:39:28,528 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {468#true} {468#true} [143] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {468#true} is VALID [2022-04-14 20:39:28,528 INFO L272 TraceCheckUtils]: 4: Hoare triple {468#true} [102] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {468#true} is VALID [2022-04-14 20:39:28,528 INFO L290 TraceCheckUtils]: 5: Hoare triple {468#true} [105] mainENTRY-->L27: Formula: (and (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_1, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1, main_~a~0=v_main_~a~0_1} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~r~0, main_~a~0] {468#true} is VALID [2022-04-14 20:39:28,528 INFO L272 TraceCheckUtils]: 6: Hoare triple {468#true} [107] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {468#true} is VALID [2022-04-14 20:39:28,529 INFO L290 TraceCheckUtils]: 7: Hoare triple {468#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {468#true} is VALID [2022-04-14 20:39:28,529 INFO L290 TraceCheckUtils]: 8: Hoare triple {468#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {468#true} is VALID [2022-04-14 20:39:28,529 INFO L290 TraceCheckUtils]: 9: Hoare triple {468#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {468#true} is VALID [2022-04-14 20:39:28,529 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {468#true} {468#true} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {468#true} is VALID [2022-04-14 20:39:28,529 INFO L290 TraceCheckUtils]: 11: Hoare triple {468#true} [108] L27-1-->L29: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~y~0] {468#true} is VALID [2022-04-14 20:39:28,529 INFO L272 TraceCheckUtils]: 12: Hoare triple {468#true} [110] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {468#true} is VALID [2022-04-14 20:39:28,529 INFO L290 TraceCheckUtils]: 13: Hoare triple {468#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {512#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-14 20:39:28,530 INFO L290 TraceCheckUtils]: 14: Hoare triple {512#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {516#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 20:39:28,530 INFO L290 TraceCheckUtils]: 15: Hoare triple {516#(not (= |assume_abort_if_not_#in~cond| 0))} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {516#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 20:39:28,531 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {516#(not (= |assume_abort_if_not_#in~cond| 0))} {468#true} [145] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {523#(and (<= 0 main_~y~0) (<= main_~y~0 2))} is VALID [2022-04-14 20:39:28,531 INFO L272 TraceCheckUtils]: 17: Hoare triple {523#(and (<= 0 main_~y~0) (<= main_~y~0 2))} [113] L29-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {468#true} is VALID [2022-04-14 20:39:28,532 INFO L290 TraceCheckUtils]: 18: Hoare triple {468#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {512#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-14 20:39:28,533 INFO L290 TraceCheckUtils]: 19: Hoare triple {512#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {516#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 20:39:28,533 INFO L290 TraceCheckUtils]: 20: Hoare triple {516#(not (= |assume_abort_if_not_#in~cond| 0))} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {516#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 20:39:28,534 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {516#(not (= |assume_abort_if_not_#in~cond| 0))} {523#(and (<= 0 main_~y~0) (<= main_~y~0 2))} [146] assume_abort_if_notEXIT-->L31: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {539#(and (<= main_~y~0 2) (<= 1 main_~y~0))} is VALID [2022-04-14 20:39:28,534 INFO L290 TraceCheckUtils]: 22: Hoare triple {539#(and (<= main_~y~0 2) (<= 1 main_~y~0))} [115] L31-->L38-2: Formula: (and (= v_main_~b~0_2 0) (= v_main_~q~0_2 0) (= v_main_~a~0_2 0) (= v_main_~r~0_2 v_main_~x~0_5)) InVars {main_~x~0=v_main_~x~0_5} OutVars{main_~q~0=v_main_~q~0_2, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0, main_~a~0] {543#(and (= main_~x~0 main_~r~0) (<= main_~y~0 2) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-14 20:39:28,535 INFO L290 TraceCheckUtils]: 23: Hoare triple {543#(and (= main_~x~0 main_~r~0) (<= main_~y~0 2) (= main_~q~0 0) (<= 1 main_~y~0))} [118] L38-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {543#(and (= main_~x~0 main_~r~0) (<= main_~y~0 2) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-14 20:39:28,535 INFO L272 TraceCheckUtils]: 24: Hoare triple {543#(and (= main_~x~0 main_~r~0) (<= main_~y~0 2) (= main_~q~0 0) (<= 1 main_~y~0))} [120] L39-->__VERIFIER_assertENTRY: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {468#true} is VALID [2022-04-14 20:39:28,535 INFO L290 TraceCheckUtils]: 25: Hoare triple {468#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {468#true} is VALID [2022-04-14 20:39:28,535 INFO L290 TraceCheckUtils]: 26: Hoare triple {468#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {468#true} is VALID [2022-04-14 20:39:28,536 INFO L290 TraceCheckUtils]: 27: Hoare triple {468#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {468#true} is VALID [2022-04-14 20:39:28,536 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {468#true} {543#(and (= main_~x~0 main_~r~0) (<= main_~y~0 2) (= main_~q~0 0) (<= 1 main_~y~0))} [148] __VERIFIER_assertEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {543#(and (= main_~x~0 main_~r~0) (<= main_~y~0 2) (= main_~q~0 0) (<= 1 main_~y~0))} is VALID [2022-04-14 20:39:28,537 INFO L272 TraceCheckUtils]: 29: Hoare triple {543#(and (= main_~x~0 main_~r~0) (<= main_~y~0 2) (= main_~q~0 0) (<= 1 main_~y~0))} [123] L39-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {565#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 20:39:28,537 INFO L290 TraceCheckUtils]: 30: Hoare triple {565#(<= 1 |__VERIFIER_assert_#in~cond|)} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {569#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 20:39:28,539 INFO L290 TraceCheckUtils]: 31: Hoare triple {569#(<= 1 __VERIFIER_assert_~cond)} [125] L15-->L16: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {469#false} is VALID [2022-04-14 20:39:28,540 INFO L290 TraceCheckUtils]: 32: Hoare triple {469#false} [129] L16-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {469#false} is VALID [2022-04-14 20:39:28,540 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-14 20:39:28,540 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 20:39:28,540 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 20:39:28,540 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1343035288] [2022-04-14 20:39:28,540 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 20:39:28,540 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [920605217] [2022-04-14 20:39:28,540 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [920605217] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 20:39:28,540 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 20:39:28,540 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-14 20:39:28,541 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2120381150] [2022-04-14 20:39:28,541 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 20:39:28,541 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) Word has length 33 [2022-04-14 20:39:28,541 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 20:39:28,541 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-14 20:39:28,561 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:39:28,561 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-14 20:39:28,561 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 20:39:28,561 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-14 20:39:28,562 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=54, Unknown=0, NotChecked=0, Total=72 [2022-04-14 20:39:28,562 INFO L87 Difference]: Start difference. First operand 40 states and 49 transitions. Second operand has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-14 20:39:28,914 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:28,915 INFO L93 Difference]: Finished difference Result 55 states and 70 transitions. [2022-04-14 20:39:28,915 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-14 20:39:28,915 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) Word has length 33 [2022-04-14 20:39:28,915 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 20:39:28,915 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-14 20:39:28,917 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 68 transitions. [2022-04-14 20:39:28,917 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-14 20:39:28,919 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 68 transitions. [2022-04-14 20:39:28,919 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 68 transitions. [2022-04-14 20:39:28,967 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:39:28,969 INFO L225 Difference]: With dead ends: 55 [2022-04-14 20:39:28,969 INFO L226 Difference]: Without dead ends: 54 [2022-04-14 20:39:28,969 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 34 GetRequests, 25 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=26, Invalid=84, Unknown=0, NotChecked=0, Total=110 [2022-04-14 20:39:28,969 INFO L913 BasicCegarLoop]: 39 mSDtfsCounter, 39 mSDsluCounter, 127 mSDsCounter, 0 mSdLazyCounter, 129 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 51 SdHoareTripleChecker+Valid, 166 SdHoareTripleChecker+Invalid, 146 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 129 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-14 20:39:28,970 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [51 Valid, 166 Invalid, 146 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 129 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-14 20:39:28,970 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 54 states. [2022-04-14 20:39:28,973 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 54 to 53. [2022-04-14 20:39:28,973 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 20:39:28,973 INFO L82 GeneralOperation]: Start isEquivalent. First operand 54 states. Second operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-14 20:39:28,974 INFO L74 IsIncluded]: Start isIncluded. First operand 54 states. Second operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-14 20:39:28,974 INFO L87 Difference]: Start difference. First operand 54 states. Second operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-14 20:39:28,976 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:28,976 INFO L93 Difference]: Finished difference Result 54 states and 68 transitions. [2022-04-14 20:39:28,976 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 68 transitions. [2022-04-14 20:39:28,977 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:39:28,977 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:39:28,977 INFO L74 IsIncluded]: Start isIncluded. First operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 54 states. [2022-04-14 20:39:28,978 INFO L87 Difference]: Start difference. First operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 54 states. [2022-04-14 20:39:28,980 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:28,980 INFO L93 Difference]: Finished difference Result 54 states and 68 transitions. [2022-04-14 20:39:28,980 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 68 transitions. [2022-04-14 20:39:28,980 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:39:28,980 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:39:28,980 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 20:39:28,981 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 20:39:28,981 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-14 20:39:28,983 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 53 states to 53 states and 67 transitions. [2022-04-14 20:39:28,983 INFO L78 Accepts]: Start accepts. Automaton has 53 states and 67 transitions. Word has length 33 [2022-04-14 20:39:28,983 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 20:39:28,983 INFO L478 AbstractCegarLoop]: Abstraction has 53 states and 67 transitions. [2022-04-14 20:39:28,983 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-14 20:39:28,983 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 67 transitions. [2022-04-14 20:39:28,984 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-04-14 20:39:28,984 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 20:39:28,984 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 20:39:29,000 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-14 20:39:29,189 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-14 20:39:29,189 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 20:39:29,190 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 20:39:29,190 INFO L85 PathProgramCache]: Analyzing trace with hash 619469170, now seen corresponding path program 1 times [2022-04-14 20:39:29,190 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 20:39:29,190 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1196229738] [2022-04-14 20:39:29,190 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:39:29,190 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 20:39:29,203 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 20:39:29,204 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1886950230] [2022-04-14 20:39:29,204 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:39:29,204 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:39:29,204 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 20:39:29,208 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-14 20:39:29,209 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-14 20:39:29,243 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:39:29,245 INFO L263 TraceCheckSpWp]: Trace formula consists of 116 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-14 20:39:29,257 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:39:29,258 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 20:39:29,521 INFO L272 TraceCheckUtils]: 0: Hoare triple {795#true} [101] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:29,521 INFO L290 TraceCheckUtils]: 1: Hoare triple {795#true} [103] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select |v_#length_1| 2) 14) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {795#true} is VALID [2022-04-14 20:39:29,521 INFO L290 TraceCheckUtils]: 2: Hoare triple {795#true} [106] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:29,522 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {795#true} {795#true} [143] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:29,522 INFO L272 TraceCheckUtils]: 4: Hoare triple {795#true} [102] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:29,522 INFO L290 TraceCheckUtils]: 5: Hoare triple {795#true} [105] mainENTRY-->L27: Formula: (and (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_1, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1, main_~a~0=v_main_~a~0_1} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~r~0, main_~a~0] {795#true} is VALID [2022-04-14 20:39:29,522 INFO L272 TraceCheckUtils]: 6: Hoare triple {795#true} [107] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {795#true} is VALID [2022-04-14 20:39:29,522 INFO L290 TraceCheckUtils]: 7: Hoare triple {795#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {821#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-14 20:39:29,523 INFO L290 TraceCheckUtils]: 8: Hoare triple {821#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {825#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 20:39:29,523 INFO L290 TraceCheckUtils]: 9: Hoare triple {825#(not (= |assume_abort_if_not_#in~cond| 0))} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {825#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 20:39:29,524 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {825#(not (= |assume_abort_if_not_#in~cond| 0))} {795#true} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {832#(and (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-14 20:39:29,525 INFO L290 TraceCheckUtils]: 11: Hoare triple {832#(and (<= 0 main_~x~0) (<= main_~x~0 2))} [108] L27-1-->L29: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~y~0] {832#(and (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-14 20:39:29,525 INFO L272 TraceCheckUtils]: 12: Hoare triple {832#(and (<= 0 main_~x~0) (<= main_~x~0 2))} [110] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {795#true} is VALID [2022-04-14 20:39:29,525 INFO L290 TraceCheckUtils]: 13: Hoare triple {795#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {795#true} is VALID [2022-04-14 20:39:29,525 INFO L290 TraceCheckUtils]: 14: Hoare triple {795#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:29,525 INFO L290 TraceCheckUtils]: 15: Hoare triple {795#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:29,536 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {795#true} {832#(and (<= 0 main_~x~0) (<= main_~x~0 2))} [145] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {832#(and (<= 0 main_~x~0) (<= main_~x~0 2))} is VALID [2022-04-14 20:39:29,536 INFO L272 TraceCheckUtils]: 17: Hoare triple {832#(and (<= 0 main_~x~0) (<= main_~x~0 2))} [113] L29-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {795#true} is VALID [2022-04-14 20:39:29,537 INFO L290 TraceCheckUtils]: 18: Hoare triple {795#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {821#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-14 20:39:29,537 INFO L290 TraceCheckUtils]: 19: Hoare triple {821#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {825#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 20:39:29,537 INFO L290 TraceCheckUtils]: 20: Hoare triple {825#(not (= |assume_abort_if_not_#in~cond| 0))} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {825#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 20:39:29,538 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {825#(not (= |assume_abort_if_not_#in~cond| 0))} {832#(and (<= 0 main_~x~0) (<= main_~x~0 2))} [146] assume_abort_if_notEXIT-->L31: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {866#(and (<= 0 main_~x~0) (<= 1 main_~y~0) (<= main_~x~0 2))} is VALID [2022-04-14 20:39:29,538 INFO L290 TraceCheckUtils]: 22: Hoare triple {866#(and (<= 0 main_~x~0) (<= 1 main_~y~0) (<= main_~x~0 2))} [115] L31-->L38-2: Formula: (and (= v_main_~b~0_2 0) (= v_main_~q~0_2 0) (= v_main_~a~0_2 0) (= v_main_~r~0_2 v_main_~x~0_5)) InVars {main_~x~0=v_main_~x~0_5} OutVars{main_~q~0=v_main_~q~0_2, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0, main_~a~0] {870#(and (<= main_~r~0 2) (<= 1 main_~y~0))} is VALID [2022-04-14 20:39:29,539 INFO L290 TraceCheckUtils]: 23: Hoare triple {870#(and (<= main_~r~0 2) (<= 1 main_~y~0))} [118] L38-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {870#(and (<= main_~r~0 2) (<= 1 main_~y~0))} is VALID [2022-04-14 20:39:29,539 INFO L272 TraceCheckUtils]: 24: Hoare triple {870#(and (<= main_~r~0 2) (<= 1 main_~y~0))} [120] L39-->__VERIFIER_assertENTRY: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {795#true} is VALID [2022-04-14 20:39:29,539 INFO L290 TraceCheckUtils]: 25: Hoare triple {795#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {795#true} is VALID [2022-04-14 20:39:29,539 INFO L290 TraceCheckUtils]: 26: Hoare triple {795#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:29,539 INFO L290 TraceCheckUtils]: 27: Hoare triple {795#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:29,540 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {795#true} {870#(and (<= main_~r~0 2) (<= 1 main_~y~0))} [148] __VERIFIER_assertEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {870#(and (<= main_~r~0 2) (<= 1 main_~y~0))} is VALID [2022-04-14 20:39:29,540 INFO L272 TraceCheckUtils]: 29: Hoare triple {870#(and (<= main_~r~0 2) (<= 1 main_~y~0))} [123] L39-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {795#true} is VALID [2022-04-14 20:39:29,540 INFO L290 TraceCheckUtils]: 30: Hoare triple {795#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {795#true} is VALID [2022-04-14 20:39:29,540 INFO L290 TraceCheckUtils]: 31: Hoare triple {795#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:29,540 INFO L290 TraceCheckUtils]: 32: Hoare triple {795#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:29,541 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {795#true} {870#(and (<= main_~r~0 2) (<= 1 main_~y~0))} [149] __VERIFIER_assertEXIT-->L40: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {870#(and (<= main_~r~0 2) (<= 1 main_~y~0))} is VALID [2022-04-14 20:39:29,541 INFO L290 TraceCheckUtils]: 34: Hoare triple {870#(and (<= main_~r~0 2) (<= 1 main_~y~0))} [128] L40-->L47-2: Formula: (and (= v_main_~b~0_4 v_main_~y~0_8) (<= v_main_~y~0_8 v_main_~r~0_5) (= v_main_~a~0_4 1)) InVars {main_~y~0=v_main_~y~0_8, main_~r~0=v_main_~r~0_5} OutVars{main_~y~0=v_main_~y~0_8, main_~b~0=v_main_~b~0_4, main_~r~0=v_main_~r~0_5, main_~a~0=v_main_~a~0_4} AuxVars[] AssignedVars[main_~b~0, main_~a~0] {907#(and (= main_~a~0 1) (<= main_~y~0 2) (= main_~b~0 main_~y~0) (<= 1 main_~y~0))} is VALID [2022-04-14 20:39:29,542 INFO L290 TraceCheckUtils]: 35: Hoare triple {907#(and (= main_~a~0 1) (<= main_~y~0 2) (= main_~b~0 main_~y~0) (<= 1 main_~y~0))} [134] L47-2-->L48: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {907#(and (= main_~a~0 1) (<= main_~y~0 2) (= main_~b~0 main_~y~0) (<= 1 main_~y~0))} is VALID [2022-04-14 20:39:29,542 INFO L272 TraceCheckUtils]: 36: Hoare triple {907#(and (= main_~a~0 1) (<= main_~y~0 2) (= main_~b~0 main_~y~0) (<= 1 main_~y~0))} [136] L48-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_3| (ite (= (* v_main_~y~0_17 v_main_~a~0_11) v_main_~b~0_12) 1 0)) InVars {main_~y~0=v_main_~y~0_17, main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {914#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 20:39:29,543 INFO L290 TraceCheckUtils]: 37: Hoare triple {914#(<= 1 |__VERIFIER_assert_#in~cond|)} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {918#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 20:39:29,543 INFO L290 TraceCheckUtils]: 38: Hoare triple {918#(<= 1 __VERIFIER_assert_~cond)} [125] L15-->L16: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {796#false} is VALID [2022-04-14 20:39:29,543 INFO L290 TraceCheckUtils]: 39: Hoare triple {796#false} [129] L16-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {796#false} is VALID [2022-04-14 20:39:29,543 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 7 proven. 3 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2022-04-14 20:39:29,543 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 20:39:29,770 INFO L290 TraceCheckUtils]: 39: Hoare triple {796#false} [129] L16-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {796#false} is VALID [2022-04-14 20:39:29,771 INFO L290 TraceCheckUtils]: 38: Hoare triple {918#(<= 1 __VERIFIER_assert_~cond)} [125] L15-->L16: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {796#false} is VALID [2022-04-14 20:39:29,771 INFO L290 TraceCheckUtils]: 37: Hoare triple {914#(<= 1 |__VERIFIER_assert_#in~cond|)} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {918#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 20:39:29,772 INFO L272 TraceCheckUtils]: 36: Hoare triple {934#(= main_~b~0 (* main_~a~0 main_~y~0))} [136] L48-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_3| (ite (= (* v_main_~y~0_17 v_main_~a~0_11) v_main_~b~0_12) 1 0)) InVars {main_~y~0=v_main_~y~0_17, main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {914#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 20:39:29,772 INFO L290 TraceCheckUtils]: 35: Hoare triple {934#(= main_~b~0 (* main_~a~0 main_~y~0))} [134] L47-2-->L48: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {934#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-14 20:39:29,772 INFO L290 TraceCheckUtils]: 34: Hoare triple {795#true} [128] L40-->L47-2: Formula: (and (= v_main_~b~0_4 v_main_~y~0_8) (<= v_main_~y~0_8 v_main_~r~0_5) (= v_main_~a~0_4 1)) InVars {main_~y~0=v_main_~y~0_8, main_~r~0=v_main_~r~0_5} OutVars{main_~y~0=v_main_~y~0_8, main_~b~0=v_main_~b~0_4, main_~r~0=v_main_~r~0_5, main_~a~0=v_main_~a~0_4} AuxVars[] AssignedVars[main_~b~0, main_~a~0] {934#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-14 20:39:29,773 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {795#true} {795#true} [149] __VERIFIER_assertEXIT-->L40: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {795#true} is VALID [2022-04-14 20:39:29,773 INFO L290 TraceCheckUtils]: 32: Hoare triple {795#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:29,773 INFO L290 TraceCheckUtils]: 31: Hoare triple {795#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:29,773 INFO L290 TraceCheckUtils]: 30: Hoare triple {795#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {795#true} is VALID [2022-04-14 20:39:29,773 INFO L272 TraceCheckUtils]: 29: Hoare triple {795#true} [123] L39-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {795#true} is VALID [2022-04-14 20:39:29,773 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {795#true} {795#true} [148] __VERIFIER_assertEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {795#true} is VALID [2022-04-14 20:39:29,773 INFO L290 TraceCheckUtils]: 27: Hoare triple {795#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:29,773 INFO L290 TraceCheckUtils]: 26: Hoare triple {795#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:29,773 INFO L290 TraceCheckUtils]: 25: Hoare triple {795#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {795#true} is VALID [2022-04-14 20:39:29,773 INFO L272 TraceCheckUtils]: 24: Hoare triple {795#true} [120] L39-->__VERIFIER_assertENTRY: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {795#true} is VALID [2022-04-14 20:39:29,773 INFO L290 TraceCheckUtils]: 23: Hoare triple {795#true} [118] L38-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:29,774 INFO L290 TraceCheckUtils]: 22: Hoare triple {795#true} [115] L31-->L38-2: Formula: (and (= v_main_~b~0_2 0) (= v_main_~q~0_2 0) (= v_main_~a~0_2 0) (= v_main_~r~0_2 v_main_~x~0_5)) InVars {main_~x~0=v_main_~x~0_5} OutVars{main_~q~0=v_main_~q~0_2, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0, main_~a~0] {795#true} is VALID [2022-04-14 20:39:29,774 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {795#true} {795#true} [146] assume_abort_if_notEXIT-->L31: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {795#true} is VALID [2022-04-14 20:39:29,774 INFO L290 TraceCheckUtils]: 20: Hoare triple {795#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:29,774 INFO L290 TraceCheckUtils]: 19: Hoare triple {795#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:29,774 INFO L290 TraceCheckUtils]: 18: Hoare triple {795#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {795#true} is VALID [2022-04-14 20:39:29,774 INFO L272 TraceCheckUtils]: 17: Hoare triple {795#true} [113] L29-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {795#true} is VALID [2022-04-14 20:39:29,774 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {795#true} {795#true} [145] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {795#true} is VALID [2022-04-14 20:39:29,774 INFO L290 TraceCheckUtils]: 15: Hoare triple {795#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:29,774 INFO L290 TraceCheckUtils]: 14: Hoare triple {795#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:29,774 INFO L290 TraceCheckUtils]: 13: Hoare triple {795#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {795#true} is VALID [2022-04-14 20:39:29,774 INFO L272 TraceCheckUtils]: 12: Hoare triple {795#true} [110] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {795#true} is VALID [2022-04-14 20:39:29,775 INFO L290 TraceCheckUtils]: 11: Hoare triple {795#true} [108] L27-1-->L29: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~y~0] {795#true} is VALID [2022-04-14 20:39:29,775 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {795#true} {795#true} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {795#true} is VALID [2022-04-14 20:39:29,775 INFO L290 TraceCheckUtils]: 9: Hoare triple {795#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:29,775 INFO L290 TraceCheckUtils]: 8: Hoare triple {795#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:29,775 INFO L290 TraceCheckUtils]: 7: Hoare triple {795#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {795#true} is VALID [2022-04-14 20:39:29,776 INFO L272 TraceCheckUtils]: 6: Hoare triple {795#true} [107] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {795#true} is VALID [2022-04-14 20:39:29,776 INFO L290 TraceCheckUtils]: 5: Hoare triple {795#true} [105] mainENTRY-->L27: Formula: (and (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_1, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1, main_~a~0=v_main_~a~0_1} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~r~0, main_~a~0] {795#true} is VALID [2022-04-14 20:39:29,776 INFO L272 TraceCheckUtils]: 4: Hoare triple {795#true} [102] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:29,776 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {795#true} {795#true} [143] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:29,777 INFO L290 TraceCheckUtils]: 2: Hoare triple {795#true} [106] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:29,777 INFO L290 TraceCheckUtils]: 1: Hoare triple {795#true} [103] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select |v_#length_1| 2) 14) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {795#true} is VALID [2022-04-14 20:39:29,777 INFO L272 TraceCheckUtils]: 0: Hoare triple {795#true} [101] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:29,777 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-14 20:39:29,777 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 20:39:29,777 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1196229738] [2022-04-14 20:39:29,777 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 20:39:29,777 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1886950230] [2022-04-14 20:39:29,777 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1886950230] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-14 20:39:29,777 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-14 20:39:29,777 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [10] total 11 [2022-04-14 20:39:29,778 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2081307919] [2022-04-14 20:39:29,778 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 20:39:29,780 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) Word has length 40 [2022-04-14 20:39:29,780 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 20:39:29,780 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-14 20:39:29,800 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-14 20:39:29,800 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-14 20:39:29,800 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 20:39:29,801 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-14 20:39:29,801 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=89, Unknown=0, NotChecked=0, Total=110 [2022-04-14 20:39:29,801 INFO L87 Difference]: Start difference. First operand 53 states and 67 transitions. Second operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-14 20:39:29,951 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:29,951 INFO L93 Difference]: Finished difference Result 57 states and 70 transitions. [2022-04-14 20:39:29,951 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-14 20:39:29,951 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) Word has length 40 [2022-04-14 20:39:29,952 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 20:39:29,952 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-14 20:39:29,953 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 47 transitions. [2022-04-14 20:39:29,953 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-14 20:39:29,954 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 47 transitions. [2022-04-14 20:39:29,954 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 47 transitions. [2022-04-14 20:39:29,988 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:39:29,989 INFO L225 Difference]: With dead ends: 57 [2022-04-14 20:39:29,989 INFO L226 Difference]: Without dead ends: 57 [2022-04-14 20:39:29,989 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 80 GetRequests, 69 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=25, Invalid=107, Unknown=0, NotChecked=0, Total=132 [2022-04-14 20:39:29,990 INFO L913 BasicCegarLoop]: 33 mSDtfsCounter, 10 mSDsluCounter, 69 mSDsCounter, 0 mSdLazyCounter, 53 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 16 SdHoareTripleChecker+Valid, 102 SdHoareTripleChecker+Invalid, 56 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 53 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-14 20:39:29,990 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [16 Valid, 102 Invalid, 56 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 53 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-14 20:39:29,990 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 57 states. [2022-04-14 20:39:29,993 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 57 to 57. [2022-04-14 20:39:29,993 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 20:39:29,995 INFO L82 GeneralOperation]: Start isEquivalent. First operand 57 states. Second operand has 57 states, 32 states have (on average 1.125) internal successors, (36), 33 states have internal predecessors, (36), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-14 20:39:29,995 INFO L74 IsIncluded]: Start isIncluded. First operand 57 states. Second operand has 57 states, 32 states have (on average 1.125) internal successors, (36), 33 states have internal predecessors, (36), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-14 20:39:29,995 INFO L87 Difference]: Start difference. First operand 57 states. Second operand has 57 states, 32 states have (on average 1.125) internal successors, (36), 33 states have internal predecessors, (36), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-14 20:39:29,997 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:29,998 INFO L93 Difference]: Finished difference Result 57 states and 70 transitions. [2022-04-14 20:39:29,998 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 70 transitions. [2022-04-14 20:39:29,998 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:39:29,998 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:39:29,998 INFO L74 IsIncluded]: Start isIncluded. First operand has 57 states, 32 states have (on average 1.125) internal successors, (36), 33 states have internal predecessors, (36), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 57 states. [2022-04-14 20:39:29,999 INFO L87 Difference]: Start difference. First operand has 57 states, 32 states have (on average 1.125) internal successors, (36), 33 states have internal predecessors, (36), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 57 states. [2022-04-14 20:39:30,004 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:30,005 INFO L93 Difference]: Finished difference Result 57 states and 70 transitions. [2022-04-14 20:39:30,005 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 70 transitions. [2022-04-14 20:39:30,005 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:39:30,005 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:39:30,005 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 20:39:30,005 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 20:39:30,006 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 57 states, 32 states have (on average 1.125) internal successors, (36), 33 states have internal predecessors, (36), 18 states have call successors, (18), 7 states have call predecessors, (18), 6 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-14 20:39:30,009 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 57 states to 57 states and 70 transitions. [2022-04-14 20:39:30,009 INFO L78 Accepts]: Start accepts. Automaton has 57 states and 70 transitions. Word has length 40 [2022-04-14 20:39:30,009 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 20:39:30,009 INFO L478 AbstractCegarLoop]: Abstraction has 57 states and 70 transitions. [2022-04-14 20:39:30,009 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-14 20:39:30,009 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 70 transitions. [2022-04-14 20:39:30,010 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2022-04-14 20:39:30,010 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 20:39:30,010 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 20:39:30,029 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-14 20:39:30,229 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-14 20:39:30,232 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 20:39:30,232 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 20:39:30,232 INFO L85 PathProgramCache]: Analyzing trace with hash -574143214, now seen corresponding path program 1 times [2022-04-14 20:39:30,232 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 20:39:30,232 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1848685710] [2022-04-14 20:39:30,232 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:39:30,232 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 20:39:30,249 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 20:39:30,250 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1555377041] [2022-04-14 20:39:30,250 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:39:30,250 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:39:30,250 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 20:39:30,250 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-14 20:39:30,251 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-14 20:39:30,287 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:39:30,288 INFO L263 TraceCheckSpWp]: Trace formula consists of 134 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-14 20:39:30,295 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:39:30,296 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 20:39:30,484 INFO L272 TraceCheckUtils]: 0: Hoare triple {1275#true} [101] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1275#true} is VALID [2022-04-14 20:39:30,485 INFO L290 TraceCheckUtils]: 1: Hoare triple {1275#true} [103] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select |v_#length_1| 2) 14) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1275#true} is VALID [2022-04-14 20:39:30,485 INFO L290 TraceCheckUtils]: 2: Hoare triple {1275#true} [106] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1275#true} is VALID [2022-04-14 20:39:30,485 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1275#true} {1275#true} [143] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1275#true} is VALID [2022-04-14 20:39:30,485 INFO L272 TraceCheckUtils]: 4: Hoare triple {1275#true} [102] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1275#true} is VALID [2022-04-14 20:39:30,485 INFO L290 TraceCheckUtils]: 5: Hoare triple {1275#true} [105] mainENTRY-->L27: Formula: (and (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_1, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1, main_~a~0=v_main_~a~0_1} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~r~0, main_~a~0] {1275#true} is VALID [2022-04-14 20:39:30,485 INFO L272 TraceCheckUtils]: 6: Hoare triple {1275#true} [107] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {1275#true} is VALID [2022-04-14 20:39:30,485 INFO L290 TraceCheckUtils]: 7: Hoare triple {1275#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1275#true} is VALID [2022-04-14 20:39:30,485 INFO L290 TraceCheckUtils]: 8: Hoare triple {1275#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1275#true} is VALID [2022-04-14 20:39:30,486 INFO L290 TraceCheckUtils]: 9: Hoare triple {1275#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1275#true} is VALID [2022-04-14 20:39:30,486 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1275#true} {1275#true} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {1275#true} is VALID [2022-04-14 20:39:30,486 INFO L290 TraceCheckUtils]: 11: Hoare triple {1275#true} [108] L27-1-->L29: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~y~0] {1275#true} is VALID [2022-04-14 20:39:30,486 INFO L272 TraceCheckUtils]: 12: Hoare triple {1275#true} [110] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1275#true} is VALID [2022-04-14 20:39:30,486 INFO L290 TraceCheckUtils]: 13: Hoare triple {1275#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1275#true} is VALID [2022-04-14 20:39:30,486 INFO L290 TraceCheckUtils]: 14: Hoare triple {1275#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1275#true} is VALID [2022-04-14 20:39:30,486 INFO L290 TraceCheckUtils]: 15: Hoare triple {1275#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1275#true} is VALID [2022-04-14 20:39:30,486 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1275#true} {1275#true} [145] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1275#true} is VALID [2022-04-14 20:39:30,486 INFO L272 TraceCheckUtils]: 17: Hoare triple {1275#true} [113] L29-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1275#true} is VALID [2022-04-14 20:39:30,487 INFO L290 TraceCheckUtils]: 18: Hoare triple {1275#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1334#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-14 20:39:30,487 INFO L290 TraceCheckUtils]: 19: Hoare triple {1334#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1338#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 20:39:30,487 INFO L290 TraceCheckUtils]: 20: Hoare triple {1338#(not (= |assume_abort_if_not_#in~cond| 0))} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1338#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 20:39:30,488 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1338#(not (= |assume_abort_if_not_#in~cond| 0))} {1275#true} [146] assume_abort_if_notEXIT-->L31: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1345#(<= 1 main_~y~0)} is VALID [2022-04-14 20:39:30,488 INFO L290 TraceCheckUtils]: 22: Hoare triple {1345#(<= 1 main_~y~0)} [115] L31-->L38-2: Formula: (and (= v_main_~b~0_2 0) (= v_main_~q~0_2 0) (= v_main_~a~0_2 0) (= v_main_~r~0_2 v_main_~x~0_5)) InVars {main_~x~0=v_main_~x~0_5} OutVars{main_~q~0=v_main_~q~0_2, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0, main_~a~0] {1345#(<= 1 main_~y~0)} is VALID [2022-04-14 20:39:30,488 INFO L290 TraceCheckUtils]: 23: Hoare triple {1345#(<= 1 main_~y~0)} [118] L38-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1345#(<= 1 main_~y~0)} is VALID [2022-04-14 20:39:30,488 INFO L272 TraceCheckUtils]: 24: Hoare triple {1345#(<= 1 main_~y~0)} [120] L39-->__VERIFIER_assertENTRY: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {1275#true} is VALID [2022-04-14 20:39:30,489 INFO L290 TraceCheckUtils]: 25: Hoare triple {1275#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1275#true} is VALID [2022-04-14 20:39:30,489 INFO L290 TraceCheckUtils]: 26: Hoare triple {1275#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1275#true} is VALID [2022-04-14 20:39:30,489 INFO L290 TraceCheckUtils]: 27: Hoare triple {1275#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1275#true} is VALID [2022-04-14 20:39:30,489 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1275#true} {1345#(<= 1 main_~y~0)} [148] __VERIFIER_assertEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {1345#(<= 1 main_~y~0)} is VALID [2022-04-14 20:39:30,489 INFO L272 TraceCheckUtils]: 29: Hoare triple {1345#(<= 1 main_~y~0)} [123] L39-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {1275#true} is VALID [2022-04-14 20:39:30,489 INFO L290 TraceCheckUtils]: 30: Hoare triple {1275#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1275#true} is VALID [2022-04-14 20:39:30,489 INFO L290 TraceCheckUtils]: 31: Hoare triple {1275#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1275#true} is VALID [2022-04-14 20:39:30,489 INFO L290 TraceCheckUtils]: 32: Hoare triple {1275#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1275#true} is VALID [2022-04-14 20:39:30,490 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1275#true} {1345#(<= 1 main_~y~0)} [149] __VERIFIER_assertEXIT-->L40: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {1345#(<= 1 main_~y~0)} is VALID [2022-04-14 20:39:30,490 INFO L290 TraceCheckUtils]: 34: Hoare triple {1345#(<= 1 main_~y~0)} [128] L40-->L47-2: Formula: (and (= v_main_~b~0_4 v_main_~y~0_8) (<= v_main_~y~0_8 v_main_~r~0_5) (= v_main_~a~0_4 1)) InVars {main_~y~0=v_main_~y~0_8, main_~r~0=v_main_~r~0_5} OutVars{main_~y~0=v_main_~y~0_8, main_~b~0=v_main_~b~0_4, main_~r~0=v_main_~r~0_5, main_~a~0=v_main_~a~0_4} AuxVars[] AssignedVars[main_~b~0, main_~a~0] {1385#(<= 1 main_~r~0)} is VALID [2022-04-14 20:39:30,491 INFO L290 TraceCheckUtils]: 35: Hoare triple {1385#(<= 1 main_~r~0)} [134] L47-2-->L48: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1385#(<= 1 main_~r~0)} is VALID [2022-04-14 20:39:30,491 INFO L272 TraceCheckUtils]: 36: Hoare triple {1385#(<= 1 main_~r~0)} [136] L48-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_3| (ite (= (* v_main_~y~0_17 v_main_~a~0_11) v_main_~b~0_12) 1 0)) InVars {main_~y~0=v_main_~y~0_17, main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {1275#true} is VALID [2022-04-14 20:39:30,491 INFO L290 TraceCheckUtils]: 37: Hoare triple {1275#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1275#true} is VALID [2022-04-14 20:39:30,491 INFO L290 TraceCheckUtils]: 38: Hoare triple {1275#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1275#true} is VALID [2022-04-14 20:39:30,491 INFO L290 TraceCheckUtils]: 39: Hoare triple {1275#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1275#true} is VALID [2022-04-14 20:39:30,493 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {1275#true} {1385#(<= 1 main_~r~0)} [150] __VERIFIER_assertEXIT-->L48-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_3| (ite (= (* v_main_~y~0_17 v_main_~a~0_11) v_main_~b~0_12) 1 0)) InVars {main_~y~0=v_main_~y~0_17, main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {1385#(<= 1 main_~r~0)} is VALID [2022-04-14 20:39:30,493 INFO L272 TraceCheckUtils]: 41: Hoare triple {1385#(<= 1 main_~r~0)} [137] L48-1-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~x~0_11 (+ v_main_~r~0_15 (* v_main_~y~0_18 v_main_~q~0_9))) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~q~0=v_main_~q~0_9, main_~y~0=v_main_~y~0_18, main_~x~0=v_main_~x~0_11, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {1275#true} is VALID [2022-04-14 20:39:30,493 INFO L290 TraceCheckUtils]: 42: Hoare triple {1275#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1275#true} is VALID [2022-04-14 20:39:30,493 INFO L290 TraceCheckUtils]: 43: Hoare triple {1275#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1275#true} is VALID [2022-04-14 20:39:30,493 INFO L290 TraceCheckUtils]: 44: Hoare triple {1275#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1275#true} is VALID [2022-04-14 20:39:30,494 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {1275#true} {1385#(<= 1 main_~r~0)} [151] __VERIFIER_assertEXIT-->L49: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= v_main_~x~0_11 (+ v_main_~r~0_15 (* v_main_~y~0_18 v_main_~q~0_9))) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~q~0=v_main_~q~0_9, main_~y~0=v_main_~y~0_18, main_~x~0=v_main_~x~0_11, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {1385#(<= 1 main_~r~0)} is VALID [2022-04-14 20:39:30,494 INFO L272 TraceCheckUtils]: 46: Hoare triple {1385#(<= 1 main_~r~0)} [138] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_5| (ite (<= 0 v_main_~r~0_16) 1 0)) InVars {main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_5|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~r~0] {1422#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 20:39:30,495 INFO L290 TraceCheckUtils]: 47: Hoare triple {1422#(<= 1 |__VERIFIER_assert_#in~cond|)} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1426#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 20:39:30,495 INFO L290 TraceCheckUtils]: 48: Hoare triple {1426#(<= 1 __VERIFIER_assert_~cond)} [125] L15-->L16: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1276#false} is VALID [2022-04-14 20:39:30,495 INFO L290 TraceCheckUtils]: 49: Hoare triple {1276#false} [129] L16-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1276#false} is VALID [2022-04-14 20:39:30,495 INFO L134 CoverageAnalysis]: Checked inductivity of 44 backedges. 14 proven. 0 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2022-04-14 20:39:30,495 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 20:39:30,496 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 20:39:30,496 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1848685710] [2022-04-14 20:39:30,496 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 20:39:30,496 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1555377041] [2022-04-14 20:39:30,496 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1555377041] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 20:39:30,496 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 20:39:30,496 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-14 20:39:30,496 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1972909108] [2022-04-14 20:39:30,496 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 20:39:30,496 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) Word has length 50 [2022-04-14 20:39:30,497 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 20:39:30,497 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-14 20:39:30,522 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:39:30,522 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-14 20:39:30,522 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 20:39:30,523 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-14 20:39:30,523 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-04-14 20:39:30,523 INFO L87 Difference]: Start difference. First operand 57 states and 70 transitions. Second operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-14 20:39:30,772 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:30,772 INFO L93 Difference]: Finished difference Result 61 states and 73 transitions. [2022-04-14 20:39:30,772 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-14 20:39:30,773 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) Word has length 50 [2022-04-14 20:39:30,773 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 20:39:30,773 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-14 20:39:30,774 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-14 20:39:30,774 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-14 20:39:30,775 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-14 20:39:30,775 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 47 transitions. [2022-04-14 20:39:30,806 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:39:30,807 INFO L225 Difference]: With dead ends: 61 [2022-04-14 20:39:30,807 INFO L226 Difference]: Without dead ends: 61 [2022-04-14 20:39:30,808 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 52 GetRequests, 43 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=25, Invalid=85, Unknown=0, NotChecked=0, Total=110 [2022-04-14 20:39:30,808 INFO L913 BasicCegarLoop]: 34 mSDtfsCounter, 16 mSDsluCounter, 126 mSDsCounter, 0 mSdLazyCounter, 125 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 16 SdHoareTripleChecker+Valid, 160 SdHoareTripleChecker+Invalid, 132 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 125 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-14 20:39:30,808 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [16 Valid, 160 Invalid, 132 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 125 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-14 20:39:30,809 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 61 states. [2022-04-14 20:39:30,811 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 61 to 61. [2022-04-14 20:39:30,812 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 20:39:30,812 INFO L82 GeneralOperation]: Start isEquivalent. First operand 61 states. Second operand has 61 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 36 states have internal predecessors, (39), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-14 20:39:30,812 INFO L74 IsIncluded]: Start isIncluded. First operand 61 states. Second operand has 61 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 36 states have internal predecessors, (39), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-14 20:39:30,812 INFO L87 Difference]: Start difference. First operand 61 states. Second operand has 61 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 36 states have internal predecessors, (39), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-14 20:39:30,814 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:30,814 INFO L93 Difference]: Finished difference Result 61 states and 73 transitions. [2022-04-14 20:39:30,814 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 73 transitions. [2022-04-14 20:39:30,815 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:39:30,815 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:39:30,815 INFO L74 IsIncluded]: Start isIncluded. First operand has 61 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 36 states have internal predecessors, (39), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 61 states. [2022-04-14 20:39:30,815 INFO L87 Difference]: Start difference. First operand has 61 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 36 states have internal predecessors, (39), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 61 states. [2022-04-14 20:39:30,817 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:30,817 INFO L93 Difference]: Finished difference Result 61 states and 73 transitions. [2022-04-14 20:39:30,817 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 73 transitions. [2022-04-14 20:39:30,817 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:39:30,817 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:39:30,817 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 20:39:30,817 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 20:39:30,817 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 61 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 36 states have internal predecessors, (39), 18 states have call successors, (18), 8 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-14 20:39:30,824 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 61 states to 61 states and 73 transitions. [2022-04-14 20:39:30,824 INFO L78 Accepts]: Start accepts. Automaton has 61 states and 73 transitions. Word has length 50 [2022-04-14 20:39:30,824 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 20:39:30,825 INFO L478 AbstractCegarLoop]: Abstraction has 61 states and 73 transitions. [2022-04-14 20:39:30,825 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-14 20:39:30,825 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 73 transitions. [2022-04-14 20:39:30,825 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 57 [2022-04-14 20:39:30,825 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 20:39:30,825 INFO L499 BasicCegarLoop]: trace histogram [6, 5, 5, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 20:39:30,843 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-14 20:39:31,026 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-14 20:39:31,026 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 20:39:31,026 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 20:39:31,026 INFO L85 PathProgramCache]: Analyzing trace with hash -810208713, now seen corresponding path program 1 times [2022-04-14 20:39:31,026 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 20:39:31,026 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [791233961] [2022-04-14 20:39:31,026 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:39:31,027 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 20:39:31,037 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 20:39:31,037 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1882346916] [2022-04-14 20:39:31,037 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:39:31,038 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:39:31,038 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 20:39:31,045 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-14 20:39:31,046 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-14 20:39:31,084 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:39:31,084 INFO L263 TraceCheckSpWp]: Trace formula consists of 144 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-14 20:39:31,099 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:39:31,100 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 20:39:31,349 INFO L272 TraceCheckUtils]: 0: Hoare triple {1682#true} [101] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:31,349 INFO L290 TraceCheckUtils]: 1: Hoare triple {1682#true} [103] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select |v_#length_1| 2) 14) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1682#true} is VALID [2022-04-14 20:39:31,349 INFO L290 TraceCheckUtils]: 2: Hoare triple {1682#true} [106] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:31,349 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1682#true} {1682#true} [143] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:31,349 INFO L272 TraceCheckUtils]: 4: Hoare triple {1682#true} [102] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:31,349 INFO L290 TraceCheckUtils]: 5: Hoare triple {1682#true} [105] mainENTRY-->L27: Formula: (and (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_1, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1, main_~a~0=v_main_~a~0_1} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~r~0, main_~a~0] {1682#true} is VALID [2022-04-14 20:39:31,350 INFO L272 TraceCheckUtils]: 6: Hoare triple {1682#true} [107] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {1682#true} is VALID [2022-04-14 20:39:31,350 INFO L290 TraceCheckUtils]: 7: Hoare triple {1682#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1682#true} is VALID [2022-04-14 20:39:31,350 INFO L290 TraceCheckUtils]: 8: Hoare triple {1682#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:31,350 INFO L290 TraceCheckUtils]: 9: Hoare triple {1682#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:31,350 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1682#true} {1682#true} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {1682#true} is VALID [2022-04-14 20:39:31,350 INFO L290 TraceCheckUtils]: 11: Hoare triple {1682#true} [108] L27-1-->L29: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~y~0] {1682#true} is VALID [2022-04-14 20:39:31,350 INFO L272 TraceCheckUtils]: 12: Hoare triple {1682#true} [110] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1682#true} is VALID [2022-04-14 20:39:31,350 INFO L290 TraceCheckUtils]: 13: Hoare triple {1682#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1682#true} is VALID [2022-04-14 20:39:31,350 INFO L290 TraceCheckUtils]: 14: Hoare triple {1682#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:31,350 INFO L290 TraceCheckUtils]: 15: Hoare triple {1682#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:31,350 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1682#true} {1682#true} [145] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1682#true} is VALID [2022-04-14 20:39:31,350 INFO L272 TraceCheckUtils]: 17: Hoare triple {1682#true} [113] L29-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1682#true} is VALID [2022-04-14 20:39:31,351 INFO L290 TraceCheckUtils]: 18: Hoare triple {1682#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1682#true} is VALID [2022-04-14 20:39:31,351 INFO L290 TraceCheckUtils]: 19: Hoare triple {1682#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:31,351 INFO L290 TraceCheckUtils]: 20: Hoare triple {1682#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:31,351 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1682#true} {1682#true} [146] assume_abort_if_notEXIT-->L31: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1682#true} is VALID [2022-04-14 20:39:31,351 INFO L290 TraceCheckUtils]: 22: Hoare triple {1682#true} [115] L31-->L38-2: Formula: (and (= v_main_~b~0_2 0) (= v_main_~q~0_2 0) (= v_main_~a~0_2 0) (= v_main_~r~0_2 v_main_~x~0_5)) InVars {main_~x~0=v_main_~x~0_5} OutVars{main_~q~0=v_main_~q~0_2, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0, main_~a~0] {1682#true} is VALID [2022-04-14 20:39:31,351 INFO L290 TraceCheckUtils]: 23: Hoare triple {1682#true} [118] L38-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:31,351 INFO L272 TraceCheckUtils]: 24: Hoare triple {1682#true} [120] L39-->__VERIFIER_assertENTRY: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {1682#true} is VALID [2022-04-14 20:39:31,351 INFO L290 TraceCheckUtils]: 25: Hoare triple {1682#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1682#true} is VALID [2022-04-14 20:39:31,351 INFO L290 TraceCheckUtils]: 26: Hoare triple {1682#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:31,351 INFO L290 TraceCheckUtils]: 27: Hoare triple {1682#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:31,351 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1682#true} {1682#true} [148] __VERIFIER_assertEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {1682#true} is VALID [2022-04-14 20:39:31,352 INFO L272 TraceCheckUtils]: 29: Hoare triple {1682#true} [123] L39-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {1682#true} is VALID [2022-04-14 20:39:31,352 INFO L290 TraceCheckUtils]: 30: Hoare triple {1682#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1682#true} is VALID [2022-04-14 20:39:31,352 INFO L290 TraceCheckUtils]: 31: Hoare triple {1682#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:31,352 INFO L290 TraceCheckUtils]: 32: Hoare triple {1682#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:31,352 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1682#true} {1682#true} [149] __VERIFIER_assertEXIT-->L40: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {1682#true} is VALID [2022-04-14 20:39:31,352 INFO L290 TraceCheckUtils]: 34: Hoare triple {1682#true} [128] L40-->L47-2: Formula: (and (= v_main_~b~0_4 v_main_~y~0_8) (<= v_main_~y~0_8 v_main_~r~0_5) (= v_main_~a~0_4 1)) InVars {main_~y~0=v_main_~y~0_8, main_~r~0=v_main_~r~0_5} OutVars{main_~y~0=v_main_~y~0_8, main_~b~0=v_main_~b~0_4, main_~r~0=v_main_~r~0_5, main_~a~0=v_main_~a~0_4} AuxVars[] AssignedVars[main_~b~0, main_~a~0] {1682#true} is VALID [2022-04-14 20:39:31,352 INFO L290 TraceCheckUtils]: 35: Hoare triple {1682#true} [134] L47-2-->L48: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:31,352 INFO L272 TraceCheckUtils]: 36: Hoare triple {1682#true} [136] L48-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_3| (ite (= (* v_main_~y~0_17 v_main_~a~0_11) v_main_~b~0_12) 1 0)) InVars {main_~y~0=v_main_~y~0_17, main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {1682#true} is VALID [2022-04-14 20:39:31,355 INFO L290 TraceCheckUtils]: 37: Hoare triple {1682#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1798#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-14 20:39:31,356 INFO L290 TraceCheckUtils]: 38: Hoare triple {1798#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1802#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 20:39:31,356 INFO L290 TraceCheckUtils]: 39: Hoare triple {1802#(not (= |__VERIFIER_assert_#in~cond| 0))} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1802#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 20:39:31,357 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {1802#(not (= |__VERIFIER_assert_#in~cond| 0))} {1682#true} [150] __VERIFIER_assertEXIT-->L48-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_3| (ite (= (* v_main_~y~0_17 v_main_~a~0_11) v_main_~b~0_12) 1 0)) InVars {main_~y~0=v_main_~y~0_17, main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {1809#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-14 20:39:31,357 INFO L272 TraceCheckUtils]: 41: Hoare triple {1809#(= main_~b~0 (* main_~a~0 main_~y~0))} [137] L48-1-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~x~0_11 (+ v_main_~r~0_15 (* v_main_~y~0_18 v_main_~q~0_9))) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~q~0=v_main_~q~0_9, main_~y~0=v_main_~y~0_18, main_~x~0=v_main_~x~0_11, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {1682#true} is VALID [2022-04-14 20:39:31,357 INFO L290 TraceCheckUtils]: 42: Hoare triple {1682#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1682#true} is VALID [2022-04-14 20:39:31,357 INFO L290 TraceCheckUtils]: 43: Hoare triple {1682#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:31,357 INFO L290 TraceCheckUtils]: 44: Hoare triple {1682#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:31,358 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {1682#true} {1809#(= main_~b~0 (* main_~a~0 main_~y~0))} [151] __VERIFIER_assertEXIT-->L49: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= v_main_~x~0_11 (+ v_main_~r~0_15 (* v_main_~y~0_18 v_main_~q~0_9))) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~q~0=v_main_~q~0_9, main_~y~0=v_main_~y~0_18, main_~x~0=v_main_~x~0_11, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {1809#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-14 20:39:31,358 INFO L272 TraceCheckUtils]: 46: Hoare triple {1809#(= main_~b~0 (* main_~a~0 main_~y~0))} [138] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_5| (ite (<= 0 v_main_~r~0_16) 1 0)) InVars {main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_5|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~r~0] {1682#true} is VALID [2022-04-14 20:39:31,358 INFO L290 TraceCheckUtils]: 47: Hoare triple {1682#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1682#true} is VALID [2022-04-14 20:39:31,358 INFO L290 TraceCheckUtils]: 48: Hoare triple {1682#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:31,358 INFO L290 TraceCheckUtils]: 49: Hoare triple {1682#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:31,359 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {1682#true} {1809#(= main_~b~0 (* main_~a~0 main_~y~0))} [152] __VERIFIER_assertEXIT-->L50: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_5| (ite (<= 0 v_main_~r~0_16) 1 0)) InVars {main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_5|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~r~0] {1809#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-14 20:39:31,359 INFO L290 TraceCheckUtils]: 51: Hoare triple {1809#(= main_~b~0 (* main_~a~0 main_~y~0))} [140] L50-->L55: Formula: (<= (* v_main_~b~0_7 2) v_main_~r~0_9) InVars {main_~b~0=v_main_~b~0_7, main_~r~0=v_main_~r~0_9} OutVars{main_~b~0=v_main_~b~0_7, main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[] {1843#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} is VALID [2022-04-14 20:39:31,360 INFO L272 TraceCheckUtils]: 52: Hoare triple {1843#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} [142] L55-->__VERIFIER_assertENTRY: Formula: (= (ite (<= (* (* v_main_~y~0_19 v_main_~a~0_12) 2) v_main_~r~0_17) 1 0) |v___VERIFIER_assert_#in~condInParam_6|) InVars {main_~y~0=v_main_~y~0_19, main_~r~0=v_main_~r~0_17, main_~a~0=v_main_~a~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_6|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~r~0, main_~a~0] {1847#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 20:39:31,360 INFO L290 TraceCheckUtils]: 53: Hoare triple {1847#(<= 1 |__VERIFIER_assert_#in~cond|)} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1851#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 20:39:31,360 INFO L290 TraceCheckUtils]: 54: Hoare triple {1851#(<= 1 __VERIFIER_assert_~cond)} [125] L15-->L16: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1683#false} is VALID [2022-04-14 20:39:31,361 INFO L290 TraceCheckUtils]: 55: Hoare triple {1683#false} [129] L16-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1683#false} is VALID [2022-04-14 20:39:31,361 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 15 proven. 7 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-04-14 20:39:31,361 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 20:39:37,752 INFO L290 TraceCheckUtils]: 55: Hoare triple {1683#false} [129] L16-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1683#false} is VALID [2022-04-14 20:39:37,753 INFO L290 TraceCheckUtils]: 54: Hoare triple {1851#(<= 1 __VERIFIER_assert_~cond)} [125] L15-->L16: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1683#false} is VALID [2022-04-14 20:39:37,753 INFO L290 TraceCheckUtils]: 53: Hoare triple {1847#(<= 1 |__VERIFIER_assert_#in~cond|)} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1851#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 20:39:37,754 INFO L272 TraceCheckUtils]: 52: Hoare triple {1843#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} [142] L55-->__VERIFIER_assertENTRY: Formula: (= (ite (<= (* (* v_main_~y~0_19 v_main_~a~0_12) 2) v_main_~r~0_17) 1 0) |v___VERIFIER_assert_#in~condInParam_6|) InVars {main_~y~0=v_main_~y~0_19, main_~r~0=v_main_~r~0_17, main_~a~0=v_main_~a~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_6|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~r~0, main_~a~0] {1847#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 20:39:37,755 INFO L290 TraceCheckUtils]: 51: Hoare triple {1870#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} [140] L50-->L55: Formula: (<= (* v_main_~b~0_7 2) v_main_~r~0_9) InVars {main_~b~0=v_main_~b~0_7, main_~r~0=v_main_~r~0_9} OutVars{main_~b~0=v_main_~b~0_7, main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[] {1843#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} is VALID [2022-04-14 20:39:37,755 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {1682#true} {1870#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} [152] __VERIFIER_assertEXIT-->L50: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_5| (ite (<= 0 v_main_~r~0_16) 1 0)) InVars {main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_5|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~r~0] {1870#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} is VALID [2022-04-14 20:39:37,755 INFO L290 TraceCheckUtils]: 49: Hoare triple {1682#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:37,755 INFO L290 TraceCheckUtils]: 48: Hoare triple {1682#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:37,756 INFO L290 TraceCheckUtils]: 47: Hoare triple {1682#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1682#true} is VALID [2022-04-14 20:39:37,756 INFO L272 TraceCheckUtils]: 46: Hoare triple {1870#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} [138] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_5| (ite (<= 0 v_main_~r~0_16) 1 0)) InVars {main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_5|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~r~0] {1682#true} is VALID [2022-04-14 20:39:37,756 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {1682#true} {1870#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} [151] __VERIFIER_assertEXIT-->L49: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= v_main_~x~0_11 (+ v_main_~r~0_15 (* v_main_~y~0_18 v_main_~q~0_9))) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~q~0=v_main_~q~0_9, main_~y~0=v_main_~y~0_18, main_~x~0=v_main_~x~0_11, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {1870#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} is VALID [2022-04-14 20:39:37,756 INFO L290 TraceCheckUtils]: 44: Hoare triple {1682#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:37,756 INFO L290 TraceCheckUtils]: 43: Hoare triple {1682#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:37,757 INFO L290 TraceCheckUtils]: 42: Hoare triple {1682#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1682#true} is VALID [2022-04-14 20:39:37,757 INFO L272 TraceCheckUtils]: 41: Hoare triple {1870#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} [137] L48-1-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~x~0_11 (+ v_main_~r~0_15 (* v_main_~y~0_18 v_main_~q~0_9))) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~q~0=v_main_~q~0_9, main_~y~0=v_main_~y~0_18, main_~x~0=v_main_~x~0_11, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {1682#true} is VALID [2022-04-14 20:39:37,757 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {1802#(not (= |__VERIFIER_assert_#in~cond| 0))} {1682#true} [150] __VERIFIER_assertEXIT-->L48-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_3| (ite (= (* v_main_~y~0_17 v_main_~a~0_11) v_main_~b~0_12) 1 0)) InVars {main_~y~0=v_main_~y~0_17, main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {1870#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} is VALID [2022-04-14 20:39:37,758 INFO L290 TraceCheckUtils]: 39: Hoare triple {1802#(not (= |__VERIFIER_assert_#in~cond| 0))} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1802#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 20:39:37,758 INFO L290 TraceCheckUtils]: 38: Hoare triple {1913#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1802#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 20:39:37,759 INFO L290 TraceCheckUtils]: 37: Hoare triple {1682#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1913#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-14 20:39:37,759 INFO L272 TraceCheckUtils]: 36: Hoare triple {1682#true} [136] L48-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_3| (ite (= (* v_main_~y~0_17 v_main_~a~0_11) v_main_~b~0_12) 1 0)) InVars {main_~y~0=v_main_~y~0_17, main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {1682#true} is VALID [2022-04-14 20:39:37,759 INFO L290 TraceCheckUtils]: 35: Hoare triple {1682#true} [134] L47-2-->L48: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:37,759 INFO L290 TraceCheckUtils]: 34: Hoare triple {1682#true} [128] L40-->L47-2: Formula: (and (= v_main_~b~0_4 v_main_~y~0_8) (<= v_main_~y~0_8 v_main_~r~0_5) (= v_main_~a~0_4 1)) InVars {main_~y~0=v_main_~y~0_8, main_~r~0=v_main_~r~0_5} OutVars{main_~y~0=v_main_~y~0_8, main_~b~0=v_main_~b~0_4, main_~r~0=v_main_~r~0_5, main_~a~0=v_main_~a~0_4} AuxVars[] AssignedVars[main_~b~0, main_~a~0] {1682#true} is VALID [2022-04-14 20:39:37,759 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1682#true} {1682#true} [149] __VERIFIER_assertEXIT-->L40: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {1682#true} is VALID [2022-04-14 20:39:37,759 INFO L290 TraceCheckUtils]: 32: Hoare triple {1682#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:37,759 INFO L290 TraceCheckUtils]: 31: Hoare triple {1682#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:37,759 INFO L290 TraceCheckUtils]: 30: Hoare triple {1682#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1682#true} is VALID [2022-04-14 20:39:37,759 INFO L272 TraceCheckUtils]: 29: Hoare triple {1682#true} [123] L39-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {1682#true} is VALID [2022-04-14 20:39:37,759 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1682#true} {1682#true} [148] __VERIFIER_assertEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {1682#true} is VALID [2022-04-14 20:39:37,759 INFO L290 TraceCheckUtils]: 27: Hoare triple {1682#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:37,760 INFO L290 TraceCheckUtils]: 26: Hoare triple {1682#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:37,760 INFO L290 TraceCheckUtils]: 25: Hoare triple {1682#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1682#true} is VALID [2022-04-14 20:39:37,760 INFO L272 TraceCheckUtils]: 24: Hoare triple {1682#true} [120] L39-->__VERIFIER_assertENTRY: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {1682#true} is VALID [2022-04-14 20:39:37,760 INFO L290 TraceCheckUtils]: 23: Hoare triple {1682#true} [118] L38-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:37,760 INFO L290 TraceCheckUtils]: 22: Hoare triple {1682#true} [115] L31-->L38-2: Formula: (and (= v_main_~b~0_2 0) (= v_main_~q~0_2 0) (= v_main_~a~0_2 0) (= v_main_~r~0_2 v_main_~x~0_5)) InVars {main_~x~0=v_main_~x~0_5} OutVars{main_~q~0=v_main_~q~0_2, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0, main_~a~0] {1682#true} is VALID [2022-04-14 20:39:37,760 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1682#true} {1682#true} [146] assume_abort_if_notEXIT-->L31: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1682#true} is VALID [2022-04-14 20:39:37,760 INFO L290 TraceCheckUtils]: 20: Hoare triple {1682#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:37,760 INFO L290 TraceCheckUtils]: 19: Hoare triple {1682#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:37,760 INFO L290 TraceCheckUtils]: 18: Hoare triple {1682#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1682#true} is VALID [2022-04-14 20:39:37,760 INFO L272 TraceCheckUtils]: 17: Hoare triple {1682#true} [113] L29-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1682#true} is VALID [2022-04-14 20:39:37,760 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1682#true} {1682#true} [145] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1682#true} is VALID [2022-04-14 20:39:37,760 INFO L290 TraceCheckUtils]: 15: Hoare triple {1682#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:37,760 INFO L290 TraceCheckUtils]: 14: Hoare triple {1682#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:37,761 INFO L290 TraceCheckUtils]: 13: Hoare triple {1682#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1682#true} is VALID [2022-04-14 20:39:37,761 INFO L272 TraceCheckUtils]: 12: Hoare triple {1682#true} [110] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1682#true} is VALID [2022-04-14 20:39:37,761 INFO L290 TraceCheckUtils]: 11: Hoare triple {1682#true} [108] L27-1-->L29: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~y~0] {1682#true} is VALID [2022-04-14 20:39:37,761 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1682#true} {1682#true} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {1682#true} is VALID [2022-04-14 20:39:37,761 INFO L290 TraceCheckUtils]: 9: Hoare triple {1682#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:37,761 INFO L290 TraceCheckUtils]: 8: Hoare triple {1682#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:37,761 INFO L290 TraceCheckUtils]: 7: Hoare triple {1682#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1682#true} is VALID [2022-04-14 20:39:37,761 INFO L272 TraceCheckUtils]: 6: Hoare triple {1682#true} [107] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {1682#true} is VALID [2022-04-14 20:39:37,761 INFO L290 TraceCheckUtils]: 5: Hoare triple {1682#true} [105] mainENTRY-->L27: Formula: (and (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_1, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1, main_~a~0=v_main_~a~0_1} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~r~0, main_~a~0] {1682#true} is VALID [2022-04-14 20:39:37,761 INFO L272 TraceCheckUtils]: 4: Hoare triple {1682#true} [102] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:37,761 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1682#true} {1682#true} [143] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:37,762 INFO L290 TraceCheckUtils]: 2: Hoare triple {1682#true} [106] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:37,762 INFO L290 TraceCheckUtils]: 1: Hoare triple {1682#true} [103] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select |v_#length_1| 2) 14) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1682#true} is VALID [2022-04-14 20:39:37,762 INFO L272 TraceCheckUtils]: 0: Hoare triple {1682#true} [101] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#true} is VALID [2022-04-14 20:39:37,762 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 15 proven. 7 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-04-14 20:39:37,762 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 20:39:37,762 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [791233961] [2022-04-14 20:39:37,762 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 20:39:37,762 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1882346916] [2022-04-14 20:39:37,762 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1882346916] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-14 20:39:37,762 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-14 20:39:37,762 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-14 20:39:37,762 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1173616871] [2022-04-14 20:39:37,763 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-14 20:39:37,763 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) Word has length 56 [2022-04-14 20:39:37,763 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 20:39:37,763 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) [2022-04-14 20:39:37,806 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:39:37,806 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-14 20:39:37,807 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 20:39:37,807 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-14 20:39:37,807 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=68, Unknown=0, NotChecked=0, Total=90 [2022-04-14 20:39:37,807 INFO L87 Difference]: Start difference. First operand 61 states and 73 transitions. Second operand has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) [2022-04-14 20:39:38,076 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:38,076 INFO L93 Difference]: Finished difference Result 65 states and 76 transitions. [2022-04-14 20:39:38,076 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-14 20:39:38,076 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) Word has length 56 [2022-04-14 20:39:38,076 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 20:39:38,076 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) [2022-04-14 20:39:38,077 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-14 20:39:38,078 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) [2022-04-14 20:39:38,078 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-14 20:39:38,078 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 47 transitions. [2022-04-14 20:39:38,113 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:39:38,114 INFO L225 Difference]: With dead ends: 65 [2022-04-14 20:39:38,114 INFO L226 Difference]: Without dead ends: 65 [2022-04-14 20:39:38,115 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 114 GetRequests, 102 SyntacticMatches, 1 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=40, Invalid=116, Unknown=0, NotChecked=0, Total=156 [2022-04-14 20:39:38,115 INFO L913 BasicCegarLoop]: 28 mSDtfsCounter, 30 mSDsluCounter, 93 mSDsCounter, 0 mSdLazyCounter, 112 mSolverCounterSat, 16 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 32 SdHoareTripleChecker+Valid, 121 SdHoareTripleChecker+Invalid, 128 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 16 IncrementalHoareTripleChecker+Valid, 112 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-14 20:39:38,115 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [32 Valid, 121 Invalid, 128 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 112 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-14 20:39:38,116 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 65 states. [2022-04-14 20:39:38,118 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 65 to 65. [2022-04-14 20:39:38,118 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 20:39:38,118 INFO L82 GeneralOperation]: Start isEquivalent. First operand 65 states. Second operand has 65 states, 38 states have (on average 1.105263157894737) internal successors, (42), 39 states have internal predecessors, (42), 18 states have call successors, (18), 9 states have call predecessors, (18), 8 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-14 20:39:38,119 INFO L74 IsIncluded]: Start isIncluded. First operand 65 states. Second operand has 65 states, 38 states have (on average 1.105263157894737) internal successors, (42), 39 states have internal predecessors, (42), 18 states have call successors, (18), 9 states have call predecessors, (18), 8 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-14 20:39:38,119 INFO L87 Difference]: Start difference. First operand 65 states. Second operand has 65 states, 38 states have (on average 1.105263157894737) internal successors, (42), 39 states have internal predecessors, (42), 18 states have call successors, (18), 9 states have call predecessors, (18), 8 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-14 20:39:38,121 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:38,121 INFO L93 Difference]: Finished difference Result 65 states and 76 transitions. [2022-04-14 20:39:38,121 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 76 transitions. [2022-04-14 20:39:38,121 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:39:38,121 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:39:38,121 INFO L74 IsIncluded]: Start isIncluded. First operand has 65 states, 38 states have (on average 1.105263157894737) internal successors, (42), 39 states have internal predecessors, (42), 18 states have call successors, (18), 9 states have call predecessors, (18), 8 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 65 states. [2022-04-14 20:39:38,121 INFO L87 Difference]: Start difference. First operand has 65 states, 38 states have (on average 1.105263157894737) internal successors, (42), 39 states have internal predecessors, (42), 18 states have call successors, (18), 9 states have call predecessors, (18), 8 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 65 states. [2022-04-14 20:39:38,123 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:38,123 INFO L93 Difference]: Finished difference Result 65 states and 76 transitions. [2022-04-14 20:39:38,123 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 76 transitions. [2022-04-14 20:39:38,124 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:39:38,124 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:39:38,124 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 20:39:38,124 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 20:39:38,124 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 65 states, 38 states have (on average 1.105263157894737) internal successors, (42), 39 states have internal predecessors, (42), 18 states have call successors, (18), 9 states have call predecessors, (18), 8 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-14 20:39:38,125 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 65 states to 65 states and 76 transitions. [2022-04-14 20:39:38,126 INFO L78 Accepts]: Start accepts. Automaton has 65 states and 76 transitions. Word has length 56 [2022-04-14 20:39:38,126 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 20:39:38,126 INFO L478 AbstractCegarLoop]: Abstraction has 65 states and 76 transitions. [2022-04-14 20:39:38,126 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) [2022-04-14 20:39:38,126 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 76 transitions. [2022-04-14 20:39:38,126 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-04-14 20:39:38,126 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 20:39:38,126 INFO L499 BasicCegarLoop]: trace histogram [7, 6, 6, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 20:39:38,142 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-14 20:39:38,336 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-14 20:39:38,336 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 20:39:38,336 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 20:39:38,336 INFO L85 PathProgramCache]: Analyzing trace with hash -1603019557, now seen corresponding path program 1 times [2022-04-14 20:39:38,337 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 20:39:38,337 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1409097914] [2022-04-14 20:39:38,337 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:39:38,337 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 20:39:38,354 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 20:39:38,354 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2041750921] [2022-04-14 20:39:38,354 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:39:38,354 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:39:38,354 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 20:39:38,355 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-14 20:39:38,356 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-14 20:39:38,390 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:39:38,391 INFO L263 TraceCheckSpWp]: Trace formula consists of 158 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-14 20:39:38,399 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:39:38,400 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 20:39:38,735 INFO L272 TraceCheckUtils]: 0: Hoare triple {2293#true} [101] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:38,736 INFO L290 TraceCheckUtils]: 1: Hoare triple {2293#true} [103] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select |v_#length_1| 2) 14) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {2293#true} is VALID [2022-04-14 20:39:38,736 INFO L290 TraceCheckUtils]: 2: Hoare triple {2293#true} [106] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:38,736 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2293#true} {2293#true} [143] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:38,736 INFO L272 TraceCheckUtils]: 4: Hoare triple {2293#true} [102] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:38,736 INFO L290 TraceCheckUtils]: 5: Hoare triple {2293#true} [105] mainENTRY-->L27: Formula: (and (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_1, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1, main_~a~0=v_main_~a~0_1} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~r~0, main_~a~0] {2293#true} is VALID [2022-04-14 20:39:38,736 INFO L272 TraceCheckUtils]: 6: Hoare triple {2293#true} [107] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {2293#true} is VALID [2022-04-14 20:39:38,736 INFO L290 TraceCheckUtils]: 7: Hoare triple {2293#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2293#true} is VALID [2022-04-14 20:39:38,736 INFO L290 TraceCheckUtils]: 8: Hoare triple {2293#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:38,736 INFO L290 TraceCheckUtils]: 9: Hoare triple {2293#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:38,736 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2293#true} {2293#true} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {2293#true} is VALID [2022-04-14 20:39:38,736 INFO L290 TraceCheckUtils]: 11: Hoare triple {2293#true} [108] L27-1-->L29: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~y~0] {2293#true} is VALID [2022-04-14 20:39:38,736 INFO L272 TraceCheckUtils]: 12: Hoare triple {2293#true} [110] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {2293#true} is VALID [2022-04-14 20:39:38,737 INFO L290 TraceCheckUtils]: 13: Hoare triple {2293#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2293#true} is VALID [2022-04-14 20:39:38,737 INFO L290 TraceCheckUtils]: 14: Hoare triple {2293#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:38,737 INFO L290 TraceCheckUtils]: 15: Hoare triple {2293#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:38,737 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2293#true} {2293#true} [145] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {2293#true} is VALID [2022-04-14 20:39:38,737 INFO L272 TraceCheckUtils]: 17: Hoare triple {2293#true} [113] L29-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {2293#true} is VALID [2022-04-14 20:39:38,737 INFO L290 TraceCheckUtils]: 18: Hoare triple {2293#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2293#true} is VALID [2022-04-14 20:39:38,737 INFO L290 TraceCheckUtils]: 19: Hoare triple {2293#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:38,737 INFO L290 TraceCheckUtils]: 20: Hoare triple {2293#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:38,737 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2293#true} {2293#true} [146] assume_abort_if_notEXIT-->L31: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {2293#true} is VALID [2022-04-14 20:39:38,738 INFO L290 TraceCheckUtils]: 22: Hoare triple {2293#true} [115] L31-->L38-2: Formula: (and (= v_main_~b~0_2 0) (= v_main_~q~0_2 0) (= v_main_~a~0_2 0) (= v_main_~r~0_2 v_main_~x~0_5)) InVars {main_~x~0=v_main_~x~0_5} OutVars{main_~q~0=v_main_~q~0_2, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0, main_~a~0] {2364#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-14 20:39:38,738 INFO L290 TraceCheckUtils]: 23: Hoare triple {2364#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} [118] L38-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2364#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-14 20:39:38,738 INFO L272 TraceCheckUtils]: 24: Hoare triple {2364#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} [120] L39-->__VERIFIER_assertENTRY: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {2293#true} is VALID [2022-04-14 20:39:38,738 INFO L290 TraceCheckUtils]: 25: Hoare triple {2293#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2293#true} is VALID [2022-04-14 20:39:38,738 INFO L290 TraceCheckUtils]: 26: Hoare triple {2293#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:38,738 INFO L290 TraceCheckUtils]: 27: Hoare triple {2293#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:38,740 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2293#true} {2364#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} [148] __VERIFIER_assertEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {2364#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-14 20:39:38,740 INFO L272 TraceCheckUtils]: 29: Hoare triple {2364#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} [123] L39-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {2293#true} is VALID [2022-04-14 20:39:38,740 INFO L290 TraceCheckUtils]: 30: Hoare triple {2293#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2293#true} is VALID [2022-04-14 20:39:38,741 INFO L290 TraceCheckUtils]: 31: Hoare triple {2293#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:38,741 INFO L290 TraceCheckUtils]: 32: Hoare triple {2293#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:38,747 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2293#true} {2364#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} [149] __VERIFIER_assertEXIT-->L40: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {2364#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-14 20:39:38,748 INFO L290 TraceCheckUtils]: 34: Hoare triple {2364#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} [128] L40-->L47-2: Formula: (and (= v_main_~b~0_4 v_main_~y~0_8) (<= v_main_~y~0_8 v_main_~r~0_5) (= v_main_~a~0_4 1)) InVars {main_~y~0=v_main_~y~0_8, main_~r~0=v_main_~r~0_5} OutVars{main_~y~0=v_main_~y~0_8, main_~b~0=v_main_~b~0_4, main_~r~0=v_main_~r~0_5, main_~a~0=v_main_~a~0_4} AuxVars[] AssignedVars[main_~b~0, main_~a~0] {2401#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 20:39:38,750 INFO L290 TraceCheckUtils]: 35: Hoare triple {2401#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} [134] L47-2-->L48: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2401#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 20:39:38,750 INFO L272 TraceCheckUtils]: 36: Hoare triple {2401#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} [136] L48-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_3| (ite (= (* v_main_~y~0_17 v_main_~a~0_11) v_main_~b~0_12) 1 0)) InVars {main_~y~0=v_main_~y~0_17, main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {2293#true} is VALID [2022-04-14 20:39:38,750 INFO L290 TraceCheckUtils]: 37: Hoare triple {2293#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2293#true} is VALID [2022-04-14 20:39:38,750 INFO L290 TraceCheckUtils]: 38: Hoare triple {2293#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:38,750 INFO L290 TraceCheckUtils]: 39: Hoare triple {2293#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:38,754 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {2293#true} {2401#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} [150] __VERIFIER_assertEXIT-->L48-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_3| (ite (= (* v_main_~y~0_17 v_main_~a~0_11) v_main_~b~0_12) 1 0)) InVars {main_~y~0=v_main_~y~0_17, main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {2401#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 20:39:38,754 INFO L272 TraceCheckUtils]: 41: Hoare triple {2401#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} [137] L48-1-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~x~0_11 (+ v_main_~r~0_15 (* v_main_~y~0_18 v_main_~q~0_9))) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~q~0=v_main_~q~0_9, main_~y~0=v_main_~y~0_18, main_~x~0=v_main_~x~0_11, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {2293#true} is VALID [2022-04-14 20:39:38,754 INFO L290 TraceCheckUtils]: 42: Hoare triple {2293#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2293#true} is VALID [2022-04-14 20:39:38,754 INFO L290 TraceCheckUtils]: 43: Hoare triple {2293#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:38,754 INFO L290 TraceCheckUtils]: 44: Hoare triple {2293#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:38,755 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2293#true} {2401#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} [151] __VERIFIER_assertEXIT-->L49: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= v_main_~x~0_11 (+ v_main_~r~0_15 (* v_main_~y~0_18 v_main_~q~0_9))) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~q~0=v_main_~q~0_9, main_~y~0=v_main_~y~0_18, main_~x~0=v_main_~x~0_11, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {2401#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 20:39:38,755 INFO L272 TraceCheckUtils]: 46: Hoare triple {2401#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} [138] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_5| (ite (<= 0 v_main_~r~0_16) 1 0)) InVars {main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_5|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~r~0] {2293#true} is VALID [2022-04-14 20:39:38,755 INFO L290 TraceCheckUtils]: 47: Hoare triple {2293#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2293#true} is VALID [2022-04-14 20:39:38,755 INFO L290 TraceCheckUtils]: 48: Hoare triple {2293#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:38,755 INFO L290 TraceCheckUtils]: 49: Hoare triple {2293#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:38,756 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2293#true} {2401#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} [152] __VERIFIER_assertEXIT-->L50: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_5| (ite (<= 0 v_main_~r~0_16) 1 0)) InVars {main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_5|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~r~0] {2401#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 20:39:38,756 INFO L290 TraceCheckUtils]: 51: Hoare triple {2401#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} [139] L50-->L47-3: Formula: (not (<= (* v_main_~b~0_6 2) v_main_~r~0_8)) InVars {main_~b~0=v_main_~b~0_6, main_~r~0=v_main_~r~0_8} OutVars{main_~b~0=v_main_~b~0_6, main_~r~0=v_main_~r~0_8} AuxVars[] AssignedVars[] {2453#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (not (<= (* main_~b~0 2) main_~r~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 20:39:38,757 INFO L290 TraceCheckUtils]: 52: Hoare triple {2453#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (not (<= (* main_~b~0 2) main_~r~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0))} [135] L47-3-->L38-2: Formula: (and (= v_main_~q~0_5 (+ v_main_~a~0_9 v_main_~q~0_6)) (= v_main_~r~0_11 (+ v_main_~r~0_12 (* (- 1) v_main_~b~0_10)))) InVars {main_~q~0=v_main_~q~0_6, main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_12, main_~a~0=v_main_~a~0_9} OutVars{main_~q~0=v_main_~q~0_5, main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_11, main_~a~0=v_main_~a~0_9} AuxVars[] AssignedVars[main_~q~0, main_~r~0] {2457#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} is VALID [2022-04-14 20:39:38,758 INFO L290 TraceCheckUtils]: 53: Hoare triple {2457#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} [118] L38-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2457#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} is VALID [2022-04-14 20:39:38,758 INFO L272 TraceCheckUtils]: 54: Hoare triple {2457#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} [120] L39-->__VERIFIER_assertENTRY: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {2293#true} is VALID [2022-04-14 20:39:38,758 INFO L290 TraceCheckUtils]: 55: Hoare triple {2293#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2293#true} is VALID [2022-04-14 20:39:38,758 INFO L290 TraceCheckUtils]: 56: Hoare triple {2293#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:38,758 INFO L290 TraceCheckUtils]: 57: Hoare triple {2293#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:38,758 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {2293#true} {2457#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} [148] __VERIFIER_assertEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {2457#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} is VALID [2022-04-14 20:39:38,759 INFO L272 TraceCheckUtils]: 59: Hoare triple {2457#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} [123] L39-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {2479#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 20:39:38,759 INFO L290 TraceCheckUtils]: 60: Hoare triple {2479#(<= 1 |__VERIFIER_assert_#in~cond|)} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2483#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 20:39:38,760 INFO L290 TraceCheckUtils]: 61: Hoare triple {2483#(<= 1 __VERIFIER_assert_~cond)} [125] L15-->L16: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2294#false} is VALID [2022-04-14 20:39:38,760 INFO L290 TraceCheckUtils]: 62: Hoare triple {2294#false} [129] L16-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#false} is VALID [2022-04-14 20:39:38,760 INFO L134 CoverageAnalysis]: Checked inductivity of 87 backedges. 12 proven. 3 refuted. 0 times theorem prover too weak. 72 trivial. 0 not checked. [2022-04-14 20:39:38,760 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 20:39:39,067 INFO L290 TraceCheckUtils]: 62: Hoare triple {2294#false} [129] L16-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2294#false} is VALID [2022-04-14 20:39:39,068 INFO L290 TraceCheckUtils]: 61: Hoare triple {2483#(<= 1 __VERIFIER_assert_~cond)} [125] L15-->L16: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2294#false} is VALID [2022-04-14 20:39:39,068 INFO L290 TraceCheckUtils]: 60: Hoare triple {2479#(<= 1 |__VERIFIER_assert_#in~cond|)} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2483#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 20:39:39,069 INFO L272 TraceCheckUtils]: 59: Hoare triple {2499#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} [123] L39-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {2479#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 20:39:39,069 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {2293#true} {2499#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} [148] __VERIFIER_assertEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {2499#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 20:39:39,070 INFO L290 TraceCheckUtils]: 57: Hoare triple {2293#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:39,070 INFO L290 TraceCheckUtils]: 56: Hoare triple {2293#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:39,070 INFO L290 TraceCheckUtils]: 55: Hoare triple {2293#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2293#true} is VALID [2022-04-14 20:39:39,070 INFO L272 TraceCheckUtils]: 54: Hoare triple {2499#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} [120] L39-->__VERIFIER_assertENTRY: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {2293#true} is VALID [2022-04-14 20:39:39,070 INFO L290 TraceCheckUtils]: 53: Hoare triple {2499#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} [118] L38-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2499#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 20:39:39,078 INFO L290 TraceCheckUtils]: 52: Hoare triple {2521#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} [135] L47-3-->L38-2: Formula: (and (= v_main_~q~0_5 (+ v_main_~a~0_9 v_main_~q~0_6)) (= v_main_~r~0_11 (+ v_main_~r~0_12 (* (- 1) v_main_~b~0_10)))) InVars {main_~q~0=v_main_~q~0_6, main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_12, main_~a~0=v_main_~a~0_9} OutVars{main_~q~0=v_main_~q~0_5, main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_11, main_~a~0=v_main_~a~0_9} AuxVars[] AssignedVars[main_~q~0, main_~r~0] {2499#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 20:39:39,078 INFO L290 TraceCheckUtils]: 51: Hoare triple {2525#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} [139] L50-->L47-3: Formula: (not (<= (* v_main_~b~0_6 2) v_main_~r~0_8)) InVars {main_~b~0=v_main_~b~0_6, main_~r~0=v_main_~r~0_8} OutVars{main_~b~0=v_main_~b~0_6, main_~r~0=v_main_~r~0_8} AuxVars[] AssignedVars[] {2521#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-14 20:39:39,079 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2293#true} {2525#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} [152] __VERIFIER_assertEXIT-->L50: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_5| (ite (<= 0 v_main_~r~0_16) 1 0)) InVars {main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_5|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~r~0] {2525#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} is VALID [2022-04-14 20:39:39,079 INFO L290 TraceCheckUtils]: 49: Hoare triple {2293#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:39,079 INFO L290 TraceCheckUtils]: 48: Hoare triple {2293#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:39,079 INFO L290 TraceCheckUtils]: 47: Hoare triple {2293#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2293#true} is VALID [2022-04-14 20:39:39,079 INFO L272 TraceCheckUtils]: 46: Hoare triple {2525#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} [138] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_5| (ite (<= 0 v_main_~r~0_16) 1 0)) InVars {main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_5|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~r~0] {2293#true} is VALID [2022-04-14 20:39:39,080 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2293#true} {2525#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} [151] __VERIFIER_assertEXIT-->L49: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= v_main_~x~0_11 (+ v_main_~r~0_15 (* v_main_~y~0_18 v_main_~q~0_9))) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~q~0=v_main_~q~0_9, main_~y~0=v_main_~y~0_18, main_~x~0=v_main_~x~0_11, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {2525#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} is VALID [2022-04-14 20:39:39,080 INFO L290 TraceCheckUtils]: 44: Hoare triple {2293#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:39,080 INFO L290 TraceCheckUtils]: 43: Hoare triple {2293#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:39,080 INFO L290 TraceCheckUtils]: 42: Hoare triple {2293#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2293#true} is VALID [2022-04-14 20:39:39,080 INFO L272 TraceCheckUtils]: 41: Hoare triple {2525#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} [137] L48-1-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~x~0_11 (+ v_main_~r~0_15 (* v_main_~y~0_18 v_main_~q~0_9))) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~q~0=v_main_~q~0_9, main_~y~0=v_main_~y~0_18, main_~x~0=v_main_~x~0_11, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {2293#true} is VALID [2022-04-14 20:39:39,083 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {2293#true} {2525#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} [150] __VERIFIER_assertEXIT-->L48-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_3| (ite (= (* v_main_~y~0_17 v_main_~a~0_11) v_main_~b~0_12) 1 0)) InVars {main_~y~0=v_main_~y~0_17, main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {2525#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} is VALID [2022-04-14 20:39:39,084 INFO L290 TraceCheckUtils]: 39: Hoare triple {2293#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:39,084 INFO L290 TraceCheckUtils]: 38: Hoare triple {2293#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:39,084 INFO L290 TraceCheckUtils]: 37: Hoare triple {2293#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2293#true} is VALID [2022-04-14 20:39:39,084 INFO L272 TraceCheckUtils]: 36: Hoare triple {2525#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} [136] L48-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_3| (ite (= (* v_main_~y~0_17 v_main_~a~0_11) v_main_~b~0_12) 1 0)) InVars {main_~y~0=v_main_~y~0_17, main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {2293#true} is VALID [2022-04-14 20:39:39,084 INFO L290 TraceCheckUtils]: 35: Hoare triple {2525#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} [134] L47-2-->L48: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2525#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} is VALID [2022-04-14 20:39:39,106 INFO L290 TraceCheckUtils]: 34: Hoare triple {2577#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} [128] L40-->L47-2: Formula: (and (= v_main_~b~0_4 v_main_~y~0_8) (<= v_main_~y~0_8 v_main_~r~0_5) (= v_main_~a~0_4 1)) InVars {main_~y~0=v_main_~y~0_8, main_~r~0=v_main_~r~0_5} OutVars{main_~y~0=v_main_~y~0_8, main_~b~0=v_main_~b~0_4, main_~r~0=v_main_~r~0_5, main_~a~0=v_main_~a~0_4} AuxVars[] AssignedVars[main_~b~0, main_~a~0] {2525#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} is VALID [2022-04-14 20:39:39,107 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2293#true} {2577#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} [149] __VERIFIER_assertEXIT-->L40: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {2577#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} is VALID [2022-04-14 20:39:39,107 INFO L290 TraceCheckUtils]: 32: Hoare triple {2293#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:39,107 INFO L290 TraceCheckUtils]: 31: Hoare triple {2293#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:39,107 INFO L290 TraceCheckUtils]: 30: Hoare triple {2293#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2293#true} is VALID [2022-04-14 20:39:39,107 INFO L272 TraceCheckUtils]: 29: Hoare triple {2577#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} [123] L39-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {2293#true} is VALID [2022-04-14 20:39:39,107 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2293#true} {2577#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} [148] __VERIFIER_assertEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {2577#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} is VALID [2022-04-14 20:39:39,108 INFO L290 TraceCheckUtils]: 27: Hoare triple {2293#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:39,108 INFO L290 TraceCheckUtils]: 26: Hoare triple {2293#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:39,108 INFO L290 TraceCheckUtils]: 25: Hoare triple {2293#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2293#true} is VALID [2022-04-14 20:39:39,108 INFO L272 TraceCheckUtils]: 24: Hoare triple {2577#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} [120] L39-->__VERIFIER_assertENTRY: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {2293#true} is VALID [2022-04-14 20:39:39,108 INFO L290 TraceCheckUtils]: 23: Hoare triple {2577#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} [118] L38-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2577#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} is VALID [2022-04-14 20:39:39,109 INFO L290 TraceCheckUtils]: 22: Hoare triple {2293#true} [115] L31-->L38-2: Formula: (and (= v_main_~b~0_2 0) (= v_main_~q~0_2 0) (= v_main_~a~0_2 0) (= v_main_~r~0_2 v_main_~x~0_5)) InVars {main_~x~0=v_main_~x~0_5} OutVars{main_~q~0=v_main_~q~0_2, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0, main_~a~0] {2577#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} is VALID [2022-04-14 20:39:39,109 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2293#true} {2293#true} [146] assume_abort_if_notEXIT-->L31: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {2293#true} is VALID [2022-04-14 20:39:39,109 INFO L290 TraceCheckUtils]: 20: Hoare triple {2293#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:39,109 INFO L290 TraceCheckUtils]: 19: Hoare triple {2293#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:39,109 INFO L290 TraceCheckUtils]: 18: Hoare triple {2293#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2293#true} is VALID [2022-04-14 20:39:39,109 INFO L272 TraceCheckUtils]: 17: Hoare triple {2293#true} [113] L29-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {2293#true} is VALID [2022-04-14 20:39:39,109 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2293#true} {2293#true} [145] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {2293#true} is VALID [2022-04-14 20:39:39,109 INFO L290 TraceCheckUtils]: 15: Hoare triple {2293#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:39,109 INFO L290 TraceCheckUtils]: 14: Hoare triple {2293#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:39,109 INFO L290 TraceCheckUtils]: 13: Hoare triple {2293#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2293#true} is VALID [2022-04-14 20:39:39,109 INFO L272 TraceCheckUtils]: 12: Hoare triple {2293#true} [110] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 2)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {2293#true} is VALID [2022-04-14 20:39:39,109 INFO L290 TraceCheckUtils]: 11: Hoare triple {2293#true} [108] L27-1-->L29: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~y~0] {2293#true} is VALID [2022-04-14 20:39:39,109 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2293#true} {2293#true} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {2293#true} is VALID [2022-04-14 20:39:39,109 INFO L290 TraceCheckUtils]: 9: Hoare triple {2293#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:39,110 INFO L290 TraceCheckUtils]: 8: Hoare triple {2293#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:39,110 INFO L290 TraceCheckUtils]: 7: Hoare triple {2293#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2293#true} is VALID [2022-04-14 20:39:39,110 INFO L272 TraceCheckUtils]: 6: Hoare triple {2293#true} [107] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 2)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {2293#true} is VALID [2022-04-14 20:39:39,110 INFO L290 TraceCheckUtils]: 5: Hoare triple {2293#true} [105] mainENTRY-->L27: Formula: (and (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_1, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1, main_~a~0=v_main_~a~0_1} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~r~0, main_~a~0] {2293#true} is VALID [2022-04-14 20:39:39,110 INFO L272 TraceCheckUtils]: 4: Hoare triple {2293#true} [102] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:39,110 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2293#true} {2293#true} [143] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:39,110 INFO L290 TraceCheckUtils]: 2: Hoare triple {2293#true} [106] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:39,110 INFO L290 TraceCheckUtils]: 1: Hoare triple {2293#true} [103] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select |v_#length_1| 2) 14) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {2293#true} is VALID [2022-04-14 20:39:39,110 INFO L272 TraceCheckUtils]: 0: Hoare triple {2293#true} [101] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2293#true} is VALID [2022-04-14 20:39:39,110 INFO L134 CoverageAnalysis]: Checked inductivity of 87 backedges. 15 proven. 0 refuted. 0 times theorem prover too weak. 72 trivial. 0 not checked. [2022-04-14 20:39:39,110 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 20:39:39,110 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1409097914] [2022-04-14 20:39:39,111 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 20:39:39,111 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2041750921] [2022-04-14 20:39:39,111 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2041750921] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-14 20:39:39,111 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-14 20:39:39,111 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [8] total 12 [2022-04-14 20:39:39,111 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1834367464] [2022-04-14 20:39:39,111 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 20:39:39,111 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 63 [2022-04-14 20:39:39,112 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 20:39:39,112 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-14 20:39:39,148 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:39:39,148 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-14 20:39:39,148 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 20:39:39,149 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-14 20:39:39,149 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=38, Invalid=94, Unknown=0, NotChecked=0, Total=132 [2022-04-14 20:39:39,149 INFO L87 Difference]: Start difference. First operand 65 states and 76 transitions. Second operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-14 20:39:39,482 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:39,482 INFO L93 Difference]: Finished difference Result 63 states and 74 transitions. [2022-04-14 20:39:39,482 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-14 20:39:39,482 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 63 [2022-04-14 20:39:39,483 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 20:39:39,483 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-14 20:39:39,484 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 45 transitions. [2022-04-14 20:39:39,484 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-14 20:39:39,484 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 45 transitions. [2022-04-14 20:39:39,484 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 45 transitions. [2022-04-14 20:39:39,530 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:39:39,531 INFO L225 Difference]: With dead ends: 63 [2022-04-14 20:39:39,531 INFO L226 Difference]: Without dead ends: 0 [2022-04-14 20:39:39,531 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 127 GetRequests, 114 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 31 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=50, Invalid=132, Unknown=0, NotChecked=0, Total=182 [2022-04-14 20:39:39,531 INFO L913 BasicCegarLoop]: 29 mSDtfsCounter, 21 mSDsluCounter, 69 mSDsCounter, 0 mSdLazyCounter, 72 mSolverCounterSat, 35 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 21 SdHoareTripleChecker+Valid, 98 SdHoareTripleChecker+Invalid, 107 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 35 IncrementalHoareTripleChecker+Valid, 72 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-14 20:39:39,532 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [21 Valid, 98 Invalid, 107 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [35 Valid, 72 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-14 20:39:39,532 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-14 20:39:39,532 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-14 20:39:39,532 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 20:39:39,532 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-14 20:39:39,532 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-14 20:39:39,532 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-14 20:39:39,532 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:39,532 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-14 20:39:39,532 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-14 20:39:39,532 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:39:39,533 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:39:39,533 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-14 20:39:39,533 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-14 20:39:39,533 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:39,533 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-14 20:39:39,533 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-14 20:39:39,533 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:39:39,533 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:39:39,533 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 20:39:39,533 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 20:39:39,533 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-14 20:39:39,533 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-14 20:39:39,533 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 63 [2022-04-14 20:39:39,533 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 20:39:39,533 INFO L478 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-14 20:39:39,533 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-14 20:39:39,533 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-14 20:39:39,534 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:39:39,535 INFO L788 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-14 20:39:39,551 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Ended with exit code 0 [2022-04-14 20:39:39,747 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-14 20:39:39,749 INFO L719 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1, 1, 1, 1] [2022-04-14 20:39:39,750 INFO L177 ceAbstractionStarter]: Computing trace abstraction results [2022-04-14 20:39:39,752 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 14.04 08:39:39 BasicIcfg [2022-04-14 20:39:39,752 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-14 20:39:39,752 INFO L158 Benchmark]: Toolchain (without parser) took 13720.97ms. Allocated memory was 177.2MB in the beginning and 212.9MB in the end (delta: 35.7MB). Free memory was 128.4MB in the beginning and 151.9MB in the end (delta: -23.6MB). Peak memory consumption was 13.4MB. Max. memory is 8.0GB. [2022-04-14 20:39:39,753 INFO L158 Benchmark]: CDTParser took 0.11ms. Allocated memory is still 177.2MB. Free memory is still 144.6MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-14 20:39:39,753 INFO L158 Benchmark]: CACSL2BoogieTranslator took 228.92ms. Allocated memory is still 177.2MB. Free memory was 128.1MB in the beginning and 151.8MB in the end (delta: -23.7MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-14 20:39:39,753 INFO L158 Benchmark]: Boogie Preprocessor took 35.19ms. Allocated memory is still 177.2MB. Free memory was 151.8MB in the beginning and 150.1MB in the end (delta: 1.7MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-14 20:39:39,753 INFO L158 Benchmark]: RCFGBuilder took 276.29ms. Allocated memory is still 177.2MB. Free memory was 150.1MB in the beginning and 138.2MB in the end (delta: 11.9MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-14 20:39:39,753 INFO L158 Benchmark]: IcfgTransformer took 42.85ms. Allocated memory is still 177.2MB. Free memory was 138.2MB in the beginning and 136.5MB in the end (delta: 1.7MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-14 20:39:39,753 INFO L158 Benchmark]: TraceAbstraction took 13132.84ms. Allocated memory was 177.2MB in the beginning and 212.9MB in the end (delta: 35.7MB). Free memory was 136.1MB in the beginning and 151.9MB in the end (delta: -15.8MB). Peak memory consumption was 21.0MB. Max. memory is 8.0GB. [2022-04-14 20:39:39,754 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.11ms. Allocated memory is still 177.2MB. Free memory is still 144.6MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 228.92ms. Allocated memory is still 177.2MB. Free memory was 128.1MB in the beginning and 151.8MB in the end (delta: -23.7MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * Boogie Preprocessor took 35.19ms. Allocated memory is still 177.2MB. Free memory was 151.8MB in the beginning and 150.1MB in the end (delta: 1.7MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 276.29ms. Allocated memory is still 177.2MB. Free memory was 150.1MB in the beginning and 138.2MB in the end (delta: 11.9MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * IcfgTransformer took 42.85ms. Allocated memory is still 177.2MB. Free memory was 138.2MB in the beginning and 136.5MB in the end (delta: 1.7MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * TraceAbstraction took 13132.84ms. Allocated memory was 177.2MB in the beginning and 212.9MB in the end (delta: 35.7MB). Free memory was 136.1MB in the beginning and 151.9MB in the end (delta: -15.8MB). Peak memory consumption was 21.0MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - PositiveResult [Line: 17]: call to reach_error is unreachable For all program executions holds that call to reach_error is unreachable at this location - StatisticsResult: Ultimate Automizer benchmark data CFG has 5 procedures, 39 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 13.1s, OverallIterations: 7, TraceHistogramMax: 7, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 2.3s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 194 SdHoareTripleChecker+Valid, 0.6s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 155 mSDsluCounter, 869 SdHoareTripleChecker+Invalid, 0.6s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 632 mSDsCounter, 90 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 637 IncrementalHoareTripleChecker+Invalid, 727 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 90 mSolverCounterUnsat, 237 mSDtfsCounter, 637 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 446 GetRequests, 382 SyntacticMatches, 3 SemanticMatches, 61 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 69 ImplicationChecksByTransitivity, 0.3s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=65occurred in iteration=6, InterpolantAutomatonStates: 47, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.1s AutomataMinimizationTime, 7 MinimizatonAttempts, 4 StatesRemovedByMinimization, 2 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 8.8s InterpolantComputationTime, 298 NumberOfCodeBlocks, 298 NumberOfCodeBlocksAsserted, 7 NumberOfCheckSat, 447 ConstructedInterpolants, 0 QuantifiedInterpolants, 1174 SizeOfPredicates, 24 NumberOfNonLiveVariables, 745 ConjunctsInSsa, 90 ConjunctsInUnsatCore, 10 InterpolantComputations, 6 PerfectInterpolantSequences, 400/420 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold RESULT: Ultimate proved your program to be correct! [2022-04-14 20:39:39,767 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...