/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data --core.log.level.for.class de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN -tc ../../../trunk/examples/toolchains/AutomizerCTransformed.xml -s ../../../trunk/examples/settings/automizer/LoopAccelerationJordanC.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_valuebound5.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-07 20:42:21,586 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-07 20:42:21,588 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-07 20:42:21,623 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-07 20:42:21,623 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-07 20:42:21,624 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-07 20:42:21,625 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-07 20:42:21,626 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-07 20:42:21,628 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-07 20:42:21,629 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-07 20:42:21,629 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-07 20:42:21,630 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-07 20:42:21,631 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-07 20:42:21,632 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-07 20:42:21,633 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-07 20:42:21,633 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-07 20:42:21,634 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-07 20:42:21,635 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-07 20:42:21,636 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-07 20:42:21,638 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-07 20:42:21,639 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-07 20:42:21,639 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-07 20:42:21,640 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-07 20:42:21,641 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-07 20:42:21,642 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-07 20:42:21,644 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-07 20:42:21,644 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-07 20:42:21,645 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-07 20:42:21,645 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-07 20:42:21,646 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-07 20:42:21,646 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-07 20:42:21,647 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-07 20:42:21,647 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-07 20:42:21,648 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-07 20:42:21,649 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-07 20:42:21,649 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-07 20:42:21,650 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-07 20:42:21,650 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-07 20:42:21,651 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-07 20:42:21,651 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-07 20:42:21,652 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-07 20:42:21,652 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-07 20:42:21,653 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/LoopAccelerationJordanC.epf [2022-04-07 20:42:21,661 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-07 20:42:21,661 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-07 20:42:21,662 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-07 20:42:21,662 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-07 20:42:21,662 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-07 20:42:21,663 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-07 20:42:21,663 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-07 20:42:21,663 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-07 20:42:21,663 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-07 20:42:21,663 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-07 20:42:21,664 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-07 20:42:21,664 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-07 20:42:21,664 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-07 20:42:21,664 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-07 20:42:21,664 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-07 20:42:21,664 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-07 20:42:21,665 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-07 20:42:21,665 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-07 20:42:21,665 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 20:42:21,665 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-07 20:42:21,665 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-07 20:42:21,666 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-07 20:42:21,666 INFO L138 SettingsManager]: * TransformationType=LOOP_ACCELERATION_JORDAN WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-07 20:42:21,847 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-07 20:42:21,863 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-07 20:42:21,865 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-07 20:42:21,865 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-07 20:42:21,867 INFO L275 PluginConnector]: CDTParser initialized [2022-04-07 20:42:21,868 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_valuebound5.c [2022-04-07 20:42:21,915 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/0109485c1/802eb750c06e467f927e3bc6cc5cc177/FLAG43467da9f [2022-04-07 20:42:22,226 INFO L306 CDTParser]: Found 1 translation units. [2022-04-07 20:42:22,226 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_valuebound5.c [2022-04-07 20:42:22,231 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/0109485c1/802eb750c06e467f927e3bc6cc5cc177/FLAG43467da9f [2022-04-07 20:42:22,649 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/0109485c1/802eb750c06e467f927e3bc6cc5cc177 [2022-04-07 20:42:22,651 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-07 20:42:22,653 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-07 20:42:22,655 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-07 20:42:22,655 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-07 20:42:22,659 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-07 20:42:22,659 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 08:42:22" (1/1) ... [2022-04-07 20:42:22,661 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@3ea27fff and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 08:42:22, skipping insertion in model container [2022-04-07 20:42:22,661 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 08:42:22" (1/1) ... [2022-04-07 20:42:22,666 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-07 20:42:22,675 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-07 20:42:22,787 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_valuebound5.c[537,550] [2022-04-07 20:42:22,799 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 20:42:22,806 INFO L203 MainTranslator]: Completed pre-run [2022-04-07 20:42:22,816 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_valuebound5.c[537,550] [2022-04-07 20:42:22,822 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 20:42:22,842 INFO L208 MainTranslator]: Completed translation [2022-04-07 20:42:22,843 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 08:42:22 WrapperNode [2022-04-07 20:42:22,843 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-07 20:42:22,844 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-07 20:42:22,844 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-07 20:42:22,844 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-07 20:42:22,857 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 08:42:22" (1/1) ... [2022-04-07 20:42:22,858 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 08:42:22" (1/1) ... [2022-04-07 20:42:22,862 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 08:42:22" (1/1) ... [2022-04-07 20:42:22,862 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 08:42:22" (1/1) ... [2022-04-07 20:42:22,871 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 08:42:22" (1/1) ... [2022-04-07 20:42:22,874 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 08:42:22" (1/1) ... [2022-04-07 20:42:22,875 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 08:42:22" (1/1) ... [2022-04-07 20:42:22,877 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-07 20:42:22,877 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-07 20:42:22,878 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-07 20:42:22,878 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-07 20:42:22,885 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 08:42:22" (1/1) ... [2022-04-07 20:42:22,892 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 20:42:22,899 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 20:42:22,909 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-07 20:42:22,911 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-07 20:42:22,938 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-07 20:42:22,938 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-07 20:42:22,938 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-07 20:42:22,938 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-07 20:42:22,938 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-07 20:42:22,939 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-07 20:42:22,939 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-07 20:42:22,939 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-07 20:42:22,939 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-07 20:42:22,939 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-07 20:42:22,939 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-07 20:42:22,939 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-07 20:42:22,939 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-07 20:42:22,939 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-07 20:42:22,939 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-07 20:42:22,940 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-07 20:42:22,940 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-07 20:42:22,940 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-07 20:42:22,940 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-07 20:42:22,940 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-07 20:42:22,988 INFO L234 CfgBuilder]: Building ICFG [2022-04-07 20:42:22,989 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-07 20:42:23,121 INFO L275 CfgBuilder]: Performing block encoding [2022-04-07 20:42:23,127 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-07 20:42:23,128 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-07 20:42:23,129 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 08:42:23 BoogieIcfgContainer [2022-04-07 20:42:23,129 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-07 20:42:23,130 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-07 20:42:23,130 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-07 20:42:23,132 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-07 20:42:23,134 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 08:42:23" (1/1) ... [2022-04-07 20:42:23,136 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_JORDAN [2022-04-07 20:42:23,171 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 07.04 08:42:23 BasicIcfg [2022-04-07 20:42:23,171 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-07 20:42:23,188 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-07 20:42:23,188 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-07 20:42:23,191 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-07 20:42:23,191 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 07.04 08:42:22" (1/4) ... [2022-04-07 20:42:23,192 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6e5946f6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 08:42:23, skipping insertion in model container [2022-04-07 20:42:23,192 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 08:42:22" (2/4) ... [2022-04-07 20:42:23,192 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6e5946f6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 08:42:23, skipping insertion in model container [2022-04-07 20:42:23,192 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 08:42:23" (3/4) ... [2022-04-07 20:42:23,193 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6e5946f6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 07.04 08:42:23, skipping insertion in model container [2022-04-07 20:42:23,193 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 07.04 08:42:23" (4/4) ... [2022-04-07 20:42:23,194 INFO L111 eAbstractionObserver]: Analyzing ICFG prodbin-ll_valuebound5.cJordan [2022-04-07 20:42:23,206 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:ForwardPredicates Determinization: PREDICATE_ABSTRACTION [2022-04-07 20:42:23,206 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-07 20:42:23,245 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-07 20:42:23,251 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=ForwardPredicates, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=false, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP [2022-04-07 20:42:23,251 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-07 20:42:23,266 INFO L276 IsEmpty]: Start isEmpty. Operand has 32 states, 19 states have (on average 1.368421052631579) internal successors, (26), 20 states have internal predecessors, (26), 7 states have call successors, (7), 4 states have call predecessors, (7), 4 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-07 20:42:23,273 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-07 20:42:23,273 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 20:42:23,274 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 20:42:23,274 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 20:42:23,278 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 20:42:23,278 INFO L85 PathProgramCache]: Analyzing trace with hash 1656134296, now seen corresponding path program 1 times [2022-04-07 20:42:23,285 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 20:42:23,286 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2091303404] [2022-04-07 20:42:23,286 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:42:23,287 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 20:42:23,385 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:42:23,455 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-07 20:42:23,467 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:42:23,489 INFO L290 TraceCheckUtils]: 0: Hoare triple {52#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [76] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {35#true} is VALID [2022-04-07 20:42:23,490 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-07 20:42:23,490 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {35#true} {35#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-07 20:42:23,491 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-07 20:42:23,497 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:42:23,515 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {35#true} is VALID [2022-04-07 20:42:23,516 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} [84] L10-->L10-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 20:42:23,516 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 20:42:23,516 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {35#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 5)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {36#false} is VALID [2022-04-07 20:42:23,517 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-07 20:42:23,519 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:42:23,528 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {35#true} is VALID [2022-04-07 20:42:23,529 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} [84] L10-->L10-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 20:42:23,530 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 20:42:23,530 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {36#false} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 5) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {36#false} is VALID [2022-04-07 20:42:23,530 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-07 20:42:23,532 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:42:23,542 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {35#true} is VALID [2022-04-07 20:42:23,543 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} [84] L10-->L10-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 20:42:23,543 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 20:42:23,544 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {36#false} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {36#false} is VALID [2022-04-07 20:42:23,545 INFO L272 TraceCheckUtils]: 0: Hoare triple {35#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {52#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-07 20:42:23,546 INFO L290 TraceCheckUtils]: 1: Hoare triple {52#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [76] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {35#true} is VALID [2022-04-07 20:42:23,546 INFO L290 TraceCheckUtils]: 2: Hoare triple {35#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-07 20:42:23,546 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {35#true} {35#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-07 20:42:23,547 INFO L272 TraceCheckUtils]: 4: Hoare triple {35#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-07 20:42:23,547 INFO L290 TraceCheckUtils]: 5: Hoare triple {35#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {35#true} is VALID [2022-04-07 20:42:23,547 INFO L272 TraceCheckUtils]: 6: Hoare triple {35#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 5)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {35#true} is VALID [2022-04-07 20:42:23,548 INFO L290 TraceCheckUtils]: 7: Hoare triple {35#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {35#true} is VALID [2022-04-07 20:42:23,549 INFO L290 TraceCheckUtils]: 8: Hoare triple {35#true} [84] L10-->L10-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 20:42:23,550 INFO L290 TraceCheckUtils]: 9: Hoare triple {36#false} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 20:42:23,550 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {36#false} {35#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 5)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {36#false} is VALID [2022-04-07 20:42:23,550 INFO L290 TraceCheckUtils]: 11: Hoare triple {36#false} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {36#false} is VALID [2022-04-07 20:42:23,551 INFO L272 TraceCheckUtils]: 12: Hoare triple {36#false} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 5) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {35#true} is VALID [2022-04-07 20:42:23,551 INFO L290 TraceCheckUtils]: 13: Hoare triple {35#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {35#true} is VALID [2022-04-07 20:42:23,552 INFO L290 TraceCheckUtils]: 14: Hoare triple {35#true} [84] L10-->L10-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 20:42:23,552 INFO L290 TraceCheckUtils]: 15: Hoare triple {36#false} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 20:42:23,552 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {36#false} {36#false} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 5) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {36#false} is VALID [2022-04-07 20:42:23,553 INFO L272 TraceCheckUtils]: 17: Hoare triple {36#false} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {35#true} is VALID [2022-04-07 20:42:23,553 INFO L290 TraceCheckUtils]: 18: Hoare triple {35#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {35#true} is VALID [2022-04-07 20:42:23,554 INFO L290 TraceCheckUtils]: 19: Hoare triple {35#true} [84] L10-->L10-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 20:42:23,554 INFO L290 TraceCheckUtils]: 20: Hoare triple {36#false} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 20:42:23,555 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {36#false} {36#false} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {36#false} is VALID [2022-04-07 20:42:23,555 INFO L290 TraceCheckUtils]: 22: Hoare triple {36#false} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {36#false} is VALID [2022-04-07 20:42:23,556 INFO L290 TraceCheckUtils]: 23: Hoare triple {36#false} [89] L34-2-->L34-3: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 20:42:23,556 INFO L272 TraceCheckUtils]: 24: Hoare triple {36#false} [92] L34-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_10 v_main_~b~0_11)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_11, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~z~0, main_~b~0, main_~a~0] {36#false} is VALID [2022-04-07 20:42:23,556 INFO L290 TraceCheckUtils]: 25: Hoare triple {36#false} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {36#false} is VALID [2022-04-07 20:42:23,558 INFO L290 TraceCheckUtils]: 26: Hoare triple {36#false} [99] L13-->L14: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 20:42:23,558 INFO L290 TraceCheckUtils]: 27: Hoare triple {36#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-07 20:42:23,559 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-07 20:42:23,559 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 20:42:23,559 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2091303404] [2022-04-07 20:42:23,560 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2091303404] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 20:42:23,560 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 20:42:23,561 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-07 20:42:23,563 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1273204208] [2022-04-07 20:42:23,564 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 20:42:23,570 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-07 20:42:23,571 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 20:42:23,574 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-07 20:42:23,612 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 20:42:23,613 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-07 20:42:23,613 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 20:42:23,644 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-07 20:42:23,645 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-07 20:42:23,648 INFO L87 Difference]: Start difference. First operand has 32 states, 19 states have (on average 1.368421052631579) internal successors, (26), 20 states have internal predecessors, (26), 7 states have call successors, (7), 4 states have call predecessors, (7), 4 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-07 20:42:23,772 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:42:23,773 INFO L93 Difference]: Finished difference Result 32 states and 36 transitions. [2022-04-07 20:42:23,773 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-07 20:42:23,773 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-07 20:42:23,773 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 20:42:23,774 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-07 20:42:23,787 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 40 transitions. [2022-04-07 20:42:23,788 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-07 20:42:23,793 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 40 transitions. [2022-04-07 20:42:23,794 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 40 transitions. [2022-04-07 20:42:23,843 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 20:42:23,850 INFO L225 Difference]: With dead ends: 32 [2022-04-07 20:42:23,850 INFO L226 Difference]: Without dead ends: 27 [2022-04-07 20:42:23,852 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 13 GetRequests, 12 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-07 20:42:23,856 INFO L913 BasicCegarLoop]: 31 mSDtfsCounter, 19 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 7 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 24 SdHoareTripleChecker+Valid, 34 SdHoareTripleChecker+Invalid, 13 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 7 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-07 20:42:23,856 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [24 Valid, 34 Invalid, 13 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 7 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-07 20:42:23,871 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2022-04-07 20:42:23,885 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 27. [2022-04-07 20:42:23,885 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 20:42:23,886 INFO L82 GeneralOperation]: Start isEquivalent. First operand 27 states. Second operand has 27 states, 16 states have (on average 1.1875) internal successors, (19), 17 states have internal predecessors, (19), 7 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-07 20:42:23,887 INFO L74 IsIncluded]: Start isIncluded. First operand 27 states. Second operand has 27 states, 16 states have (on average 1.1875) internal successors, (19), 17 states have internal predecessors, (19), 7 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-07 20:42:23,887 INFO L87 Difference]: Start difference. First operand 27 states. Second operand has 27 states, 16 states have (on average 1.1875) internal successors, (19), 17 states have internal predecessors, (19), 7 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-07 20:42:23,892 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:42:23,892 INFO L93 Difference]: Finished difference Result 27 states and 31 transitions. [2022-04-07 20:42:23,893 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-04-07 20:42:23,893 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:42:23,893 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:42:23,894 INFO L74 IsIncluded]: Start isIncluded. First operand has 27 states, 16 states have (on average 1.1875) internal successors, (19), 17 states have internal predecessors, (19), 7 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 27 states. [2022-04-07 20:42:23,894 INFO L87 Difference]: Start difference. First operand has 27 states, 16 states have (on average 1.1875) internal successors, (19), 17 states have internal predecessors, (19), 7 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 27 states. [2022-04-07 20:42:23,898 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:42:23,898 INFO L93 Difference]: Finished difference Result 27 states and 31 transitions. [2022-04-07 20:42:23,898 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-04-07 20:42:23,899 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:42:23,899 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:42:23,899 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 20:42:23,899 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 20:42:23,900 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 16 states have (on average 1.1875) internal successors, (19), 17 states have internal predecessors, (19), 7 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-07 20:42:23,902 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 31 transitions. [2022-04-07 20:42:23,903 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 31 transitions. Word has length 28 [2022-04-07 20:42:23,903 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 20:42:23,903 INFO L478 AbstractCegarLoop]: Abstraction has 27 states and 31 transitions. [2022-04-07 20:42:23,904 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-07 20:42:23,904 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-04-07 20:42:23,904 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-07 20:42:23,905 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 20:42:23,905 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 20:42:23,905 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-07 20:42:23,905 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 20:42:23,906 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 20:42:23,906 INFO L85 PathProgramCache]: Analyzing trace with hash -1063826184, now seen corresponding path program 1 times [2022-04-07 20:42:23,906 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 20:42:23,906 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [239206112] [2022-04-07 20:42:23,907 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:42:23,907 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 20:42:23,929 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 20:42:23,930 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1194297922] [2022-04-07 20:42:23,930 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:42:23,930 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 20:42:23,930 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 20:42:23,932 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 20:42:23,958 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-07 20:42:23,990 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:42:23,992 INFO L263 TraceCheckSpWp]: Trace formula consists of 90 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-07 20:42:24,002 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:42:24,006 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 20:42:24,220 INFO L272 TraceCheckUtils]: 0: Hoare triple {168#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {168#true} is VALID [2022-04-07 20:42:24,221 INFO L290 TraceCheckUtils]: 1: Hoare triple {168#true} [76] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {168#true} is VALID [2022-04-07 20:42:24,221 INFO L290 TraceCheckUtils]: 2: Hoare triple {168#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {168#true} is VALID [2022-04-07 20:42:24,221 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {168#true} {168#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {168#true} is VALID [2022-04-07 20:42:24,222 INFO L272 TraceCheckUtils]: 4: Hoare triple {168#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {168#true} is VALID [2022-04-07 20:42:24,224 INFO L290 TraceCheckUtils]: 5: Hoare triple {168#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {168#true} is VALID [2022-04-07 20:42:24,225 INFO L272 TraceCheckUtils]: 6: Hoare triple {168#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 5)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {168#true} is VALID [2022-04-07 20:42:24,226 INFO L290 TraceCheckUtils]: 7: Hoare triple {168#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {168#true} is VALID [2022-04-07 20:42:24,226 INFO L290 TraceCheckUtils]: 8: Hoare triple {168#true} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {168#true} is VALID [2022-04-07 20:42:24,226 INFO L290 TraceCheckUtils]: 9: Hoare triple {168#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {168#true} is VALID [2022-04-07 20:42:24,227 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {168#true} {168#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 5)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {168#true} is VALID [2022-04-07 20:42:24,227 INFO L290 TraceCheckUtils]: 11: Hoare triple {168#true} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {168#true} is VALID [2022-04-07 20:42:24,229 INFO L272 TraceCheckUtils]: 12: Hoare triple {168#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 5) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {168#true} is VALID [2022-04-07 20:42:24,229 INFO L290 TraceCheckUtils]: 13: Hoare triple {168#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {168#true} is VALID [2022-04-07 20:42:24,231 INFO L290 TraceCheckUtils]: 14: Hoare triple {168#true} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {168#true} is VALID [2022-04-07 20:42:24,231 INFO L290 TraceCheckUtils]: 15: Hoare triple {168#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {168#true} is VALID [2022-04-07 20:42:24,232 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {168#true} {168#true} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 5) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {168#true} is VALID [2022-04-07 20:42:24,232 INFO L272 TraceCheckUtils]: 17: Hoare triple {168#true} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {168#true} is VALID [2022-04-07 20:42:24,232 INFO L290 TraceCheckUtils]: 18: Hoare triple {168#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {168#true} is VALID [2022-04-07 20:42:24,232 INFO L290 TraceCheckUtils]: 19: Hoare triple {168#true} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {168#true} is VALID [2022-04-07 20:42:24,232 INFO L290 TraceCheckUtils]: 20: Hoare triple {168#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {168#true} is VALID [2022-04-07 20:42:24,233 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {168#true} {168#true} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {168#true} is VALID [2022-04-07 20:42:24,233 INFO L290 TraceCheckUtils]: 22: Hoare triple {168#true} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {239#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-07 20:42:24,234 INFO L290 TraceCheckUtils]: 23: Hoare triple {239#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {239#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-07 20:42:24,235 INFO L272 TraceCheckUtils]: 24: Hoare triple {239#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {246#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 20:42:24,236 INFO L290 TraceCheckUtils]: 25: Hoare triple {246#(<= 1 |__VERIFIER_assert_#in~cond|)} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {250#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 20:42:24,237 INFO L290 TraceCheckUtils]: 26: Hoare triple {250#(<= 1 __VERIFIER_assert_~cond)} [99] L13-->L14: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {169#false} is VALID [2022-04-07 20:42:24,237 INFO L290 TraceCheckUtils]: 27: Hoare triple {169#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {169#false} is VALID [2022-04-07 20:42:24,238 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-07 20:42:24,238 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 20:42:24,238 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 20:42:24,238 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [239206112] [2022-04-07 20:42:24,238 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 20:42:24,239 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1194297922] [2022-04-07 20:42:24,242 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1194297922] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 20:42:24,242 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 20:42:24,242 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-07 20:42:24,243 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [353969297] [2022-04-07 20:42:24,243 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 20:42:24,245 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) Word has length 28 [2022-04-07 20:42:24,245 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 20:42:24,245 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-07 20:42:24,265 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 20:42:24,266 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-07 20:42:24,266 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 20:42:24,267 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-07 20:42:24,267 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-07 20:42:24,267 INFO L87 Difference]: Start difference. First operand 27 states and 31 transitions. Second operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-07 20:42:24,428 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:42:24,428 INFO L93 Difference]: Finished difference Result 37 states and 43 transitions. [2022-04-07 20:42:24,428 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-07 20:42:24,429 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) Word has length 28 [2022-04-07 20:42:24,429 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 20:42:24,430 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-07 20:42:24,434 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 44 transitions. [2022-04-07 20:42:24,435 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-07 20:42:24,447 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 44 transitions. [2022-04-07 20:42:24,447 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 44 transitions. [2022-04-07 20:42:24,494 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 20:42:24,495 INFO L225 Difference]: With dead ends: 37 [2022-04-07 20:42:24,495 INFO L226 Difference]: Without dead ends: 37 [2022-04-07 20:42:24,496 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 28 GetRequests, 24 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-07 20:42:24,497 INFO L913 BasicCegarLoop]: 25 mSDtfsCounter, 8 mSDsluCounter, 62 mSDsCounter, 0 mSdLazyCounter, 43 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 87 SdHoareTripleChecker+Invalid, 43 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 43 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-07 20:42:24,497 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [9 Valid, 87 Invalid, 43 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 43 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-07 20:42:24,498 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2022-04-07 20:42:24,501 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 33. [2022-04-07 20:42:24,501 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 20:42:24,501 INFO L82 GeneralOperation]: Start isEquivalent. First operand 37 states. Second operand has 33 states, 20 states have (on average 1.15) internal successors, (23), 22 states have internal predecessors, (23), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 20:42:24,501 INFO L74 IsIncluded]: Start isIncluded. First operand 37 states. Second operand has 33 states, 20 states have (on average 1.15) internal successors, (23), 22 states have internal predecessors, (23), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 20:42:24,502 INFO L87 Difference]: Start difference. First operand 37 states. Second operand has 33 states, 20 states have (on average 1.15) internal successors, (23), 22 states have internal predecessors, (23), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 20:42:24,504 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:42:24,504 INFO L93 Difference]: Finished difference Result 37 states and 43 transitions. [2022-04-07 20:42:24,504 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 43 transitions. [2022-04-07 20:42:24,505 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:42:24,505 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:42:24,505 INFO L74 IsIncluded]: Start isIncluded. First operand has 33 states, 20 states have (on average 1.15) internal successors, (23), 22 states have internal predecessors, (23), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) Second operand 37 states. [2022-04-07 20:42:24,506 INFO L87 Difference]: Start difference. First operand has 33 states, 20 states have (on average 1.15) internal successors, (23), 22 states have internal predecessors, (23), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) Second operand 37 states. [2022-04-07 20:42:24,508 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:42:24,508 INFO L93 Difference]: Finished difference Result 37 states and 43 transitions. [2022-04-07 20:42:24,508 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 43 transitions. [2022-04-07 20:42:24,509 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:42:24,509 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:42:24,509 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 20:42:24,509 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 20:42:24,509 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 20 states have (on average 1.15) internal successors, (23), 22 states have internal predecessors, (23), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 20:42:24,511 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 37 transitions. [2022-04-07 20:42:24,511 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 37 transitions. Word has length 28 [2022-04-07 20:42:24,511 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 20:42:24,511 INFO L478 AbstractCegarLoop]: Abstraction has 33 states and 37 transitions. [2022-04-07 20:42:24,512 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-07 20:42:24,512 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 37 transitions. [2022-04-07 20:42:24,512 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-07 20:42:24,513 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 20:42:24,513 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 20:42:24,538 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-07 20:42:24,737 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 20:42:24,738 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 20:42:24,739 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 20:42:24,739 INFO L85 PathProgramCache]: Analyzing trace with hash -499634320, now seen corresponding path program 1 times [2022-04-07 20:42:24,739 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 20:42:24,739 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [504160016] [2022-04-07 20:42:24,739 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:42:24,739 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 20:42:24,762 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 20:42:24,763 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [921398850] [2022-04-07 20:42:24,763 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:42:24,763 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 20:42:24,763 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 20:42:24,764 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 20:42:24,787 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-07 20:42:24,817 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:42:24,818 INFO L263 TraceCheckSpWp]: Trace formula consists of 101 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-07 20:42:24,827 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:42:24,830 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 20:42:24,977 INFO L272 TraceCheckUtils]: 0: Hoare triple {402#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {402#true} is VALID [2022-04-07 20:42:24,977 INFO L290 TraceCheckUtils]: 1: Hoare triple {402#true} [76] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {402#true} is VALID [2022-04-07 20:42:24,977 INFO L290 TraceCheckUtils]: 2: Hoare triple {402#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {402#true} is VALID [2022-04-07 20:42:24,978 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {402#true} {402#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {402#true} is VALID [2022-04-07 20:42:24,978 INFO L272 TraceCheckUtils]: 4: Hoare triple {402#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {402#true} is VALID [2022-04-07 20:42:24,978 INFO L290 TraceCheckUtils]: 5: Hoare triple {402#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {402#true} is VALID [2022-04-07 20:42:24,978 INFO L272 TraceCheckUtils]: 6: Hoare triple {402#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 5)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {402#true} is VALID [2022-04-07 20:42:24,978 INFO L290 TraceCheckUtils]: 7: Hoare triple {402#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {402#true} is VALID [2022-04-07 20:42:24,979 INFO L290 TraceCheckUtils]: 8: Hoare triple {402#true} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {402#true} is VALID [2022-04-07 20:42:24,979 INFO L290 TraceCheckUtils]: 9: Hoare triple {402#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {402#true} is VALID [2022-04-07 20:42:24,979 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {402#true} {402#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 5)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {402#true} is VALID [2022-04-07 20:42:24,979 INFO L290 TraceCheckUtils]: 11: Hoare triple {402#true} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {402#true} is VALID [2022-04-07 20:42:24,979 INFO L272 TraceCheckUtils]: 12: Hoare triple {402#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 5) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {402#true} is VALID [2022-04-07 20:42:24,980 INFO L290 TraceCheckUtils]: 13: Hoare triple {402#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {402#true} is VALID [2022-04-07 20:42:24,980 INFO L290 TraceCheckUtils]: 14: Hoare triple {402#true} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {402#true} is VALID [2022-04-07 20:42:24,980 INFO L290 TraceCheckUtils]: 15: Hoare triple {402#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {402#true} is VALID [2022-04-07 20:42:24,980 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {402#true} {402#true} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 5) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {402#true} is VALID [2022-04-07 20:42:24,980 INFO L272 TraceCheckUtils]: 17: Hoare triple {402#true} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {402#true} is VALID [2022-04-07 20:42:24,981 INFO L290 TraceCheckUtils]: 18: Hoare triple {402#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {461#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 20:42:24,982 INFO L290 TraceCheckUtils]: 19: Hoare triple {461#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {465#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 20:42:24,982 INFO L290 TraceCheckUtils]: 20: Hoare triple {465#(not (= |assume_abort_if_not_#in~cond| 0))} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {465#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 20:42:24,983 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {465#(not (= |assume_abort_if_not_#in~cond| 0))} {402#true} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {472#(<= 1 main_~b~0)} is VALID [2022-04-07 20:42:24,983 INFO L290 TraceCheckUtils]: 22: Hoare triple {472#(<= 1 main_~b~0)} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {476#(<= 1 main_~y~0)} is VALID [2022-04-07 20:42:24,984 INFO L290 TraceCheckUtils]: 23: Hoare triple {476#(<= 1 main_~y~0)} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {476#(<= 1 main_~y~0)} is VALID [2022-04-07 20:42:24,984 INFO L272 TraceCheckUtils]: 24: Hoare triple {476#(<= 1 main_~y~0)} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {402#true} is VALID [2022-04-07 20:42:24,984 INFO L290 TraceCheckUtils]: 25: Hoare triple {402#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {402#true} is VALID [2022-04-07 20:42:24,984 INFO L290 TraceCheckUtils]: 26: Hoare triple {402#true} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {402#true} is VALID [2022-04-07 20:42:24,985 INFO L290 TraceCheckUtils]: 27: Hoare triple {402#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {402#true} is VALID [2022-04-07 20:42:24,985 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {402#true} {476#(<= 1 main_~y~0)} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {476#(<= 1 main_~y~0)} is VALID [2022-04-07 20:42:24,988 INFO L290 TraceCheckUtils]: 29: Hoare triple {476#(<= 1 main_~y~0)} [96] L35-1-->L34-3: Formula: (= v_main_~y~0_9 0) InVars {main_~y~0=v_main_~y~0_9} OutVars{main_~y~0=v_main_~y~0_9} AuxVars[] AssignedVars[] {403#false} is VALID [2022-04-07 20:42:24,988 INFO L272 TraceCheckUtils]: 30: Hoare triple {403#false} [92] L34-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_10 v_main_~b~0_11)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_11, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~z~0, main_~b~0, main_~a~0] {403#false} is VALID [2022-04-07 20:42:24,989 INFO L290 TraceCheckUtils]: 31: Hoare triple {403#false} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {403#false} is VALID [2022-04-07 20:42:24,989 INFO L290 TraceCheckUtils]: 32: Hoare triple {403#false} [99] L13-->L14: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {403#false} is VALID [2022-04-07 20:42:24,990 INFO L290 TraceCheckUtils]: 33: Hoare triple {403#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {403#false} is VALID [2022-04-07 20:42:24,991 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 8 proven. 0 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-07 20:42:24,991 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 20:42:24,991 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 20:42:24,991 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [504160016] [2022-04-07 20:42:24,991 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 20:42:24,991 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [921398850] [2022-04-07 20:42:24,991 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [921398850] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 20:42:24,991 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 20:42:24,992 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-07 20:42:24,992 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1306069849] [2022-04-07 20:42:24,992 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 20:42:24,992 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) Word has length 34 [2022-04-07 20:42:24,993 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 20:42:24,993 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-07 20:42:25,024 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 20:42:25,024 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-07 20:42:25,024 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 20:42:25,025 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-07 20:42:25,025 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-07 20:42:25,025 INFO L87 Difference]: Start difference. First operand 33 states and 37 transitions. Second operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-07 20:42:25,208 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:42:25,208 INFO L93 Difference]: Finished difference Result 36 states and 41 transitions. [2022-04-07 20:42:25,208 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-07 20:42:25,209 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) Word has length 34 [2022-04-07 20:42:25,209 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 20:42:25,209 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-07 20:42:25,211 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 39 transitions. [2022-04-07 20:42:25,211 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-07 20:42:25,212 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 39 transitions. [2022-04-07 20:42:25,213 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 39 transitions. [2022-04-07 20:42:25,246 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 20:42:25,247 INFO L225 Difference]: With dead ends: 36 [2022-04-07 20:42:25,247 INFO L226 Difference]: Without dead ends: 36 [2022-04-07 20:42:25,248 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 35 GetRequests, 29 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-04-07 20:42:25,248 INFO L913 BasicCegarLoop]: 24 mSDtfsCounter, 14 mSDsluCounter, 65 mSDsCounter, 0 mSdLazyCounter, 58 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 15 SdHoareTripleChecker+Valid, 89 SdHoareTripleChecker+Invalid, 60 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 58 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-07 20:42:25,249 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [15 Valid, 89 Invalid, 60 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 58 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-07 20:42:25,249 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states. [2022-04-07 20:42:25,256 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 34. [2022-04-07 20:42:25,256 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 20:42:25,256 INFO L82 GeneralOperation]: Start isEquivalent. First operand 36 states. Second operand has 34 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 states have internal predecessors, (24), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 20:42:25,259 INFO L74 IsIncluded]: Start isIncluded. First operand 36 states. Second operand has 34 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 states have internal predecessors, (24), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 20:42:25,259 INFO L87 Difference]: Start difference. First operand 36 states. Second operand has 34 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 states have internal predecessors, (24), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 20:42:25,265 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:42:25,266 INFO L93 Difference]: Finished difference Result 36 states and 41 transitions. [2022-04-07 20:42:25,266 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 41 transitions. [2022-04-07 20:42:25,266 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:42:25,267 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:42:25,268 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 states have internal predecessors, (24), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 36 states. [2022-04-07 20:42:25,268 INFO L87 Difference]: Start difference. First operand has 34 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 states have internal predecessors, (24), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 36 states. [2022-04-07 20:42:25,272 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:42:25,272 INFO L93 Difference]: Finished difference Result 36 states and 41 transitions. [2022-04-07 20:42:25,272 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 41 transitions. [2022-04-07 20:42:25,273 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:42:25,273 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:42:25,273 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 20:42:25,273 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 20:42:25,273 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 states have internal predecessors, (24), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 20:42:25,275 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 38 transitions. [2022-04-07 20:42:25,275 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 38 transitions. Word has length 34 [2022-04-07 20:42:25,275 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 20:42:25,275 INFO L478 AbstractCegarLoop]: Abstraction has 34 states and 38 transitions. [2022-04-07 20:42:25,275 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 3.1666666666666665) internal successors, (19), 5 states have internal predecessors, (19), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-07 20:42:25,275 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 38 transitions. [2022-04-07 20:42:25,276 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-04-07 20:42:25,276 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 20:42:25,276 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 20:42:25,300 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-07 20:42:25,477 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-07 20:42:25,477 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 20:42:25,477 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 20:42:25,477 INFO L85 PathProgramCache]: Analyzing trace with hash -1096608558, now seen corresponding path program 1 times [2022-04-07 20:42:25,477 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 20:42:25,478 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [142831569] [2022-04-07 20:42:25,478 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:42:25,478 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 20:42:25,505 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 20:42:25,505 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [477465796] [2022-04-07 20:42:25,505 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:42:25,505 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 20:42:25,506 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 20:42:25,506 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 20:42:25,560 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-07 20:42:25,601 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:42:25,602 INFO L263 TraceCheckSpWp]: Trace formula consists of 111 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-07 20:42:25,615 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:42:25,616 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 20:42:29,014 INFO L272 TraceCheckUtils]: 0: Hoare triple {655#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {655#true} is VALID [2022-04-07 20:42:29,014 INFO L290 TraceCheckUtils]: 1: Hoare triple {655#true} [76] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {655#true} is VALID [2022-04-07 20:42:29,014 INFO L290 TraceCheckUtils]: 2: Hoare triple {655#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {655#true} is VALID [2022-04-07 20:42:29,015 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {655#true} {655#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {655#true} is VALID [2022-04-07 20:42:29,015 INFO L272 TraceCheckUtils]: 4: Hoare triple {655#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {655#true} is VALID [2022-04-07 20:42:29,015 INFO L290 TraceCheckUtils]: 5: Hoare triple {655#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {655#true} is VALID [2022-04-07 20:42:29,015 INFO L272 TraceCheckUtils]: 6: Hoare triple {655#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 5)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {655#true} is VALID [2022-04-07 20:42:29,015 INFO L290 TraceCheckUtils]: 7: Hoare triple {655#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {655#true} is VALID [2022-04-07 20:42:29,015 INFO L290 TraceCheckUtils]: 8: Hoare triple {655#true} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {655#true} is VALID [2022-04-07 20:42:29,016 INFO L290 TraceCheckUtils]: 9: Hoare triple {655#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {655#true} is VALID [2022-04-07 20:42:29,016 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {655#true} {655#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 5)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {655#true} is VALID [2022-04-07 20:42:29,016 INFO L290 TraceCheckUtils]: 11: Hoare triple {655#true} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {655#true} is VALID [2022-04-07 20:42:29,020 INFO L272 TraceCheckUtils]: 12: Hoare triple {655#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 5) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {655#true} is VALID [2022-04-07 20:42:29,021 INFO L290 TraceCheckUtils]: 13: Hoare triple {655#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {655#true} is VALID [2022-04-07 20:42:29,033 INFO L290 TraceCheckUtils]: 14: Hoare triple {655#true} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {655#true} is VALID [2022-04-07 20:42:29,033 INFO L290 TraceCheckUtils]: 15: Hoare triple {655#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {655#true} is VALID [2022-04-07 20:42:29,033 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {655#true} {655#true} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 5) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {655#true} is VALID [2022-04-07 20:42:29,033 INFO L272 TraceCheckUtils]: 17: Hoare triple {655#true} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {655#true} is VALID [2022-04-07 20:42:29,033 INFO L290 TraceCheckUtils]: 18: Hoare triple {655#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {655#true} is VALID [2022-04-07 20:42:29,034 INFO L290 TraceCheckUtils]: 19: Hoare triple {655#true} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {655#true} is VALID [2022-04-07 20:42:29,034 INFO L290 TraceCheckUtils]: 20: Hoare triple {655#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {655#true} is VALID [2022-04-07 20:42:29,034 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {655#true} {655#true} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {655#true} is VALID [2022-04-07 20:42:29,035 INFO L290 TraceCheckUtils]: 22: Hoare triple {655#true} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {726#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-07 20:42:29,036 INFO L290 TraceCheckUtils]: 23: Hoare triple {726#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {726#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-07 20:42:29,036 INFO L272 TraceCheckUtils]: 24: Hoare triple {726#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {655#true} is VALID [2022-04-07 20:42:29,037 INFO L290 TraceCheckUtils]: 25: Hoare triple {655#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {736#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-07 20:42:29,037 INFO L290 TraceCheckUtils]: 26: Hoare triple {736#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {740#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 20:42:29,038 INFO L290 TraceCheckUtils]: 27: Hoare triple {740#(not (= |__VERIFIER_assert_#in~cond| 0))} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {740#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 20:42:29,039 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {740#(not (= |__VERIFIER_assert_#in~cond| 0))} {726#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {726#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-07 20:42:29,039 INFO L290 TraceCheckUtils]: 29: Hoare triple {726#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {750#(and (= main_~z~0 0) (not (= main_~y~0 0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-07 20:42:29,040 INFO L290 TraceCheckUtils]: 30: Hoare triple {750#(and (= main_~z~0 0) (not (= main_~y~0 0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0))} [101] L39-->L39-2: Formula: (and (= v_main_~y~0_1 (+ (- 1) v_main_~y~0_2)) (= v_main_~z~0_1 (+ v_main_~x~0_1 v_main_~z~0_2)) (= (let ((.cse0 (mod v_main_~y~0_2 2))) (ite (and (< v_main_~y~0_2 0) (not (= .cse0 0))) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_2, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_2} OutVars{main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_1} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {754#(and (<= 1 (mod (+ main_~y~0 1) 2)) (= main_~b~0 (+ main_~y~0 1)) (= main_~z~0 main_~x~0) (= main_~a~0 main_~x~0) (<= 0 (+ main_~y~0 1)))} is VALID [2022-04-07 20:42:29,047 INFO L290 TraceCheckUtils]: 31: Hoare triple {754#(and (<= 1 (mod (+ main_~y~0 1) 2)) (= main_~b~0 (+ main_~y~0 1)) (= main_~z~0 main_~x~0) (= main_~a~0 main_~x~0) (<= 0 (+ main_~y~0 1)))} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {758#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-07 20:42:29,047 INFO L290 TraceCheckUtils]: 32: Hoare triple {758#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {758#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} is VALID [2022-04-07 20:42:30,540 INFO L272 TraceCheckUtils]: 33: Hoare triple {758#(and (= main_~a~0 main_~z~0) (<= 1 (mod main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (<= 0 main_~b~0) (= (div (+ (- 1) main_~b~0) 2) main_~y~0))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {765#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 20:42:30,541 INFO L290 TraceCheckUtils]: 34: Hoare triple {765#(<= 1 |__VERIFIER_assert_#in~cond|)} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {769#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 20:42:30,542 INFO L290 TraceCheckUtils]: 35: Hoare triple {769#(<= 1 __VERIFIER_assert_~cond)} [99] L13-->L14: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {656#false} is VALID [2022-04-07 20:42:30,542 INFO L290 TraceCheckUtils]: 36: Hoare triple {656#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {656#false} is VALID [2022-04-07 20:42:30,543 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 1 proven. 3 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-07 20:42:30,543 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 20:43:40,217 INFO L290 TraceCheckUtils]: 36: Hoare triple {656#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {656#false} is VALID [2022-04-07 20:43:40,218 INFO L290 TraceCheckUtils]: 35: Hoare triple {769#(<= 1 __VERIFIER_assert_~cond)} [99] L13-->L14: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {656#false} is VALID [2022-04-07 20:43:40,219 INFO L290 TraceCheckUtils]: 34: Hoare triple {765#(<= 1 |__VERIFIER_assert_#in~cond|)} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {769#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 20:43:40,220 INFO L272 TraceCheckUtils]: 33: Hoare triple {785#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {765#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 20:43:40,220 INFO L290 TraceCheckUtils]: 32: Hoare triple {785#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {785#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-07 20:43:40,237 INFO L290 TraceCheckUtils]: 31: Hoare triple {792#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {785#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-07 20:43:40,240 INFO L290 TraceCheckUtils]: 30: Hoare triple {796#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} [101] L39-->L39-2: Formula: (and (= v_main_~y~0_1 (+ (- 1) v_main_~y~0_2)) (= v_main_~z~0_1 (+ v_main_~x~0_1 v_main_~z~0_2)) (= (let ((.cse0 (mod v_main_~y~0_2 2))) (ite (and (< v_main_~y~0_2 0) (not (= .cse0 0))) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_2, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_2} OutVars{main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_1} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {792#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} is VALID [2022-04-07 20:43:40,240 INFO L290 TraceCheckUtils]: 29: Hoare triple {796#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {796#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} is VALID [2022-04-07 20:43:41,404 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {740#(not (= |__VERIFIER_assert_#in~cond| 0))} {655#true} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {796#(or (= (+ (* (* main_~x~0 2) (div (+ (- 1) main_~y~0) 2)) main_~z~0 main_~x~0) (* main_~b~0 main_~a~0)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} is VALID [2022-04-07 20:43:41,404 INFO L290 TraceCheckUtils]: 27: Hoare triple {740#(not (= |__VERIFIER_assert_#in~cond| 0))} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {740#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 20:43:41,404 INFO L290 TraceCheckUtils]: 26: Hoare triple {812#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {740#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 20:43:41,405 INFO L290 TraceCheckUtils]: 25: Hoare triple {655#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {812#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-07 20:43:41,405 INFO L272 TraceCheckUtils]: 24: Hoare triple {655#true} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {655#true} is VALID [2022-04-07 20:43:41,405 INFO L290 TraceCheckUtils]: 23: Hoare triple {655#true} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {655#true} is VALID [2022-04-07 20:43:41,405 INFO L290 TraceCheckUtils]: 22: Hoare triple {655#true} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {655#true} is VALID [2022-04-07 20:43:41,405 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {655#true} {655#true} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {655#true} is VALID [2022-04-07 20:43:41,405 INFO L290 TraceCheckUtils]: 20: Hoare triple {655#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {655#true} is VALID [2022-04-07 20:43:41,405 INFO L290 TraceCheckUtils]: 19: Hoare triple {655#true} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {655#true} is VALID [2022-04-07 20:43:41,406 INFO L290 TraceCheckUtils]: 18: Hoare triple {655#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {655#true} is VALID [2022-04-07 20:43:41,406 INFO L272 TraceCheckUtils]: 17: Hoare triple {655#true} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {655#true} is VALID [2022-04-07 20:43:41,406 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {655#true} {655#true} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 5) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {655#true} is VALID [2022-04-07 20:43:41,406 INFO L290 TraceCheckUtils]: 15: Hoare triple {655#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {655#true} is VALID [2022-04-07 20:43:41,406 INFO L290 TraceCheckUtils]: 14: Hoare triple {655#true} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {655#true} is VALID [2022-04-07 20:43:41,406 INFO L290 TraceCheckUtils]: 13: Hoare triple {655#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {655#true} is VALID [2022-04-07 20:43:41,406 INFO L272 TraceCheckUtils]: 12: Hoare triple {655#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 5) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {655#true} is VALID [2022-04-07 20:43:41,406 INFO L290 TraceCheckUtils]: 11: Hoare triple {655#true} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {655#true} is VALID [2022-04-07 20:43:41,406 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {655#true} {655#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 5)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {655#true} is VALID [2022-04-07 20:43:41,406 INFO L290 TraceCheckUtils]: 9: Hoare triple {655#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {655#true} is VALID [2022-04-07 20:43:41,407 INFO L290 TraceCheckUtils]: 8: Hoare triple {655#true} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {655#true} is VALID [2022-04-07 20:43:41,407 INFO L290 TraceCheckUtils]: 7: Hoare triple {655#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {655#true} is VALID [2022-04-07 20:43:41,407 INFO L272 TraceCheckUtils]: 6: Hoare triple {655#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 5)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {655#true} is VALID [2022-04-07 20:43:41,407 INFO L290 TraceCheckUtils]: 5: Hoare triple {655#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {655#true} is VALID [2022-04-07 20:43:41,407 INFO L272 TraceCheckUtils]: 4: Hoare triple {655#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {655#true} is VALID [2022-04-07 20:43:41,407 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {655#true} {655#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {655#true} is VALID [2022-04-07 20:43:41,407 INFO L290 TraceCheckUtils]: 2: Hoare triple {655#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {655#true} is VALID [2022-04-07 20:43:41,408 INFO L290 TraceCheckUtils]: 1: Hoare triple {655#true} [76] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {655#true} is VALID [2022-04-07 20:43:41,408 INFO L272 TraceCheckUtils]: 0: Hoare triple {655#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {655#true} is VALID [2022-04-07 20:43:41,408 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 3 proven. 1 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-07 20:43:41,408 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 20:43:41,408 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [142831569] [2022-04-07 20:43:41,408 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 20:43:41,408 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [477465796] [2022-04-07 20:43:41,408 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [477465796] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 20:43:41,408 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 20:43:41,408 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 9] total 14 [2022-04-07 20:43:41,409 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1445464811] [2022-04-07 20:43:41,409 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 20:43:41,409 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 1.9285714285714286) internal successors, (27), 13 states have internal predecessors, (27), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 3 states have call predecessors, (6), 2 states have call successors, (6) Word has length 37 [2022-04-07 20:43:41,409 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 20:43:41,409 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 1.9285714285714286) internal successors, (27), 13 states have internal predecessors, (27), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 3 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-07 20:43:42,239 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 20:43:42,239 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-07 20:43:42,239 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 20:43:42,240 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-07 20:43:42,240 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=40, Invalid=142, Unknown=0, NotChecked=0, Total=182 [2022-04-07 20:43:42,240 INFO L87 Difference]: Start difference. First operand 34 states and 38 transitions. Second operand has 14 states, 14 states have (on average 1.9285714285714286) internal successors, (27), 13 states have internal predecessors, (27), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 3 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-07 20:43:56,817 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-07 20:44:00,996 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:44:00,996 INFO L93 Difference]: Finished difference Result 50 states and 58 transitions. [2022-04-07 20:44:00,996 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-07 20:44:00,997 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 1.9285714285714286) internal successors, (27), 13 states have internal predecessors, (27), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 3 states have call predecessors, (6), 2 states have call successors, (6) Word has length 37 [2022-04-07 20:44:00,997 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 20:44:00,997 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 1.9285714285714286) internal successors, (27), 13 states have internal predecessors, (27), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 3 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-07 20:44:00,999 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 56 transitions. [2022-04-07 20:44:01,000 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 1.9285714285714286) internal successors, (27), 13 states have internal predecessors, (27), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 3 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-07 20:44:01,002 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 56 transitions. [2022-04-07 20:44:01,002 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 56 transitions. [2022-04-07 20:44:01,435 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 20:44:01,436 INFO L225 Difference]: With dead ends: 50 [2022-04-07 20:44:01,436 INFO L226 Difference]: Without dead ends: 50 [2022-04-07 20:44:01,437 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 77 GetRequests, 58 SyntacticMatches, 3 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 40 ImplicationChecksByTransitivity, 10.9s TimeCoverageRelationStatistics Valid=66, Invalid=240, Unknown=0, NotChecked=0, Total=306 [2022-04-07 20:44:01,437 INFO L913 BasicCegarLoop]: 24 mSDtfsCounter, 25 mSDsluCounter, 121 mSDsCounter, 0 mSdLazyCounter, 167 mSolverCounterSat, 16 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 7.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 27 SdHoareTripleChecker+Valid, 145 SdHoareTripleChecker+Invalid, 184 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 16 IncrementalHoareTripleChecker+Valid, 167 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 7.3s IncrementalHoareTripleChecker+Time [2022-04-07 20:44:01,437 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [27 Valid, 145 Invalid, 184 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 167 Invalid, 1 Unknown, 0 Unchecked, 7.3s Time] [2022-04-07 20:44:01,440 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2022-04-07 20:44:01,443 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 41. [2022-04-07 20:44:01,443 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 20:44:01,443 INFO L82 GeneralOperation]: Start isEquivalent. First operand 50 states. Second operand has 41 states, 26 states have (on average 1.1153846153846154) internal successors, (29), 28 states have internal predecessors, (29), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-07 20:44:01,443 INFO L74 IsIncluded]: Start isIncluded. First operand 50 states. Second operand has 41 states, 26 states have (on average 1.1153846153846154) internal successors, (29), 28 states have internal predecessors, (29), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-07 20:44:01,444 INFO L87 Difference]: Start difference. First operand 50 states. Second operand has 41 states, 26 states have (on average 1.1153846153846154) internal successors, (29), 28 states have internal predecessors, (29), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-07 20:44:01,446 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:44:01,446 INFO L93 Difference]: Finished difference Result 50 states and 58 transitions. [2022-04-07 20:44:01,446 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 58 transitions. [2022-04-07 20:44:01,447 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:44:01,447 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:44:01,447 INFO L74 IsIncluded]: Start isIncluded. First operand has 41 states, 26 states have (on average 1.1153846153846154) internal successors, (29), 28 states have internal predecessors, (29), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 50 states. [2022-04-07 20:44:01,448 INFO L87 Difference]: Start difference. First operand has 41 states, 26 states have (on average 1.1153846153846154) internal successors, (29), 28 states have internal predecessors, (29), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 50 states. [2022-04-07 20:44:01,450 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:44:01,450 INFO L93 Difference]: Finished difference Result 50 states and 58 transitions. [2022-04-07 20:44:01,450 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 58 transitions. [2022-04-07 20:44:01,451 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:44:01,451 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:44:01,451 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 20:44:01,451 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 20:44:01,451 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 26 states have (on average 1.1153846153846154) internal successors, (29), 28 states have internal predecessors, (29), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-07 20:44:01,452 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 45 transitions. [2022-04-07 20:44:01,452 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 45 transitions. Word has length 37 [2022-04-07 20:44:01,453 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 20:44:01,453 INFO L478 AbstractCegarLoop]: Abstraction has 41 states and 45 transitions. [2022-04-07 20:44:01,453 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 1.9285714285714286) internal successors, (27), 13 states have internal predecessors, (27), 4 states have call successors, (9), 2 states have call predecessors, (9), 2 states have return successors, (6), 3 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-07 20:44:01,453 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 45 transitions. [2022-04-07 20:44:01,454 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-04-07 20:44:01,454 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 20:44:01,454 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 20:44:01,474 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Ended with exit code 0 [2022-04-07 20:44:01,667 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 20:44:01,668 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 20:44:01,668 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 20:44:01,668 INFO L85 PathProgramCache]: Analyzing trace with hash -209104877, now seen corresponding path program 1 times [2022-04-07 20:44:01,668 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 20:44:01,668 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [33668170] [2022-04-07 20:44:01,668 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:44:01,668 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 20:44:01,683 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 20:44:01,683 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1420140211] [2022-04-07 20:44:01,684 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:44:01,684 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 20:44:01,684 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 20:44:01,685 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 20:44:01,701 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-07 20:44:01,733 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:44:01,734 INFO L263 TraceCheckSpWp]: Trace formula consists of 106 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-07 20:44:01,744 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:44:01,745 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 20:44:02,678 INFO L272 TraceCheckUtils]: 0: Hoare triple {1089#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1089#true} is VALID [2022-04-07 20:44:02,679 INFO L290 TraceCheckUtils]: 1: Hoare triple {1089#true} [76] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1089#true} is VALID [2022-04-07 20:44:02,679 INFO L290 TraceCheckUtils]: 2: Hoare triple {1089#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1089#true} is VALID [2022-04-07 20:44:02,679 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1089#true} {1089#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1089#true} is VALID [2022-04-07 20:44:02,679 INFO L272 TraceCheckUtils]: 4: Hoare triple {1089#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1089#true} is VALID [2022-04-07 20:44:02,682 INFO L290 TraceCheckUtils]: 5: Hoare triple {1089#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1089#true} is VALID [2022-04-07 20:44:02,683 INFO L272 TraceCheckUtils]: 6: Hoare triple {1089#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 5)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {1089#true} is VALID [2022-04-07 20:44:02,683 INFO L290 TraceCheckUtils]: 7: Hoare triple {1089#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1089#true} is VALID [2022-04-07 20:44:02,683 INFO L290 TraceCheckUtils]: 8: Hoare triple {1089#true} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1089#true} is VALID [2022-04-07 20:44:02,683 INFO L290 TraceCheckUtils]: 9: Hoare triple {1089#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1089#true} is VALID [2022-04-07 20:44:02,683 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1089#true} {1089#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 5)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {1089#true} is VALID [2022-04-07 20:44:02,684 INFO L290 TraceCheckUtils]: 11: Hoare triple {1089#true} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {1089#true} is VALID [2022-04-07 20:44:02,684 INFO L272 TraceCheckUtils]: 12: Hoare triple {1089#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 5) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1089#true} is VALID [2022-04-07 20:44:02,684 INFO L290 TraceCheckUtils]: 13: Hoare triple {1089#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1089#true} is VALID [2022-04-07 20:44:02,684 INFO L290 TraceCheckUtils]: 14: Hoare triple {1089#true} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1089#true} is VALID [2022-04-07 20:44:02,684 INFO L290 TraceCheckUtils]: 15: Hoare triple {1089#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1089#true} is VALID [2022-04-07 20:44:02,684 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1089#true} {1089#true} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 5) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1089#true} is VALID [2022-04-07 20:44:02,684 INFO L272 TraceCheckUtils]: 17: Hoare triple {1089#true} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1089#true} is VALID [2022-04-07 20:44:02,688 INFO L290 TraceCheckUtils]: 18: Hoare triple {1089#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1148#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 20:44:02,689 INFO L290 TraceCheckUtils]: 19: Hoare triple {1148#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1152#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 20:44:02,689 INFO L290 TraceCheckUtils]: 20: Hoare triple {1152#(not (= |assume_abort_if_not_#in~cond| 0))} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1152#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 20:44:02,690 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1152#(not (= |assume_abort_if_not_#in~cond| 0))} {1089#true} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1159#(<= 1 main_~b~0)} is VALID [2022-04-07 20:44:02,690 INFO L290 TraceCheckUtils]: 22: Hoare triple {1159#(<= 1 main_~b~0)} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {1163#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-07 20:44:02,691 INFO L290 TraceCheckUtils]: 23: Hoare triple {1163#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1163#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-07 20:44:02,691 INFO L272 TraceCheckUtils]: 24: Hoare triple {1163#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1089#true} is VALID [2022-04-07 20:44:02,691 INFO L290 TraceCheckUtils]: 25: Hoare triple {1089#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1173#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-07 20:44:02,691 INFO L290 TraceCheckUtils]: 26: Hoare triple {1173#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1177#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 20:44:02,692 INFO L290 TraceCheckUtils]: 27: Hoare triple {1177#(not (= |__VERIFIER_assert_#in~cond| 0))} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1177#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 20:44:02,692 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1177#(not (= |__VERIFIER_assert_#in~cond| 0))} {1163#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1163#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-07 20:44:02,693 INFO L290 TraceCheckUtils]: 29: Hoare triple {1163#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {1163#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-07 20:44:02,694 INFO L290 TraceCheckUtils]: 30: Hoare triple {1163#(and (= main_~z~0 0) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [102] L39-->L39-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_3} OutVars{main_~y~0=v_main_~y~0_3} AuxVars[] AssignedVars[] {1190#(and (= main_~z~0 0) (not (= (mod main_~y~0 2) 1)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} is VALID [2022-04-07 20:44:02,695 INFO L290 TraceCheckUtils]: 31: Hoare triple {1190#(and (= main_~z~0 0) (not (= (mod main_~y~0 2) 1)) (= main_~b~0 main_~y~0) (<= 1 main_~b~0) (= main_~a~0 main_~x~0))} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {1194#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-07 20:44:02,695 INFO L290 TraceCheckUtils]: 32: Hoare triple {1194#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1194#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} is VALID [2022-04-07 20:44:02,697 INFO L272 TraceCheckUtils]: 33: Hoare triple {1194#(and (= main_~z~0 0) (= main_~y~0 (div main_~b~0 2)) (= (* main_~a~0 2) main_~x~0) (not (= (mod main_~b~0 2) 1)) (<= 1 main_~b~0))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1201#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 20:44:02,697 INFO L290 TraceCheckUtils]: 34: Hoare triple {1201#(<= 1 |__VERIFIER_assert_#in~cond|)} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1205#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 20:44:02,698 INFO L290 TraceCheckUtils]: 35: Hoare triple {1205#(<= 1 __VERIFIER_assert_~cond)} [99] L13-->L14: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1090#false} is VALID [2022-04-07 20:44:02,698 INFO L290 TraceCheckUtils]: 36: Hoare triple {1090#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1090#false} is VALID [2022-04-07 20:44:02,699 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 7 proven. 3 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-07 20:44:02,699 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 20:44:45,165 INFO L290 TraceCheckUtils]: 36: Hoare triple {1090#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1090#false} is VALID [2022-04-07 20:44:45,166 INFO L290 TraceCheckUtils]: 35: Hoare triple {1205#(<= 1 __VERIFIER_assert_~cond)} [99] L13-->L14: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1090#false} is VALID [2022-04-07 20:44:45,166 INFO L290 TraceCheckUtils]: 34: Hoare triple {1201#(<= 1 |__VERIFIER_assert_#in~cond|)} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1205#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 20:44:45,167 INFO L272 TraceCheckUtils]: 33: Hoare triple {1221#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1201#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 20:44:45,167 INFO L290 TraceCheckUtils]: 32: Hoare triple {1221#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1221#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-07 20:44:45,172 INFO L290 TraceCheckUtils]: 31: Hoare triple {1228#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {1221#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-07 20:44:45,172 INFO L290 TraceCheckUtils]: 30: Hoare triple {1232#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} [102] L39-->L39-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_3} OutVars{main_~y~0=v_main_~y~0_3} AuxVars[] AssignedVars[] {1228#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} is VALID [2022-04-07 20:44:45,173 INFO L290 TraceCheckUtils]: 29: Hoare triple {1232#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {1232#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} is VALID [2022-04-07 20:44:45,176 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1177#(not (= |__VERIFIER_assert_#in~cond| 0))} {1239#(or (<= 0 main_~y~0) (not (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0)))} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1232#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} is VALID [2022-04-07 20:44:45,176 INFO L290 TraceCheckUtils]: 27: Hoare triple {1177#(not (= |__VERIFIER_assert_#in~cond| 0))} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1177#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 20:44:45,176 INFO L290 TraceCheckUtils]: 26: Hoare triple {1249#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1177#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 20:44:45,177 INFO L290 TraceCheckUtils]: 25: Hoare triple {1089#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1249#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-07 20:44:45,177 INFO L272 TraceCheckUtils]: 24: Hoare triple {1239#(or (<= 0 main_~y~0) (not (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0)))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1089#true} is VALID [2022-04-07 20:44:45,177 INFO L290 TraceCheckUtils]: 23: Hoare triple {1239#(or (<= 0 main_~y~0) (not (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0)))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1239#(or (<= 0 main_~y~0) (not (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0)))} is VALID [2022-04-07 20:44:45,178 INFO L290 TraceCheckUtils]: 22: Hoare triple {1259#(or (= (* main_~b~0 main_~a~0) (* (* main_~a~0 2) (+ (div main_~b~0 2) 1))) (= (mod main_~b~0 2) 0) (<= 0 main_~b~0))} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {1239#(or (<= 0 main_~y~0) (not (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0)))} is VALID [2022-04-07 20:44:45,179 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1152#(not (= |assume_abort_if_not_#in~cond| 0))} {1089#true} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1259#(or (= (* main_~b~0 main_~a~0) (* (* main_~a~0 2) (+ (div main_~b~0 2) 1))) (= (mod main_~b~0 2) 0) (<= 0 main_~b~0))} is VALID [2022-04-07 20:44:45,179 INFO L290 TraceCheckUtils]: 20: Hoare triple {1152#(not (= |assume_abort_if_not_#in~cond| 0))} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1152#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 20:44:45,179 INFO L290 TraceCheckUtils]: 19: Hoare triple {1272#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1152#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 20:44:45,180 INFO L290 TraceCheckUtils]: 18: Hoare triple {1089#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1272#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-07 20:44:45,180 INFO L272 TraceCheckUtils]: 17: Hoare triple {1089#true} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1089#true} is VALID [2022-04-07 20:44:45,180 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1089#true} {1089#true} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 5) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1089#true} is VALID [2022-04-07 20:44:45,180 INFO L290 TraceCheckUtils]: 15: Hoare triple {1089#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1089#true} is VALID [2022-04-07 20:44:45,180 INFO L290 TraceCheckUtils]: 14: Hoare triple {1089#true} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1089#true} is VALID [2022-04-07 20:44:45,180 INFO L290 TraceCheckUtils]: 13: Hoare triple {1089#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1089#true} is VALID [2022-04-07 20:44:45,180 INFO L272 TraceCheckUtils]: 12: Hoare triple {1089#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 5) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1089#true} is VALID [2022-04-07 20:44:45,180 INFO L290 TraceCheckUtils]: 11: Hoare triple {1089#true} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {1089#true} is VALID [2022-04-07 20:44:45,180 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1089#true} {1089#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 5)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {1089#true} is VALID [2022-04-07 20:44:45,180 INFO L290 TraceCheckUtils]: 9: Hoare triple {1089#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1089#true} is VALID [2022-04-07 20:44:45,180 INFO L290 TraceCheckUtils]: 8: Hoare triple {1089#true} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1089#true} is VALID [2022-04-07 20:44:45,181 INFO L290 TraceCheckUtils]: 7: Hoare triple {1089#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1089#true} is VALID [2022-04-07 20:44:45,181 INFO L272 TraceCheckUtils]: 6: Hoare triple {1089#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 5)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {1089#true} is VALID [2022-04-07 20:44:45,181 INFO L290 TraceCheckUtils]: 5: Hoare triple {1089#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1089#true} is VALID [2022-04-07 20:44:45,181 INFO L272 TraceCheckUtils]: 4: Hoare triple {1089#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1089#true} is VALID [2022-04-07 20:44:45,181 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1089#true} {1089#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1089#true} is VALID [2022-04-07 20:44:45,181 INFO L290 TraceCheckUtils]: 2: Hoare triple {1089#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1089#true} is VALID [2022-04-07 20:44:45,181 INFO L290 TraceCheckUtils]: 1: Hoare triple {1089#true} [76] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1089#true} is VALID [2022-04-07 20:44:45,181 INFO L272 TraceCheckUtils]: 0: Hoare triple {1089#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1089#true} is VALID [2022-04-07 20:44:45,182 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 7 proven. 3 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-07 20:44:45,182 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 20:44:45,182 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [33668170] [2022-04-07 20:44:45,182 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 20:44:45,182 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1420140211] [2022-04-07 20:44:45,182 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1420140211] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 20:44:45,182 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 20:44:45,182 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 13] total 19 [2022-04-07 20:44:45,183 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2147383432] [2022-04-07 20:44:45,183 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 20:44:45,183 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 1.6842105263157894) internal successors, (32), 16 states have internal predecessors, (32), 5 states have call successors, (9), 2 states have call predecessors, (9), 3 states have return successors, (7), 5 states have call predecessors, (7), 3 states have call successors, (7) Word has length 37 [2022-04-07 20:44:45,184 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 20:44:45,184 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 19 states, 19 states have (on average 1.6842105263157894) internal successors, (32), 16 states have internal predecessors, (32), 5 states have call successors, (9), 2 states have call predecessors, (9), 3 states have return successors, (7), 5 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-07 20:44:45,227 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 20:44:45,227 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2022-04-07 20:44:45,227 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 20:44:45,227 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2022-04-07 20:44:45,227 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=62, Invalid=280, Unknown=0, NotChecked=0, Total=342 [2022-04-07 20:44:45,228 INFO L87 Difference]: Start difference. First operand 41 states and 45 transitions. Second operand has 19 states, 19 states have (on average 1.6842105263157894) internal successors, (32), 16 states have internal predecessors, (32), 5 states have call successors, (9), 2 states have call predecessors, (9), 3 states have return successors, (7), 5 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-07 20:44:47,193 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:44:47,193 INFO L93 Difference]: Finished difference Result 59 states and 69 transitions. [2022-04-07 20:44:47,194 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-04-07 20:44:47,194 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 1.6842105263157894) internal successors, (32), 16 states have internal predecessors, (32), 5 states have call successors, (9), 2 states have call predecessors, (9), 3 states have return successors, (7), 5 states have call predecessors, (7), 3 states have call successors, (7) Word has length 37 [2022-04-07 20:44:47,194 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 20:44:47,194 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 1.6842105263157894) internal successors, (32), 16 states have internal predecessors, (32), 5 states have call successors, (9), 2 states have call predecessors, (9), 3 states have return successors, (7), 5 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-07 20:44:47,197 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 61 transitions. [2022-04-07 20:44:47,197 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 1.6842105263157894) internal successors, (32), 16 states have internal predecessors, (32), 5 states have call successors, (9), 2 states have call predecessors, (9), 3 states have return successors, (7), 5 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-07 20:44:47,199 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 61 transitions. [2022-04-07 20:44:47,199 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 17 states and 61 transitions. [2022-04-07 20:44:47,277 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 20:44:47,279 INFO L225 Difference]: With dead ends: 59 [2022-04-07 20:44:47,279 INFO L226 Difference]: Without dead ends: 59 [2022-04-07 20:44:47,279 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 80 GetRequests, 54 SyntacticMatches, 2 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 102 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=122, Invalid=528, Unknown=0, NotChecked=0, Total=650 [2022-04-07 20:44:47,280 INFO L913 BasicCegarLoop]: 19 mSDtfsCounter, 46 mSDsluCounter, 111 mSDsCounter, 0 mSdLazyCounter, 268 mSolverCounterSat, 38 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 48 SdHoareTripleChecker+Valid, 130 SdHoareTripleChecker+Invalid, 306 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 38 IncrementalHoareTripleChecker+Valid, 268 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-04-07 20:44:47,280 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [48 Valid, 130 Invalid, 306 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [38 Valid, 268 Invalid, 0 Unknown, 0 Unchecked, 0.8s Time] [2022-04-07 20:44:47,281 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 59 states. [2022-04-07 20:44:47,285 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 59 to 59. [2022-04-07 20:44:47,285 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 20:44:47,285 INFO L82 GeneralOperation]: Start isEquivalent. First operand 59 states. Second operand has 59 states, 40 states have (on average 1.175) internal successors, (47), 43 states have internal predecessors, (47), 12 states have call successors, (12), 7 states have call predecessors, (12), 6 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 20:44:47,285 INFO L74 IsIncluded]: Start isIncluded. First operand 59 states. Second operand has 59 states, 40 states have (on average 1.175) internal successors, (47), 43 states have internal predecessors, (47), 12 states have call successors, (12), 7 states have call predecessors, (12), 6 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 20:44:47,286 INFO L87 Difference]: Start difference. First operand 59 states. Second operand has 59 states, 40 states have (on average 1.175) internal successors, (47), 43 states have internal predecessors, (47), 12 states have call successors, (12), 7 states have call predecessors, (12), 6 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 20:44:47,288 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:44:47,288 INFO L93 Difference]: Finished difference Result 59 states and 69 transitions. [2022-04-07 20:44:47,288 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 69 transitions. [2022-04-07 20:44:47,289 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:44:47,289 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:44:47,289 INFO L74 IsIncluded]: Start isIncluded. First operand has 59 states, 40 states have (on average 1.175) internal successors, (47), 43 states have internal predecessors, (47), 12 states have call successors, (12), 7 states have call predecessors, (12), 6 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) Second operand 59 states. [2022-04-07 20:44:47,289 INFO L87 Difference]: Start difference. First operand has 59 states, 40 states have (on average 1.175) internal successors, (47), 43 states have internal predecessors, (47), 12 states have call successors, (12), 7 states have call predecessors, (12), 6 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) Second operand 59 states. [2022-04-07 20:44:47,292 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:44:47,292 INFO L93 Difference]: Finished difference Result 59 states and 69 transitions. [2022-04-07 20:44:47,292 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 69 transitions. [2022-04-07 20:44:47,293 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:44:47,293 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:44:47,293 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 20:44:47,293 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 20:44:47,293 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 59 states, 40 states have (on average 1.175) internal successors, (47), 43 states have internal predecessors, (47), 12 states have call successors, (12), 7 states have call predecessors, (12), 6 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 20:44:47,295 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 59 states to 59 states and 69 transitions. [2022-04-07 20:44:47,295 INFO L78 Accepts]: Start accepts. Automaton has 59 states and 69 transitions. Word has length 37 [2022-04-07 20:44:47,295 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 20:44:47,295 INFO L478 AbstractCegarLoop]: Abstraction has 59 states and 69 transitions. [2022-04-07 20:44:47,296 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 19 states, 19 states have (on average 1.6842105263157894) internal successors, (32), 16 states have internal predecessors, (32), 5 states have call successors, (9), 2 states have call predecessors, (9), 3 states have return successors, (7), 5 states have call predecessors, (7), 3 states have call successors, (7) [2022-04-07 20:44:47,296 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 69 transitions. [2022-04-07 20:44:47,297 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-07 20:44:47,297 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 20:44:47,297 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 20:44:47,322 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-07 20:44:47,503 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 20:44:47,504 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 20:44:47,504 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 20:44:47,504 INFO L85 PathProgramCache]: Analyzing trace with hash -266261558, now seen corresponding path program 1 times [2022-04-07 20:44:47,504 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 20:44:47,504 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [552605053] [2022-04-07 20:44:47,504 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:44:47,505 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 20:44:47,520 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 20:44:47,520 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1685540411] [2022-04-07 20:44:47,520 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:44:47,520 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 20:44:47,520 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 20:44:47,526 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 20:44:47,527 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-07 20:44:47,598 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:44:47,599 INFO L263 TraceCheckSpWp]: Trace formula consists of 122 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-07 20:44:47,610 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:44:47,612 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 20:44:57,404 INFO L272 TraceCheckUtils]: 0: Hoare triple {1579#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1579#true} is VALID [2022-04-07 20:44:57,405 INFO L290 TraceCheckUtils]: 1: Hoare triple {1579#true} [76] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1579#true} is VALID [2022-04-07 20:44:57,405 INFO L290 TraceCheckUtils]: 2: Hoare triple {1579#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1579#true} is VALID [2022-04-07 20:44:57,405 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1579#true} {1579#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1579#true} is VALID [2022-04-07 20:44:57,405 INFO L272 TraceCheckUtils]: 4: Hoare triple {1579#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1579#true} is VALID [2022-04-07 20:44:57,405 INFO L290 TraceCheckUtils]: 5: Hoare triple {1579#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1579#true} is VALID [2022-04-07 20:44:57,405 INFO L272 TraceCheckUtils]: 6: Hoare triple {1579#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 5)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {1579#true} is VALID [2022-04-07 20:44:57,406 INFO L290 TraceCheckUtils]: 7: Hoare triple {1579#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1579#true} is VALID [2022-04-07 20:44:57,406 INFO L290 TraceCheckUtils]: 8: Hoare triple {1579#true} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1579#true} is VALID [2022-04-07 20:44:57,406 INFO L290 TraceCheckUtils]: 9: Hoare triple {1579#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1579#true} is VALID [2022-04-07 20:44:57,406 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1579#true} {1579#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 5)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {1579#true} is VALID [2022-04-07 20:44:57,406 INFO L290 TraceCheckUtils]: 11: Hoare triple {1579#true} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {1579#true} is VALID [2022-04-07 20:44:57,406 INFO L272 TraceCheckUtils]: 12: Hoare triple {1579#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 5) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1579#true} is VALID [2022-04-07 20:44:57,406 INFO L290 TraceCheckUtils]: 13: Hoare triple {1579#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1579#true} is VALID [2022-04-07 20:44:57,406 INFO L290 TraceCheckUtils]: 14: Hoare triple {1579#true} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1579#true} is VALID [2022-04-07 20:44:57,406 INFO L290 TraceCheckUtils]: 15: Hoare triple {1579#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1579#true} is VALID [2022-04-07 20:44:57,407 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1579#true} {1579#true} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 5) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1579#true} is VALID [2022-04-07 20:44:57,407 INFO L272 TraceCheckUtils]: 17: Hoare triple {1579#true} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1579#true} is VALID [2022-04-07 20:44:57,407 INFO L290 TraceCheckUtils]: 18: Hoare triple {1579#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1579#true} is VALID [2022-04-07 20:44:57,407 INFO L290 TraceCheckUtils]: 19: Hoare triple {1579#true} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1579#true} is VALID [2022-04-07 20:44:57,407 INFO L290 TraceCheckUtils]: 20: Hoare triple {1579#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1579#true} is VALID [2022-04-07 20:44:57,407 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1579#true} {1579#true} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1579#true} is VALID [2022-04-07 20:44:57,407 INFO L290 TraceCheckUtils]: 22: Hoare triple {1579#true} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {1579#true} is VALID [2022-04-07 20:44:57,407 INFO L290 TraceCheckUtils]: 23: Hoare triple {1579#true} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1579#true} is VALID [2022-04-07 20:44:57,407 INFO L272 TraceCheckUtils]: 24: Hoare triple {1579#true} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1579#true} is VALID [2022-04-07 20:44:57,408 INFO L290 TraceCheckUtils]: 25: Hoare triple {1579#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1579#true} is VALID [2022-04-07 20:44:57,408 INFO L290 TraceCheckUtils]: 26: Hoare triple {1579#true} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1579#true} is VALID [2022-04-07 20:44:57,408 INFO L290 TraceCheckUtils]: 27: Hoare triple {1579#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1579#true} is VALID [2022-04-07 20:44:57,408 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1579#true} {1579#true} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1579#true} is VALID [2022-04-07 20:44:57,408 INFO L290 TraceCheckUtils]: 29: Hoare triple {1579#true} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {1579#true} is VALID [2022-04-07 20:44:57,408 INFO L290 TraceCheckUtils]: 30: Hoare triple {1579#true} [101] L39-->L39-2: Formula: (and (= v_main_~y~0_1 (+ (- 1) v_main_~y~0_2)) (= v_main_~z~0_1 (+ v_main_~x~0_1 v_main_~z~0_2)) (= (let ((.cse0 (mod v_main_~y~0_2 2))) (ite (and (< v_main_~y~0_2 0) (not (= .cse0 0))) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_2, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_2} OutVars{main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_1} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {1579#true} is VALID [2022-04-07 20:44:57,408 INFO L290 TraceCheckUtils]: 31: Hoare triple {1579#true} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {1579#true} is VALID [2022-04-07 20:44:57,409 INFO L290 TraceCheckUtils]: 32: Hoare triple {1579#true} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1579#true} is VALID [2022-04-07 20:44:57,409 INFO L272 TraceCheckUtils]: 33: Hoare triple {1579#true} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1579#true} is VALID [2022-04-07 20:44:57,409 INFO L290 TraceCheckUtils]: 34: Hoare triple {1579#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1686#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-07 20:44:57,409 INFO L290 TraceCheckUtils]: 35: Hoare triple {1686#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1690#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 20:44:57,410 INFO L290 TraceCheckUtils]: 36: Hoare triple {1690#(not (= |__VERIFIER_assert_#in~cond| 0))} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1690#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 20:44:59,412 WARN L284 TraceCheckUtils]: 37: Hoare quadruple {1690#(not (= |__VERIFIER_assert_#in~cond| 0))} {1579#true} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1697#(or (and (not (= main_~y~0 0)) (= (mod (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) main_~y~0) 0)) (= (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 0))} is UNKNOWN [2022-04-07 20:44:59,424 INFO L290 TraceCheckUtils]: 38: Hoare triple {1697#(or (and (not (= main_~y~0 0)) (= (mod (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) main_~y~0) 0)) (= (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 0))} [96] L35-1-->L34-3: Formula: (= v_main_~y~0_9 0) InVars {main_~y~0=v_main_~y~0_9} OutVars{main_~y~0=v_main_~y~0_9} AuxVars[] AssignedVars[] {1701#(= main_~z~0 (* main_~b~0 main_~a~0))} is VALID [2022-04-07 20:44:59,425 INFO L272 TraceCheckUtils]: 39: Hoare triple {1701#(= main_~z~0 (* main_~b~0 main_~a~0))} [92] L34-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_10 v_main_~b~0_11)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_11, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~z~0, main_~b~0, main_~a~0] {1705#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 20:44:59,425 INFO L290 TraceCheckUtils]: 40: Hoare triple {1705#(<= 1 |__VERIFIER_assert_#in~cond|)} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1709#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 20:44:59,425 INFO L290 TraceCheckUtils]: 41: Hoare triple {1709#(<= 1 __VERIFIER_assert_~cond)} [99] L13-->L14: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1580#false} is VALID [2022-04-07 20:44:59,426 INFO L290 TraceCheckUtils]: 42: Hoare triple {1580#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1580#false} is VALID [2022-04-07 20:44:59,426 INFO L134 CoverageAnalysis]: Checked inductivity of 23 backedges. 7 proven. 1 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-04-07 20:44:59,426 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 20:45:06,911 INFO L290 TraceCheckUtils]: 42: Hoare triple {1580#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1580#false} is VALID [2022-04-07 20:45:06,912 INFO L290 TraceCheckUtils]: 41: Hoare triple {1709#(<= 1 __VERIFIER_assert_~cond)} [99] L13-->L14: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1580#false} is VALID [2022-04-07 20:45:06,912 INFO L290 TraceCheckUtils]: 40: Hoare triple {1705#(<= 1 |__VERIFIER_assert_#in~cond|)} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1709#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 20:45:06,913 INFO L272 TraceCheckUtils]: 39: Hoare triple {1701#(= main_~z~0 (* main_~b~0 main_~a~0))} [92] L34-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~z~0_8 (* v_main_~a~0_10 v_main_~b~0_11)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~b~0=v_main_~b~0_11, main_~z~0=v_main_~z~0_8, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~z~0, main_~b~0, main_~a~0] {1705#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 20:45:06,913 INFO L290 TraceCheckUtils]: 38: Hoare triple {1728#(or (not (= main_~y~0 0)) (= main_~z~0 (* main_~b~0 main_~a~0)))} [96] L35-1-->L34-3: Formula: (= v_main_~y~0_9 0) InVars {main_~y~0=v_main_~y~0_9} OutVars{main_~y~0=v_main_~y~0_9} AuxVars[] AssignedVars[] {1701#(= main_~z~0 (* main_~b~0 main_~a~0))} is VALID [2022-04-07 20:45:06,914 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {1690#(not (= |__VERIFIER_assert_#in~cond| 0))} {1579#true} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1728#(or (not (= main_~y~0 0)) (= main_~z~0 (* main_~b~0 main_~a~0)))} is VALID [2022-04-07 20:45:06,914 INFO L290 TraceCheckUtils]: 36: Hoare triple {1690#(not (= |__VERIFIER_assert_#in~cond| 0))} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1690#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 20:45:06,915 INFO L290 TraceCheckUtils]: 35: Hoare triple {1741#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1690#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 20:45:06,915 INFO L290 TraceCheckUtils]: 34: Hoare triple {1579#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1741#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-07 20:45:06,915 INFO L272 TraceCheckUtils]: 33: Hoare triple {1579#true} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1579#true} is VALID [2022-04-07 20:45:06,915 INFO L290 TraceCheckUtils]: 32: Hoare triple {1579#true} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1579#true} is VALID [2022-04-07 20:45:06,916 INFO L290 TraceCheckUtils]: 31: Hoare triple {1579#true} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {1579#true} is VALID [2022-04-07 20:45:06,916 INFO L290 TraceCheckUtils]: 30: Hoare triple {1579#true} [101] L39-->L39-2: Formula: (and (= v_main_~y~0_1 (+ (- 1) v_main_~y~0_2)) (= v_main_~z~0_1 (+ v_main_~x~0_1 v_main_~z~0_2)) (= (let ((.cse0 (mod v_main_~y~0_2 2))) (ite (and (< v_main_~y~0_2 0) (not (= .cse0 0))) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_2, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_2} OutVars{main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_1} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {1579#true} is VALID [2022-04-07 20:45:06,916 INFO L290 TraceCheckUtils]: 29: Hoare triple {1579#true} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {1579#true} is VALID [2022-04-07 20:45:06,916 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1579#true} {1579#true} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1579#true} is VALID [2022-04-07 20:45:06,916 INFO L290 TraceCheckUtils]: 27: Hoare triple {1579#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1579#true} is VALID [2022-04-07 20:45:06,916 INFO L290 TraceCheckUtils]: 26: Hoare triple {1579#true} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1579#true} is VALID [2022-04-07 20:45:06,916 INFO L290 TraceCheckUtils]: 25: Hoare triple {1579#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1579#true} is VALID [2022-04-07 20:45:06,916 INFO L272 TraceCheckUtils]: 24: Hoare triple {1579#true} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1579#true} is VALID [2022-04-07 20:45:06,916 INFO L290 TraceCheckUtils]: 23: Hoare triple {1579#true} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1579#true} is VALID [2022-04-07 20:45:06,917 INFO L290 TraceCheckUtils]: 22: Hoare triple {1579#true} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {1579#true} is VALID [2022-04-07 20:45:06,917 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1579#true} {1579#true} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1579#true} is VALID [2022-04-07 20:45:06,917 INFO L290 TraceCheckUtils]: 20: Hoare triple {1579#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1579#true} is VALID [2022-04-07 20:45:06,917 INFO L290 TraceCheckUtils]: 19: Hoare triple {1579#true} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1579#true} is VALID [2022-04-07 20:45:06,917 INFO L290 TraceCheckUtils]: 18: Hoare triple {1579#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1579#true} is VALID [2022-04-07 20:45:06,917 INFO L272 TraceCheckUtils]: 17: Hoare triple {1579#true} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1579#true} is VALID [2022-04-07 20:45:06,917 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1579#true} {1579#true} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 5) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1579#true} is VALID [2022-04-07 20:45:06,917 INFO L290 TraceCheckUtils]: 15: Hoare triple {1579#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1579#true} is VALID [2022-04-07 20:45:06,917 INFO L290 TraceCheckUtils]: 14: Hoare triple {1579#true} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1579#true} is VALID [2022-04-07 20:45:06,917 INFO L290 TraceCheckUtils]: 13: Hoare triple {1579#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1579#true} is VALID [2022-04-07 20:45:06,917 INFO L272 TraceCheckUtils]: 12: Hoare triple {1579#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 5) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {1579#true} is VALID [2022-04-07 20:45:06,917 INFO L290 TraceCheckUtils]: 11: Hoare triple {1579#true} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {1579#true} is VALID [2022-04-07 20:45:06,918 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1579#true} {1579#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 5)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {1579#true} is VALID [2022-04-07 20:45:06,918 INFO L290 TraceCheckUtils]: 9: Hoare triple {1579#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1579#true} is VALID [2022-04-07 20:45:06,918 INFO L290 TraceCheckUtils]: 8: Hoare triple {1579#true} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1579#true} is VALID [2022-04-07 20:45:06,918 INFO L290 TraceCheckUtils]: 7: Hoare triple {1579#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1579#true} is VALID [2022-04-07 20:45:06,918 INFO L272 TraceCheckUtils]: 6: Hoare triple {1579#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 5)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {1579#true} is VALID [2022-04-07 20:45:06,918 INFO L290 TraceCheckUtils]: 5: Hoare triple {1579#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {1579#true} is VALID [2022-04-07 20:45:06,918 INFO L272 TraceCheckUtils]: 4: Hoare triple {1579#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1579#true} is VALID [2022-04-07 20:45:06,918 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1579#true} {1579#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1579#true} is VALID [2022-04-07 20:45:06,918 INFO L290 TraceCheckUtils]: 2: Hoare triple {1579#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1579#true} is VALID [2022-04-07 20:45:06,919 INFO L290 TraceCheckUtils]: 1: Hoare triple {1579#true} [76] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1579#true} is VALID [2022-04-07 20:45:06,919 INFO L272 TraceCheckUtils]: 0: Hoare triple {1579#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1579#true} is VALID [2022-04-07 20:45:06,919 INFO L134 CoverageAnalysis]: Checked inductivity of 23 backedges. 7 proven. 1 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-04-07 20:45:06,919 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 20:45:06,919 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [552605053] [2022-04-07 20:45:06,919 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 20:45:06,919 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1685540411] [2022-04-07 20:45:06,919 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1685540411] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 20:45:06,919 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 20:45:06,919 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-07 20:45:06,919 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [398335436] [2022-04-07 20:45:06,919 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 20:45:06,920 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) Word has length 43 [2022-04-07 20:45:06,920 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 20:45:06,920 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-07 20:45:08,950 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 38 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-07 20:45:08,950 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-07 20:45:08,950 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 20:45:08,950 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-07 20:45:08,950 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=66, Unknown=0, NotChecked=0, Total=90 [2022-04-07 20:45:08,951 INFO L87 Difference]: Start difference. First operand 59 states and 69 transitions. Second operand has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-07 20:45:11,008 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-07 20:45:11,633 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:45:11,633 INFO L93 Difference]: Finished difference Result 63 states and 72 transitions. [2022-04-07 20:45:11,633 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-07 20:45:11,633 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) Word has length 43 [2022-04-07 20:45:11,633 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 20:45:11,634 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-07 20:45:11,635 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 39 transitions. [2022-04-07 20:45:11,635 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-07 20:45:11,636 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 39 transitions. [2022-04-07 20:45:11,636 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 39 transitions. [2022-04-07 20:45:15,675 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 37 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-07 20:45:15,676 INFO L225 Difference]: With dead ends: 63 [2022-04-07 20:45:15,676 INFO L226 Difference]: Without dead ends: 58 [2022-04-07 20:45:15,676 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 87 GetRequests, 76 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=37, Invalid=95, Unknown=0, NotChecked=0, Total=132 [2022-04-07 20:45:15,677 INFO L913 BasicCegarLoop]: 25 mSDtfsCounter, 18 mSDsluCounter, 93 mSDsCounter, 0 mSdLazyCounter, 76 mSolverCounterSat, 2 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 118 SdHoareTripleChecker+Invalid, 79 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 76 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.2s IncrementalHoareTripleChecker+Time [2022-04-07 20:45:15,677 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [18 Valid, 118 Invalid, 79 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 76 Invalid, 1 Unknown, 0 Unchecked, 2.2s Time] [2022-04-07 20:45:15,678 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 58 states. [2022-04-07 20:45:15,682 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 58 to 58. [2022-04-07 20:45:15,682 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 20:45:15,682 INFO L82 GeneralOperation]: Start isEquivalent. First operand 58 states. Second operand has 58 states, 40 states have (on average 1.125) internal successors, (45), 42 states have internal predecessors, (45), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 20:45:15,682 INFO L74 IsIncluded]: Start isIncluded. First operand 58 states. Second operand has 58 states, 40 states have (on average 1.125) internal successors, (45), 42 states have internal predecessors, (45), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 20:45:15,683 INFO L87 Difference]: Start difference. First operand 58 states. Second operand has 58 states, 40 states have (on average 1.125) internal successors, (45), 42 states have internal predecessors, (45), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 20:45:15,685 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:45:15,685 INFO L93 Difference]: Finished difference Result 58 states and 66 transitions. [2022-04-07 20:45:15,685 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 66 transitions. [2022-04-07 20:45:15,685 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:45:15,685 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:45:15,685 INFO L74 IsIncluded]: Start isIncluded. First operand has 58 states, 40 states have (on average 1.125) internal successors, (45), 42 states have internal predecessors, (45), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) Second operand 58 states. [2022-04-07 20:45:15,686 INFO L87 Difference]: Start difference. First operand has 58 states, 40 states have (on average 1.125) internal successors, (45), 42 states have internal predecessors, (45), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) Second operand 58 states. [2022-04-07 20:45:15,688 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:45:15,688 INFO L93 Difference]: Finished difference Result 58 states and 66 transitions. [2022-04-07 20:45:15,688 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 66 transitions. [2022-04-07 20:45:15,688 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:45:15,688 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:45:15,688 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 20:45:15,688 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 20:45:15,688 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 58 states, 40 states have (on average 1.125) internal successors, (45), 42 states have internal predecessors, (45), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (10), 8 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 20:45:15,690 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 58 states to 58 states and 66 transitions. [2022-04-07 20:45:15,690 INFO L78 Accepts]: Start accepts. Automaton has 58 states and 66 transitions. Word has length 43 [2022-04-07 20:45:15,690 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 20:45:15,690 INFO L478 AbstractCegarLoop]: Abstraction has 58 states and 66 transitions. [2022-04-07 20:45:15,691 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 7 states have internal predecessors, (25), 2 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-07 20:45:15,691 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 66 transitions. [2022-04-07 20:45:15,691 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-04-07 20:45:15,691 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 20:45:15,692 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 20:45:15,721 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-07 20:45:15,892 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 20:45:15,892 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 20:45:15,893 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 20:45:15,893 INFO L85 PathProgramCache]: Analyzing trace with hash -1353204359, now seen corresponding path program 1 times [2022-04-07 20:45:15,893 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 20:45:15,893 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1755654123] [2022-04-07 20:45:15,893 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:45:15,893 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 20:45:15,909 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 20:45:15,909 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1279870873] [2022-04-07 20:45:15,909 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:45:15,909 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 20:45:15,909 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 20:45:15,910 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 20:45:15,912 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-07 20:45:15,952 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:45:15,953 INFO L263 TraceCheckSpWp]: Trace formula consists of 127 conjuncts, 24 conjunts are in the unsatisfiable core [2022-04-07 20:45:15,979 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:45:15,980 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 20:45:43,134 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-07 20:46:11,863 INFO L272 TraceCheckUtils]: 0: Hoare triple {2087#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2087#true} is VALID [2022-04-07 20:46:11,863 INFO L290 TraceCheckUtils]: 1: Hoare triple {2087#true} [76] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {2087#true} is VALID [2022-04-07 20:46:11,863 INFO L290 TraceCheckUtils]: 2: Hoare triple {2087#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2087#true} is VALID [2022-04-07 20:46:11,863 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2087#true} {2087#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2087#true} is VALID [2022-04-07 20:46:11,863 INFO L272 TraceCheckUtils]: 4: Hoare triple {2087#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2087#true} is VALID [2022-04-07 20:46:11,863 INFO L290 TraceCheckUtils]: 5: Hoare triple {2087#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2087#true} is VALID [2022-04-07 20:46:11,863 INFO L272 TraceCheckUtils]: 6: Hoare triple {2087#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 5)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {2087#true} is VALID [2022-04-07 20:46:11,863 INFO L290 TraceCheckUtils]: 7: Hoare triple {2087#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2087#true} is VALID [2022-04-07 20:46:11,863 INFO L290 TraceCheckUtils]: 8: Hoare triple {2087#true} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2087#true} is VALID [2022-04-07 20:46:11,864 INFO L290 TraceCheckUtils]: 9: Hoare triple {2087#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2087#true} is VALID [2022-04-07 20:46:11,864 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2087#true} {2087#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 5)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {2087#true} is VALID [2022-04-07 20:46:11,864 INFO L290 TraceCheckUtils]: 11: Hoare triple {2087#true} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {2087#true} is VALID [2022-04-07 20:46:11,864 INFO L272 TraceCheckUtils]: 12: Hoare triple {2087#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 5) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2087#true} is VALID [2022-04-07 20:46:11,864 INFO L290 TraceCheckUtils]: 13: Hoare triple {2087#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2087#true} is VALID [2022-04-07 20:46:11,864 INFO L290 TraceCheckUtils]: 14: Hoare triple {2087#true} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2087#true} is VALID [2022-04-07 20:46:11,864 INFO L290 TraceCheckUtils]: 15: Hoare triple {2087#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2087#true} is VALID [2022-04-07 20:46:11,864 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2087#true} {2087#true} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 5) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2087#true} is VALID [2022-04-07 20:46:11,864 INFO L272 TraceCheckUtils]: 17: Hoare triple {2087#true} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2087#true} is VALID [2022-04-07 20:46:11,864 INFO L290 TraceCheckUtils]: 18: Hoare triple {2087#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2087#true} is VALID [2022-04-07 20:46:11,864 INFO L290 TraceCheckUtils]: 19: Hoare triple {2087#true} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2087#true} is VALID [2022-04-07 20:46:11,864 INFO L290 TraceCheckUtils]: 20: Hoare triple {2087#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2087#true} is VALID [2022-04-07 20:46:11,864 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2087#true} {2087#true} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2087#true} is VALID [2022-04-07 20:46:11,865 INFO L290 TraceCheckUtils]: 22: Hoare triple {2087#true} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {2158#(= main_~a~0 main_~x~0)} is VALID [2022-04-07 20:46:11,865 INFO L290 TraceCheckUtils]: 23: Hoare triple {2158#(= main_~a~0 main_~x~0)} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2158#(= main_~a~0 main_~x~0)} is VALID [2022-04-07 20:46:11,865 INFO L272 TraceCheckUtils]: 24: Hoare triple {2158#(= main_~a~0 main_~x~0)} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2087#true} is VALID [2022-04-07 20:46:11,865 INFO L290 TraceCheckUtils]: 25: Hoare triple {2087#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2087#true} is VALID [2022-04-07 20:46:11,865 INFO L290 TraceCheckUtils]: 26: Hoare triple {2087#true} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2087#true} is VALID [2022-04-07 20:46:11,865 INFO L290 TraceCheckUtils]: 27: Hoare triple {2087#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2087#true} is VALID [2022-04-07 20:46:11,866 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2087#true} {2158#(= main_~a~0 main_~x~0)} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2158#(= main_~a~0 main_~x~0)} is VALID [2022-04-07 20:46:11,866 INFO L290 TraceCheckUtils]: 29: Hoare triple {2158#(= main_~a~0 main_~x~0)} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {2180#(and (not (= main_~y~0 0)) (= main_~a~0 main_~x~0))} is VALID [2022-04-07 20:46:11,867 INFO L290 TraceCheckUtils]: 30: Hoare triple {2180#(and (not (= main_~y~0 0)) (= main_~a~0 main_~x~0))} [101] L39-->L39-2: Formula: (and (= v_main_~y~0_1 (+ (- 1) v_main_~y~0_2)) (= v_main_~z~0_1 (+ v_main_~x~0_1 v_main_~z~0_2)) (= (let ((.cse0 (mod v_main_~y~0_2 2))) (ite (and (< v_main_~y~0_2 0) (not (= .cse0 0))) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_2, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_2} OutVars{main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_1} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {2184#(and (< 0 (+ main_~y~0 1)) (= main_~a~0 main_~x~0))} is VALID [2022-04-07 20:46:11,868 INFO L290 TraceCheckUtils]: 31: Hoare triple {2184#(and (< 0 (+ main_~y~0 1)) (= main_~a~0 main_~x~0))} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {2188#(and (= (* main_~a~0 2) main_~x~0) (< 0 (+ main_~y~0 1)))} is VALID [2022-04-07 20:46:11,868 INFO L290 TraceCheckUtils]: 32: Hoare triple {2188#(and (= (* main_~a~0 2) main_~x~0) (< 0 (+ main_~y~0 1)))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2188#(and (= (* main_~a~0 2) main_~x~0) (< 0 (+ main_~y~0 1)))} is VALID [2022-04-07 20:46:11,868 INFO L272 TraceCheckUtils]: 33: Hoare triple {2188#(and (= (* main_~a~0 2) main_~x~0) (< 0 (+ main_~y~0 1)))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2087#true} is VALID [2022-04-07 20:46:11,868 INFO L290 TraceCheckUtils]: 34: Hoare triple {2087#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2198#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-07 20:46:11,869 INFO L290 TraceCheckUtils]: 35: Hoare triple {2198#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2202#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 20:46:11,869 INFO L290 TraceCheckUtils]: 36: Hoare triple {2202#(not (= |__VERIFIER_assert_#in~cond| 0))} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2202#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 20:46:11,870 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2202#(not (= |__VERIFIER_assert_#in~cond| 0))} {2188#(and (= (* main_~a~0 2) main_~x~0) (< 0 (+ main_~y~0 1)))} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2209#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (* main_~a~0 2) main_~x~0) (< 0 (+ main_~y~0 1)))} is VALID [2022-04-07 20:46:11,871 INFO L290 TraceCheckUtils]: 38: Hoare triple {2209#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (* main_~a~0 2) main_~x~0) (< 0 (+ main_~y~0 1)))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {2209#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (* main_~a~0 2) main_~x~0) (< 0 (+ main_~y~0 1)))} is VALID [2022-04-07 20:46:11,872 INFO L290 TraceCheckUtils]: 39: Hoare triple {2209#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (= (* main_~a~0 2) main_~x~0) (< 0 (+ main_~y~0 1)))} [102] L39-->L39-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_3} OutVars{main_~y~0=v_main_~y~0_3} AuxVars[] AssignedVars[] {2216#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 1)) (= (* main_~a~0 2) main_~x~0) (< 0 (+ main_~y~0 1)))} is VALID [2022-04-07 20:46:11,874 INFO L290 TraceCheckUtils]: 40: Hoare triple {2216#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 1)) (= (* main_~a~0 2) main_~x~0) (< 0 (+ main_~y~0 1)))} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {2220#(and (= (* main_~a~0 4) main_~x~0) (exists ((aux_mod_v_main_~y~0_27_22 Int) (aux_div_v_main_~y~0_27_22 Int)) (and (< 0 (+ (* aux_div_v_main_~y~0_27_22 2) aux_mod_v_main_~y~0_27_22 1)) (= (* main_~b~0 main_~a~0) (+ (* (* main_~a~0 2) (+ (* aux_div_v_main_~y~0_27_22 2) aux_mod_v_main_~y~0_27_22)) main_~z~0)) (= main_~y~0 (div (+ (* aux_div_v_main_~y~0_27_22 2) aux_mod_v_main_~y~0_27_22) 2)) (not (= aux_mod_v_main_~y~0_27_22 1)) (< aux_mod_v_main_~y~0_27_22 2) (<= 0 aux_mod_v_main_~y~0_27_22))))} is VALID [2022-04-07 20:46:12,212 INFO L290 TraceCheckUtils]: 41: Hoare triple {2220#(and (= (* main_~a~0 4) main_~x~0) (exists ((aux_mod_v_main_~y~0_27_22 Int) (aux_div_v_main_~y~0_27_22 Int)) (and (< 0 (+ (* aux_div_v_main_~y~0_27_22 2) aux_mod_v_main_~y~0_27_22 1)) (= (* main_~b~0 main_~a~0) (+ (* (* main_~a~0 2) (+ (* aux_div_v_main_~y~0_27_22 2) aux_mod_v_main_~y~0_27_22)) main_~z~0)) (= main_~y~0 (div (+ (* aux_div_v_main_~y~0_27_22 2) aux_mod_v_main_~y~0_27_22) 2)) (not (= aux_mod_v_main_~y~0_27_22 1)) (< aux_mod_v_main_~y~0_27_22 2) (<= 0 aux_mod_v_main_~y~0_27_22))))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2224#(and (= (mod (+ main_~z~0 (* main_~a~0 main_~y~0 (- 4)) (* main_~b~0 main_~a~0)) 2) 0) (= (* main_~a~0 4) main_~x~0) (= (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 2) (* 2 (* main_~a~0 main_~y~0))) (< 0 (+ main_~y~0 1)))} is VALID [2022-04-07 20:46:13,029 INFO L272 TraceCheckUtils]: 42: Hoare triple {2224#(and (= (mod (+ main_~z~0 (* main_~a~0 main_~y~0 (- 4)) (* main_~b~0 main_~a~0)) 2) 0) (= (* main_~a~0 4) main_~x~0) (= (div (+ (* (- 1) main_~z~0) (* main_~b~0 main_~a~0)) 2) (* 2 (* main_~a~0 main_~y~0))) (< 0 (+ main_~y~0 1)))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2228#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 20:46:13,030 INFO L290 TraceCheckUtils]: 43: Hoare triple {2228#(<= 1 |__VERIFIER_assert_#in~cond|)} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2232#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 20:46:13,030 INFO L290 TraceCheckUtils]: 44: Hoare triple {2232#(<= 1 __VERIFIER_assert_~cond)} [99] L13-->L14: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2088#false} is VALID [2022-04-07 20:46:13,031 INFO L290 TraceCheckUtils]: 45: Hoare triple {2088#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2088#false} is VALID [2022-04-07 20:46:13,031 INFO L134 CoverageAnalysis]: Checked inductivity of 29 backedges. 6 proven. 10 refuted. 0 times theorem prover too weak. 13 trivial. 0 not checked. [2022-04-07 20:46:13,031 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 20:46:36,081 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 20:46:36,081 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1755654123] [2022-04-07 20:46:36,081 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 20:46:36,081 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1279870873] [2022-04-07 20:46:36,082 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1279870873] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-07 20:46:36,082 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-07 20:46:36,082 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14] total 14 [2022-04-07 20:46:36,082 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [342676873] [2022-04-07 20:46:36,082 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-07 20:46:36,083 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.0) internal successors, (26), 13 states have internal predecessors, (26), 4 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) Word has length 46 [2022-04-07 20:46:36,083 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 20:46:36,083 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 13 states have (on average 2.0) internal successors, (26), 13 states have internal predecessors, (26), 4 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-07 20:46:39,541 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 39 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-07 20:46:39,541 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-07 20:46:39,541 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 20:46:39,541 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-07 20:46:39,541 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=56, Invalid=249, Unknown=1, NotChecked=0, Total=306 [2022-04-07 20:46:39,542 INFO L87 Difference]: Start difference. First operand 58 states and 66 transitions. Second operand has 14 states, 13 states have (on average 2.0) internal successors, (26), 13 states have internal predecessors, (26), 4 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-07 20:46:42,191 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-07 20:46:43,052 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:46:43,053 INFO L93 Difference]: Finished difference Result 77 states and 87 transitions. [2022-04-07 20:46:43,053 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-07 20:46:43,053 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 13 states have (on average 2.0) internal successors, (26), 13 states have internal predecessors, (26), 4 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) Word has length 46 [2022-04-07 20:46:43,053 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 20:46:43,053 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.0) internal successors, (26), 13 states have internal predecessors, (26), 4 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-07 20:46:43,055 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 51 transitions. [2022-04-07 20:46:43,055 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 13 states have (on average 2.0) internal successors, (26), 13 states have internal predecessors, (26), 4 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-07 20:46:43,056 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 51 transitions. [2022-04-07 20:46:43,056 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 51 transitions. [2022-04-07 20:46:43,677 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 20:46:43,678 INFO L225 Difference]: With dead ends: 77 [2022-04-07 20:46:43,678 INFO L226 Difference]: Without dead ends: 77 [2022-04-07 20:46:43,678 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 56 GetRequests, 37 SyntacticMatches, 1 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 70 ImplicationChecksByTransitivity, 5.0s TimeCoverageRelationStatistics Valid=67, Invalid=312, Unknown=1, NotChecked=0, Total=380 [2022-04-07 20:46:43,679 INFO L913 BasicCegarLoop]: 28 mSDtfsCounter, 15 mSDsluCounter, 207 mSDsCounter, 0 mSdLazyCounter, 191 mSolverCounterSat, 3 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 16 SdHoareTripleChecker+Valid, 235 SdHoareTripleChecker+Invalid, 205 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 191 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 10 IncrementalHoareTripleChecker+Unchecked, 2.7s IncrementalHoareTripleChecker+Time [2022-04-07 20:46:43,679 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [16 Valid, 235 Invalid, 205 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 191 Invalid, 1 Unknown, 10 Unchecked, 2.7s Time] [2022-04-07 20:46:43,680 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 77 states. [2022-04-07 20:46:43,684 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 77 to 70. [2022-04-07 20:46:43,684 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 20:46:43,684 INFO L82 GeneralOperation]: Start isEquivalent. First operand 77 states. Second operand has 70 states, 49 states have (on average 1.1224489795918366) internal successors, (55), 52 states have internal predecessors, (55), 13 states have call successors, (13), 8 states have call predecessors, (13), 7 states have return successors, (12), 9 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-07 20:46:43,684 INFO L74 IsIncluded]: Start isIncluded. First operand 77 states. Second operand has 70 states, 49 states have (on average 1.1224489795918366) internal successors, (55), 52 states have internal predecessors, (55), 13 states have call successors, (13), 8 states have call predecessors, (13), 7 states have return successors, (12), 9 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-07 20:46:43,685 INFO L87 Difference]: Start difference. First operand 77 states. Second operand has 70 states, 49 states have (on average 1.1224489795918366) internal successors, (55), 52 states have internal predecessors, (55), 13 states have call successors, (13), 8 states have call predecessors, (13), 7 states have return successors, (12), 9 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-07 20:46:43,687 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:46:43,688 INFO L93 Difference]: Finished difference Result 77 states and 87 transitions. [2022-04-07 20:46:43,688 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 87 transitions. [2022-04-07 20:46:43,688 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:46:43,688 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:46:43,688 INFO L74 IsIncluded]: Start isIncluded. First operand has 70 states, 49 states have (on average 1.1224489795918366) internal successors, (55), 52 states have internal predecessors, (55), 13 states have call successors, (13), 8 states have call predecessors, (13), 7 states have return successors, (12), 9 states have call predecessors, (12), 12 states have call successors, (12) Second operand 77 states. [2022-04-07 20:46:43,689 INFO L87 Difference]: Start difference. First operand has 70 states, 49 states have (on average 1.1224489795918366) internal successors, (55), 52 states have internal predecessors, (55), 13 states have call successors, (13), 8 states have call predecessors, (13), 7 states have return successors, (12), 9 states have call predecessors, (12), 12 states have call successors, (12) Second operand 77 states. [2022-04-07 20:46:43,691 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:46:43,691 INFO L93 Difference]: Finished difference Result 77 states and 87 transitions. [2022-04-07 20:46:43,691 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 87 transitions. [2022-04-07 20:46:43,691 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:46:43,692 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:46:43,692 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 20:46:43,692 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 20:46:43,692 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 70 states, 49 states have (on average 1.1224489795918366) internal successors, (55), 52 states have internal predecessors, (55), 13 states have call successors, (13), 8 states have call predecessors, (13), 7 states have return successors, (12), 9 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-07 20:46:43,694 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 70 states to 70 states and 80 transitions. [2022-04-07 20:46:43,694 INFO L78 Accepts]: Start accepts. Automaton has 70 states and 80 transitions. Word has length 46 [2022-04-07 20:46:43,694 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 20:46:43,694 INFO L478 AbstractCegarLoop]: Abstraction has 70 states and 80 transitions. [2022-04-07 20:46:43,694 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 13 states have (on average 2.0) internal successors, (26), 13 states have internal predecessors, (26), 4 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-07 20:46:43,694 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 80 transitions. [2022-04-07 20:46:43,695 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-07 20:46:43,695 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 20:46:43,695 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 20:46:43,720 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-07 20:46:43,911 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 20:46:43,911 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 20:46:43,912 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 20:46:43,912 INFO L85 PathProgramCache]: Analyzing trace with hash -172555565, now seen corresponding path program 2 times [2022-04-07 20:46:43,912 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 20:46:43,912 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1322380733] [2022-04-07 20:46:43,912 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:46:43,912 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 20:46:43,927 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 20:46:43,927 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [457892929] [2022-04-07 20:46:43,927 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-07 20:46:43,927 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 20:46:43,927 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 20:46:43,928 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 20:46:43,950 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-07 20:46:43,976 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-07 20:46:43,976 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-07 20:46:43,977 INFO L263 TraceCheckSpWp]: Trace formula consists of 148 conjuncts, 18 conjunts are in the unsatisfiable core [2022-04-07 20:46:43,987 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:46:43,988 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 20:46:45,365 INFO L272 TraceCheckUtils]: 0: Hoare triple {2574#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2574#true} is VALID [2022-04-07 20:46:45,366 INFO L290 TraceCheckUtils]: 1: Hoare triple {2574#true} [76] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {2574#true} is VALID [2022-04-07 20:46:45,366 INFO L290 TraceCheckUtils]: 2: Hoare triple {2574#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2574#true} is VALID [2022-04-07 20:46:45,366 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2574#true} {2574#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2574#true} is VALID [2022-04-07 20:46:45,366 INFO L272 TraceCheckUtils]: 4: Hoare triple {2574#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2574#true} is VALID [2022-04-07 20:46:45,366 INFO L290 TraceCheckUtils]: 5: Hoare triple {2574#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2574#true} is VALID [2022-04-07 20:46:45,366 INFO L272 TraceCheckUtils]: 6: Hoare triple {2574#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 5)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {2574#true} is VALID [2022-04-07 20:46:45,366 INFO L290 TraceCheckUtils]: 7: Hoare triple {2574#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2574#true} is VALID [2022-04-07 20:46:45,366 INFO L290 TraceCheckUtils]: 8: Hoare triple {2574#true} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2574#true} is VALID [2022-04-07 20:46:45,366 INFO L290 TraceCheckUtils]: 9: Hoare triple {2574#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2574#true} is VALID [2022-04-07 20:46:45,367 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2574#true} {2574#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 5)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {2574#true} is VALID [2022-04-07 20:46:45,367 INFO L290 TraceCheckUtils]: 11: Hoare triple {2574#true} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {2574#true} is VALID [2022-04-07 20:46:45,367 INFO L272 TraceCheckUtils]: 12: Hoare triple {2574#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 5) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2574#true} is VALID [2022-04-07 20:46:45,370 INFO L290 TraceCheckUtils]: 13: Hoare triple {2574#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2618#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 20:46:45,371 INFO L290 TraceCheckUtils]: 14: Hoare triple {2618#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2622#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 20:46:45,371 INFO L290 TraceCheckUtils]: 15: Hoare triple {2622#(not (= |assume_abort_if_not_#in~cond| 0))} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2622#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 20:46:45,372 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2622#(not (= |assume_abort_if_not_#in~cond| 0))} {2574#true} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 5) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2629#(and (<= main_~b~0 5) (<= 0 main_~b~0))} is VALID [2022-04-07 20:46:45,372 INFO L272 TraceCheckUtils]: 17: Hoare triple {2629#(and (<= main_~b~0 5) (<= 0 main_~b~0))} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2574#true} is VALID [2022-04-07 20:46:45,372 INFO L290 TraceCheckUtils]: 18: Hoare triple {2574#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2574#true} is VALID [2022-04-07 20:46:45,372 INFO L290 TraceCheckUtils]: 19: Hoare triple {2574#true} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2574#true} is VALID [2022-04-07 20:46:45,372 INFO L290 TraceCheckUtils]: 20: Hoare triple {2574#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2574#true} is VALID [2022-04-07 20:46:45,373 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2574#true} {2629#(and (<= main_~b~0 5) (<= 0 main_~b~0))} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2629#(and (<= main_~b~0 5) (<= 0 main_~b~0))} is VALID [2022-04-07 20:46:45,373 INFO L290 TraceCheckUtils]: 22: Hoare triple {2629#(and (<= main_~b~0 5) (<= 0 main_~b~0))} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {2648#(<= main_~y~0 5)} is VALID [2022-04-07 20:46:45,373 INFO L290 TraceCheckUtils]: 23: Hoare triple {2648#(<= main_~y~0 5)} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2648#(<= main_~y~0 5)} is VALID [2022-04-07 20:46:45,374 INFO L272 TraceCheckUtils]: 24: Hoare triple {2648#(<= main_~y~0 5)} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2574#true} is VALID [2022-04-07 20:46:45,374 INFO L290 TraceCheckUtils]: 25: Hoare triple {2574#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2574#true} is VALID [2022-04-07 20:46:45,374 INFO L290 TraceCheckUtils]: 26: Hoare triple {2574#true} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2574#true} is VALID [2022-04-07 20:46:45,374 INFO L290 TraceCheckUtils]: 27: Hoare triple {2574#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2574#true} is VALID [2022-04-07 20:46:45,374 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2574#true} {2648#(<= main_~y~0 5)} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2648#(<= main_~y~0 5)} is VALID [2022-04-07 20:46:45,375 INFO L290 TraceCheckUtils]: 29: Hoare triple {2648#(<= main_~y~0 5)} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {2670#(and (not (= main_~y~0 0)) (<= main_~y~0 5))} is VALID [2022-04-07 20:46:45,376 INFO L290 TraceCheckUtils]: 30: Hoare triple {2670#(and (not (= main_~y~0 0)) (<= main_~y~0 5))} [101] L39-->L39-2: Formula: (and (= v_main_~y~0_1 (+ (- 1) v_main_~y~0_2)) (= v_main_~z~0_1 (+ v_main_~x~0_1 v_main_~z~0_2)) (= (let ((.cse0 (mod v_main_~y~0_2 2))) (ite (and (< v_main_~y~0_2 0) (not (= .cse0 0))) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_2, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_2} OutVars{main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_1} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {2674#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= main_~y~0 4) (<= 0 (+ main_~y~0 1)))} is VALID [2022-04-07 20:46:45,380 INFO L290 TraceCheckUtils]: 31: Hoare triple {2674#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= main_~y~0 4) (<= 0 (+ main_~y~0 1)))} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {2678#(exists ((aux_mod_v_main_~y~0_32_28 Int) (aux_div_v_main_~y~0_32_28 Int)) (and (<= 0 (+ (* aux_div_v_main_~y~0_32_28 2) aux_mod_v_main_~y~0_32_28)) (<= main_~y~0 (div (+ (- 1) (* aux_div_v_main_~y~0_32_28 2) aux_mod_v_main_~y~0_32_28) 2)) (<= 1 aux_mod_v_main_~y~0_32_28) (< aux_mod_v_main_~y~0_32_28 2) (<= (+ (* aux_div_v_main_~y~0_32_28 2) aux_mod_v_main_~y~0_32_28) 5)))} is VALID [2022-04-07 20:46:45,381 INFO L290 TraceCheckUtils]: 32: Hoare triple {2678#(exists ((aux_mod_v_main_~y~0_32_28 Int) (aux_div_v_main_~y~0_32_28 Int)) (and (<= 0 (+ (* aux_div_v_main_~y~0_32_28 2) aux_mod_v_main_~y~0_32_28)) (<= main_~y~0 (div (+ (- 1) (* aux_div_v_main_~y~0_32_28 2) aux_mod_v_main_~y~0_32_28) 2)) (<= 1 aux_mod_v_main_~y~0_32_28) (< aux_mod_v_main_~y~0_32_28 2) (<= (+ (* aux_div_v_main_~y~0_32_28 2) aux_mod_v_main_~y~0_32_28) 5)))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2682#(<= main_~y~0 2)} is VALID [2022-04-07 20:46:45,381 INFO L272 TraceCheckUtils]: 33: Hoare triple {2682#(<= main_~y~0 2)} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2574#true} is VALID [2022-04-07 20:46:45,382 INFO L290 TraceCheckUtils]: 34: Hoare triple {2574#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2574#true} is VALID [2022-04-07 20:46:45,382 INFO L290 TraceCheckUtils]: 35: Hoare triple {2574#true} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2574#true} is VALID [2022-04-07 20:46:45,382 INFO L290 TraceCheckUtils]: 36: Hoare triple {2574#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2574#true} is VALID [2022-04-07 20:46:45,382 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2574#true} {2682#(<= main_~y~0 2)} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2682#(<= main_~y~0 2)} is VALID [2022-04-07 20:46:45,383 INFO L290 TraceCheckUtils]: 38: Hoare triple {2682#(<= main_~y~0 2)} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {2701#(and (not (= main_~y~0 0)) (<= main_~y~0 2))} is VALID [2022-04-07 20:46:45,384 INFO L290 TraceCheckUtils]: 39: Hoare triple {2701#(and (not (= main_~y~0 0)) (<= main_~y~0 2))} [101] L39-->L39-2: Formula: (and (= v_main_~y~0_1 (+ (- 1) v_main_~y~0_2)) (= v_main_~z~0_1 (+ v_main_~x~0_1 v_main_~z~0_2)) (= (let ((.cse0 (mod v_main_~y~0_2 2))) (ite (and (< v_main_~y~0_2 0) (not (= .cse0 0))) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_2, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_2} OutVars{main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_1} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {2705#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} is VALID [2022-04-07 20:46:45,385 INFO L290 TraceCheckUtils]: 40: Hoare triple {2705#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {2705#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} is VALID [2022-04-07 20:46:45,386 INFO L290 TraceCheckUtils]: 41: Hoare triple {2705#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2705#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} is VALID [2022-04-07 20:46:45,386 INFO L272 TraceCheckUtils]: 42: Hoare triple {2705#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2574#true} is VALID [2022-04-07 20:46:45,386 INFO L290 TraceCheckUtils]: 43: Hoare triple {2574#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2574#true} is VALID [2022-04-07 20:46:45,386 INFO L290 TraceCheckUtils]: 44: Hoare triple {2574#true} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2574#true} is VALID [2022-04-07 20:46:45,386 INFO L290 TraceCheckUtils]: 45: Hoare triple {2574#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2574#true} is VALID [2022-04-07 20:46:45,387 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {2574#true} {2705#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2705#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} is VALID [2022-04-07 20:46:45,388 INFO L290 TraceCheckUtils]: 47: Hoare triple {2705#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {2575#false} is VALID [2022-04-07 20:46:45,388 INFO L290 TraceCheckUtils]: 48: Hoare triple {2575#false} [102] L39-->L39-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_3} OutVars{main_~y~0=v_main_~y~0_3} AuxVars[] AssignedVars[] {2575#false} is VALID [2022-04-07 20:46:45,388 INFO L290 TraceCheckUtils]: 49: Hoare triple {2575#false} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {2575#false} is VALID [2022-04-07 20:46:45,388 INFO L290 TraceCheckUtils]: 50: Hoare triple {2575#false} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2575#false} is VALID [2022-04-07 20:46:45,388 INFO L272 TraceCheckUtils]: 51: Hoare triple {2575#false} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2575#false} is VALID [2022-04-07 20:46:45,388 INFO L290 TraceCheckUtils]: 52: Hoare triple {2575#false} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2575#false} is VALID [2022-04-07 20:46:45,388 INFO L290 TraceCheckUtils]: 53: Hoare triple {2575#false} [99] L13-->L14: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2575#false} is VALID [2022-04-07 20:46:45,388 INFO L290 TraceCheckUtils]: 54: Hoare triple {2575#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2575#false} is VALID [2022-04-07 20:46:45,389 INFO L134 CoverageAnalysis]: Checked inductivity of 51 backedges. 30 proven. 3 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2022-04-07 20:46:45,389 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 20:46:46,749 INFO L290 TraceCheckUtils]: 54: Hoare triple {2575#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2575#false} is VALID [2022-04-07 20:46:46,750 INFO L290 TraceCheckUtils]: 53: Hoare triple {2575#false} [99] L13-->L14: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2575#false} is VALID [2022-04-07 20:46:46,750 INFO L290 TraceCheckUtils]: 52: Hoare triple {2575#false} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2575#false} is VALID [2022-04-07 20:46:46,750 INFO L272 TraceCheckUtils]: 51: Hoare triple {2575#false} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2575#false} is VALID [2022-04-07 20:46:46,750 INFO L290 TraceCheckUtils]: 50: Hoare triple {2575#false} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2575#false} is VALID [2022-04-07 20:46:46,750 INFO L290 TraceCheckUtils]: 49: Hoare triple {2575#false} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {2575#false} is VALID [2022-04-07 20:46:46,750 INFO L290 TraceCheckUtils]: 48: Hoare triple {2575#false} [102] L39-->L39-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_3} OutVars{main_~y~0=v_main_~y~0_3} AuxVars[] AssignedVars[] {2575#false} is VALID [2022-04-07 20:46:46,751 INFO L290 TraceCheckUtils]: 47: Hoare triple {2705#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {2575#false} is VALID [2022-04-07 20:46:46,751 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {2574#true} {2705#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2705#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} is VALID [2022-04-07 20:46:46,751 INFO L290 TraceCheckUtils]: 45: Hoare triple {2574#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2574#true} is VALID [2022-04-07 20:46:46,751 INFO L290 TraceCheckUtils]: 44: Hoare triple {2574#true} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2574#true} is VALID [2022-04-07 20:46:46,751 INFO L290 TraceCheckUtils]: 43: Hoare triple {2574#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2574#true} is VALID [2022-04-07 20:46:46,751 INFO L272 TraceCheckUtils]: 42: Hoare triple {2705#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2574#true} is VALID [2022-04-07 20:46:46,752 INFO L290 TraceCheckUtils]: 41: Hoare triple {2705#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2705#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} is VALID [2022-04-07 20:46:46,753 INFO L290 TraceCheckUtils]: 40: Hoare triple {2793#(and (or (and (<= (div main_~y~0 2) 1) (<= 1 (mod (+ (div main_~y~0 2) 1) 2))) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))) (or (not (< main_~y~0 0)) (and (<= 0 (+ (div main_~y~0 2) 2)) (<= 1 (mod (div main_~y~0 2) 2)))))} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {2705#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} is VALID [2022-04-07 20:46:46,755 INFO L290 TraceCheckUtils]: 39: Hoare triple {2797#(or (and (<= 1 (mod (+ (div (+ (- 1) main_~y~0) 2) 1) 2)) (<= (div (+ (- 1) main_~y~0) 2) 1)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} [101] L39-->L39-2: Formula: (and (= v_main_~y~0_1 (+ (- 1) v_main_~y~0_2)) (= v_main_~z~0_1 (+ v_main_~x~0_1 v_main_~z~0_2)) (= (let ((.cse0 (mod v_main_~y~0_2 2))) (ite (and (< v_main_~y~0_2 0) (not (= .cse0 0))) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_2, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_2} OutVars{main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_1} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {2793#(and (or (and (<= (div main_~y~0 2) 1) (<= 1 (mod (+ (div main_~y~0 2) 1) 2))) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))) (or (not (< main_~y~0 0)) (and (<= 0 (+ (div main_~y~0 2) 2)) (<= 1 (mod (div main_~y~0 2) 2)))))} is VALID [2022-04-07 20:46:46,755 INFO L290 TraceCheckUtils]: 38: Hoare triple {2797#(or (and (<= 1 (mod (+ (div (+ (- 1) main_~y~0) 2) 1) 2)) (<= (div (+ (- 1) main_~y~0) 2) 1)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {2797#(or (and (<= 1 (mod (+ (div (+ (- 1) main_~y~0) 2) 1) 2)) (<= (div (+ (- 1) main_~y~0) 2) 1)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} is VALID [2022-04-07 20:46:46,756 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2574#true} {2797#(or (and (<= 1 (mod (+ (div (+ (- 1) main_~y~0) 2) 1) 2)) (<= (div (+ (- 1) main_~y~0) 2) 1)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2797#(or (and (<= 1 (mod (+ (div (+ (- 1) main_~y~0) 2) 1) 2)) (<= (div (+ (- 1) main_~y~0) 2) 1)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} is VALID [2022-04-07 20:46:46,756 INFO L290 TraceCheckUtils]: 36: Hoare triple {2574#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2574#true} is VALID [2022-04-07 20:46:46,756 INFO L290 TraceCheckUtils]: 35: Hoare triple {2574#true} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2574#true} is VALID [2022-04-07 20:46:46,756 INFO L290 TraceCheckUtils]: 34: Hoare triple {2574#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2574#true} is VALID [2022-04-07 20:46:46,756 INFO L272 TraceCheckUtils]: 33: Hoare triple {2797#(or (and (<= 1 (mod (+ (div (+ (- 1) main_~y~0) 2) 1) 2)) (<= (div (+ (- 1) main_~y~0) 2) 1)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2574#true} is VALID [2022-04-07 20:46:46,756 INFO L290 TraceCheckUtils]: 32: Hoare triple {2797#(or (and (<= 1 (mod (+ (div (+ (- 1) main_~y~0) 2) 1) 2)) (<= (div (+ (- 1) main_~y~0) 2) 1)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2797#(or (and (<= 1 (mod (+ (div (+ (- 1) main_~y~0) 2) 1) 2)) (<= (div (+ (- 1) main_~y~0) 2) 1)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} is VALID [2022-04-07 20:46:46,758 INFO L290 TraceCheckUtils]: 31: Hoare triple {2648#(<= main_~y~0 5)} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {2797#(or (and (<= 1 (mod (+ (div (+ (- 1) main_~y~0) 2) 1) 2)) (<= (div (+ (- 1) main_~y~0) 2) 1)) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0))} is VALID [2022-04-07 20:46:46,758 INFO L290 TraceCheckUtils]: 30: Hoare triple {2825#(or (<= main_~y~0 6) (< (mod main_~y~0 2) 1))} [101] L39-->L39-2: Formula: (and (= v_main_~y~0_1 (+ (- 1) v_main_~y~0_2)) (= v_main_~z~0_1 (+ v_main_~x~0_1 v_main_~z~0_2)) (= (let ((.cse0 (mod v_main_~y~0_2 2))) (ite (and (< v_main_~y~0_2 0) (not (= .cse0 0))) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_2, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_2} OutVars{main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_1} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {2648#(<= main_~y~0 5)} is VALID [2022-04-07 20:46:46,759 INFO L290 TraceCheckUtils]: 29: Hoare triple {2825#(or (<= main_~y~0 6) (< (mod main_~y~0 2) 1))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {2825#(or (<= main_~y~0 6) (< (mod main_~y~0 2) 1))} is VALID [2022-04-07 20:46:46,759 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2574#true} {2825#(or (<= main_~y~0 6) (< (mod main_~y~0 2) 1))} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2825#(or (<= main_~y~0 6) (< (mod main_~y~0 2) 1))} is VALID [2022-04-07 20:46:46,759 INFO L290 TraceCheckUtils]: 27: Hoare triple {2574#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2574#true} is VALID [2022-04-07 20:46:46,760 INFO L290 TraceCheckUtils]: 26: Hoare triple {2574#true} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2574#true} is VALID [2022-04-07 20:46:46,760 INFO L290 TraceCheckUtils]: 25: Hoare triple {2574#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2574#true} is VALID [2022-04-07 20:46:46,760 INFO L272 TraceCheckUtils]: 24: Hoare triple {2825#(or (<= main_~y~0 6) (< (mod main_~y~0 2) 1))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2574#true} is VALID [2022-04-07 20:46:46,761 INFO L290 TraceCheckUtils]: 23: Hoare triple {2825#(or (<= main_~y~0 6) (< (mod main_~y~0 2) 1))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2825#(or (<= main_~y~0 6) (< (mod main_~y~0 2) 1))} is VALID [2022-04-07 20:46:46,762 INFO L290 TraceCheckUtils]: 22: Hoare triple {2850#(<= (div (* (- 1) main_~b~0) (- 2)) 3)} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {2825#(or (<= main_~y~0 6) (< (mod main_~y~0 2) 1))} is VALID [2022-04-07 20:46:46,762 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2574#true} {2850#(<= (div (* (- 1) main_~b~0) (- 2)) 3)} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2850#(<= (div (* (- 1) main_~b~0) (- 2)) 3)} is VALID [2022-04-07 20:46:46,762 INFO L290 TraceCheckUtils]: 20: Hoare triple {2574#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2574#true} is VALID [2022-04-07 20:46:46,762 INFO L290 TraceCheckUtils]: 19: Hoare triple {2574#true} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2574#true} is VALID [2022-04-07 20:46:46,762 INFO L290 TraceCheckUtils]: 18: Hoare triple {2574#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2574#true} is VALID [2022-04-07 20:46:46,762 INFO L272 TraceCheckUtils]: 17: Hoare triple {2850#(<= (div (* (- 1) main_~b~0) (- 2)) 3)} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2574#true} is VALID [2022-04-07 20:46:46,763 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2622#(not (= |assume_abort_if_not_#in~cond| 0))} {2574#true} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 5) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2850#(<= (div (* (- 1) main_~b~0) (- 2)) 3)} is VALID [2022-04-07 20:46:46,763 INFO L290 TraceCheckUtils]: 15: Hoare triple {2622#(not (= |assume_abort_if_not_#in~cond| 0))} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2622#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 20:46:46,763 INFO L290 TraceCheckUtils]: 14: Hoare triple {2878#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2622#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 20:46:46,764 INFO L290 TraceCheckUtils]: 13: Hoare triple {2574#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2878#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-07 20:46:46,764 INFO L272 TraceCheckUtils]: 12: Hoare triple {2574#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 5) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2574#true} is VALID [2022-04-07 20:46:46,764 INFO L290 TraceCheckUtils]: 11: Hoare triple {2574#true} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {2574#true} is VALID [2022-04-07 20:46:46,764 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2574#true} {2574#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 5)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {2574#true} is VALID [2022-04-07 20:46:46,764 INFO L290 TraceCheckUtils]: 9: Hoare triple {2574#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2574#true} is VALID [2022-04-07 20:46:46,764 INFO L290 TraceCheckUtils]: 8: Hoare triple {2574#true} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2574#true} is VALID [2022-04-07 20:46:46,764 INFO L290 TraceCheckUtils]: 7: Hoare triple {2574#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2574#true} is VALID [2022-04-07 20:46:46,764 INFO L272 TraceCheckUtils]: 6: Hoare triple {2574#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 5)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {2574#true} is VALID [2022-04-07 20:46:46,764 INFO L290 TraceCheckUtils]: 5: Hoare triple {2574#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2574#true} is VALID [2022-04-07 20:46:46,765 INFO L272 TraceCheckUtils]: 4: Hoare triple {2574#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2574#true} is VALID [2022-04-07 20:46:46,765 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2574#true} {2574#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2574#true} is VALID [2022-04-07 20:46:46,765 INFO L290 TraceCheckUtils]: 2: Hoare triple {2574#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2574#true} is VALID [2022-04-07 20:46:46,765 INFO L290 TraceCheckUtils]: 1: Hoare triple {2574#true} [76] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {2574#true} is VALID [2022-04-07 20:46:46,765 INFO L272 TraceCheckUtils]: 0: Hoare triple {2574#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2574#true} is VALID [2022-04-07 20:46:46,765 INFO L134 CoverageAnalysis]: Checked inductivity of 51 backedges. 30 proven. 3 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2022-04-07 20:46:46,765 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 20:46:46,765 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1322380733] [2022-04-07 20:46:46,766 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 20:46:46,766 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [457892929] [2022-04-07 20:46:46,766 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [457892929] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 20:46:46,766 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 20:46:46,766 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 10] total 17 [2022-04-07 20:46:46,766 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1387895784] [2022-04-07 20:46:46,766 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 20:46:46,767 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 2.411764705882353) internal successors, (41), 15 states have internal predecessors, (41), 9 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (11), 8 states have call predecessors, (11), 8 states have call successors, (11) Word has length 55 [2022-04-07 20:46:46,767 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 20:46:46,767 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 17 states, 17 states have (on average 2.411764705882353) internal successors, (41), 15 states have internal predecessors, (41), 9 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (11), 8 states have call predecessors, (11), 8 states have call successors, (11) [2022-04-07 20:46:46,833 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 20:46:46,833 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-04-07 20:46:46,833 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 20:46:46,833 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-04-07 20:46:46,833 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=67, Invalid=205, Unknown=0, NotChecked=0, Total=272 [2022-04-07 20:46:46,834 INFO L87 Difference]: Start difference. First operand 70 states and 80 transitions. Second operand has 17 states, 17 states have (on average 2.411764705882353) internal successors, (41), 15 states have internal predecessors, (41), 9 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (11), 8 states have call predecessors, (11), 8 states have call successors, (11) [2022-04-07 20:46:47,506 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:46:47,506 INFO L93 Difference]: Finished difference Result 74 states and 84 transitions. [2022-04-07 20:46:47,506 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-07 20:46:47,507 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 2.411764705882353) internal successors, (41), 15 states have internal predecessors, (41), 9 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (11), 8 states have call predecessors, (11), 8 states have call successors, (11) Word has length 55 [2022-04-07 20:46:47,507 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 20:46:47,507 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 2.411764705882353) internal successors, (41), 15 states have internal predecessors, (41), 9 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (11), 8 states have call predecessors, (11), 8 states have call successors, (11) [2022-04-07 20:46:47,508 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 42 transitions. [2022-04-07 20:46:47,509 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 2.411764705882353) internal successors, (41), 15 states have internal predecessors, (41), 9 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (11), 8 states have call predecessors, (11), 8 states have call successors, (11) [2022-04-07 20:46:47,510 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 42 transitions. [2022-04-07 20:46:47,510 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 42 transitions. [2022-04-07 20:46:47,553 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 20:46:47,554 INFO L225 Difference]: With dead ends: 74 [2022-04-07 20:46:47,554 INFO L226 Difference]: Without dead ends: 67 [2022-04-07 20:46:47,555 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 120 GetRequests, 93 SyntacticMatches, 4 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 1 DeprecatedPredicates, 124 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=145, Invalid=455, Unknown=0, NotChecked=0, Total=600 [2022-04-07 20:46:47,555 INFO L913 BasicCegarLoop]: 26 mSDtfsCounter, 16 mSDsluCounter, 121 mSDsCounter, 0 mSdLazyCounter, 149 mSolverCounterSat, 19 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 16 SdHoareTripleChecker+Valid, 147 SdHoareTripleChecker+Invalid, 186 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 19 IncrementalHoareTripleChecker+Valid, 149 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 18 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-07 20:46:47,556 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [16 Valid, 147 Invalid, 186 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [19 Valid, 149 Invalid, 0 Unknown, 18 Unchecked, 0.2s Time] [2022-04-07 20:46:47,557 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 67 states. [2022-04-07 20:46:47,562 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 67 to 67. [2022-04-07 20:46:47,562 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 20:46:47,563 INFO L82 GeneralOperation]: Start isEquivalent. First operand 67 states. Second operand has 67 states, 47 states have (on average 1.0425531914893618) internal successors, (49), 49 states have internal predecessors, (49), 12 states have call successors, (12), 8 states have call predecessors, (12), 7 states have return successors, (11), 9 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-07 20:46:47,563 INFO L74 IsIncluded]: Start isIncluded. First operand 67 states. Second operand has 67 states, 47 states have (on average 1.0425531914893618) internal successors, (49), 49 states have internal predecessors, (49), 12 states have call successors, (12), 8 states have call predecessors, (12), 7 states have return successors, (11), 9 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-07 20:46:47,563 INFO L87 Difference]: Start difference. First operand 67 states. Second operand has 67 states, 47 states have (on average 1.0425531914893618) internal successors, (49), 49 states have internal predecessors, (49), 12 states have call successors, (12), 8 states have call predecessors, (12), 7 states have return successors, (11), 9 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-07 20:46:47,565 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:46:47,565 INFO L93 Difference]: Finished difference Result 67 states and 72 transitions. [2022-04-07 20:46:47,565 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 72 transitions. [2022-04-07 20:46:47,566 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:46:47,566 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:46:47,566 INFO L74 IsIncluded]: Start isIncluded. First operand has 67 states, 47 states have (on average 1.0425531914893618) internal successors, (49), 49 states have internal predecessors, (49), 12 states have call successors, (12), 8 states have call predecessors, (12), 7 states have return successors, (11), 9 states have call predecessors, (11), 11 states have call successors, (11) Second operand 67 states. [2022-04-07 20:46:47,566 INFO L87 Difference]: Start difference. First operand has 67 states, 47 states have (on average 1.0425531914893618) internal successors, (49), 49 states have internal predecessors, (49), 12 states have call successors, (12), 8 states have call predecessors, (12), 7 states have return successors, (11), 9 states have call predecessors, (11), 11 states have call successors, (11) Second operand 67 states. [2022-04-07 20:46:47,568 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:46:47,569 INFO L93 Difference]: Finished difference Result 67 states and 72 transitions. [2022-04-07 20:46:47,569 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 72 transitions. [2022-04-07 20:46:47,569 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:46:47,569 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:46:47,569 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 20:46:47,569 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 20:46:47,569 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 67 states, 47 states have (on average 1.0425531914893618) internal successors, (49), 49 states have internal predecessors, (49), 12 states have call successors, (12), 8 states have call predecessors, (12), 7 states have return successors, (11), 9 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-07 20:46:47,571 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 67 states to 67 states and 72 transitions. [2022-04-07 20:46:47,571 INFO L78 Accepts]: Start accepts. Automaton has 67 states and 72 transitions. Word has length 55 [2022-04-07 20:46:47,571 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 20:46:47,571 INFO L478 AbstractCegarLoop]: Abstraction has 67 states and 72 transitions. [2022-04-07 20:46:47,572 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 17 states, 17 states have (on average 2.411764705882353) internal successors, (41), 15 states have internal predecessors, (41), 9 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (11), 8 states have call predecessors, (11), 8 states have call successors, (11) [2022-04-07 20:46:47,572 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 72 transitions. [2022-04-07 20:46:47,572 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-07 20:46:47,573 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 20:46:47,573 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 20:46:47,594 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-07 20:46:47,791 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 20:46:47,792 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 20:46:47,792 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 20:46:47,792 INFO L85 PathProgramCache]: Analyzing trace with hash -683089742, now seen corresponding path program 3 times [2022-04-07 20:46:47,792 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 20:46:47,792 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [673329501] [2022-04-07 20:46:47,792 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:46:47,792 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 20:46:47,807 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 20:46:47,807 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [526470031] [2022-04-07 20:46:47,807 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-07 20:46:47,807 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 20:46:47,807 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 20:46:47,828 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 20:46:47,828 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-04-07 20:46:47,872 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2022-04-07 20:46:47,872 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-07 20:46:47,873 INFO L263 TraceCheckSpWp]: Trace formula consists of 143 conjuncts, 24 conjunts are in the unsatisfiable core [2022-04-07 20:46:47,889 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:46:47,891 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 20:47:11,896 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-07 20:47:16,739 INFO L272 TraceCheckUtils]: 0: Hoare triple {3214#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3214#true} is VALID [2022-04-07 20:47:16,740 INFO L290 TraceCheckUtils]: 1: Hoare triple {3214#true} [76] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {3214#true} is VALID [2022-04-07 20:47:16,740 INFO L290 TraceCheckUtils]: 2: Hoare triple {3214#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3214#true} is VALID [2022-04-07 20:47:16,740 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3214#true} {3214#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3214#true} is VALID [2022-04-07 20:47:16,740 INFO L272 TraceCheckUtils]: 4: Hoare triple {3214#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3214#true} is VALID [2022-04-07 20:47:16,740 INFO L290 TraceCheckUtils]: 5: Hoare triple {3214#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3214#true} is VALID [2022-04-07 20:47:16,740 INFO L272 TraceCheckUtils]: 6: Hoare triple {3214#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 5)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {3214#true} is VALID [2022-04-07 20:47:16,740 INFO L290 TraceCheckUtils]: 7: Hoare triple {3214#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {3214#true} is VALID [2022-04-07 20:47:16,740 INFO L290 TraceCheckUtils]: 8: Hoare triple {3214#true} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {3214#true} is VALID [2022-04-07 20:47:16,741 INFO L290 TraceCheckUtils]: 9: Hoare triple {3214#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3214#true} is VALID [2022-04-07 20:47:16,741 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3214#true} {3214#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 5)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {3214#true} is VALID [2022-04-07 20:47:16,741 INFO L290 TraceCheckUtils]: 11: Hoare triple {3214#true} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {3214#true} is VALID [2022-04-07 20:47:16,741 INFO L272 TraceCheckUtils]: 12: Hoare triple {3214#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 5) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {3214#true} is VALID [2022-04-07 20:47:16,741 INFO L290 TraceCheckUtils]: 13: Hoare triple {3214#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {3258#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-07 20:47:16,742 INFO L290 TraceCheckUtils]: 14: Hoare triple {3258#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {3262#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 20:47:16,742 INFO L290 TraceCheckUtils]: 15: Hoare triple {3262#(not (= |assume_abort_if_not_#in~cond| 0))} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3262#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 20:47:16,743 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3262#(not (= |assume_abort_if_not_#in~cond| 0))} {3214#true} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 5) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {3269#(and (<= main_~b~0 5) (<= 0 main_~b~0))} is VALID [2022-04-07 20:47:16,743 INFO L272 TraceCheckUtils]: 17: Hoare triple {3269#(and (<= main_~b~0 5) (<= 0 main_~b~0))} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {3214#true} is VALID [2022-04-07 20:47:16,743 INFO L290 TraceCheckUtils]: 18: Hoare triple {3214#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {3214#true} is VALID [2022-04-07 20:47:16,743 INFO L290 TraceCheckUtils]: 19: Hoare triple {3214#true} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {3214#true} is VALID [2022-04-07 20:47:16,743 INFO L290 TraceCheckUtils]: 20: Hoare triple {3214#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3214#true} is VALID [2022-04-07 20:47:16,744 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3214#true} {3269#(and (<= main_~b~0 5) (<= 0 main_~b~0))} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {3269#(and (<= main_~b~0 5) (<= 0 main_~b~0))} is VALID [2022-04-07 20:47:16,744 INFO L290 TraceCheckUtils]: 22: Hoare triple {3269#(and (<= main_~b~0 5) (<= 0 main_~b~0))} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {3288#(and (<= main_~b~0 5) (= main_~b~0 main_~y~0) (<= 0 main_~b~0))} is VALID [2022-04-07 20:47:16,744 INFO L290 TraceCheckUtils]: 23: Hoare triple {3288#(and (<= main_~b~0 5) (= main_~b~0 main_~y~0) (<= 0 main_~b~0))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3288#(and (<= main_~b~0 5) (= main_~b~0 main_~y~0) (<= 0 main_~b~0))} is VALID [2022-04-07 20:47:16,745 INFO L272 TraceCheckUtils]: 24: Hoare triple {3288#(and (<= main_~b~0 5) (= main_~b~0 main_~y~0) (<= 0 main_~b~0))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3214#true} is VALID [2022-04-07 20:47:16,745 INFO L290 TraceCheckUtils]: 25: Hoare triple {3214#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3214#true} is VALID [2022-04-07 20:47:16,745 INFO L290 TraceCheckUtils]: 26: Hoare triple {3214#true} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {3214#true} is VALID [2022-04-07 20:47:16,745 INFO L290 TraceCheckUtils]: 27: Hoare triple {3214#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3214#true} is VALID [2022-04-07 20:47:16,746 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {3214#true} {3288#(and (<= main_~b~0 5) (= main_~b~0 main_~y~0) (<= 0 main_~b~0))} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3288#(and (<= main_~b~0 5) (= main_~b~0 main_~y~0) (<= 0 main_~b~0))} is VALID [2022-04-07 20:47:16,746 INFO L290 TraceCheckUtils]: 29: Hoare triple {3288#(and (<= main_~b~0 5) (= main_~b~0 main_~y~0) (<= 0 main_~b~0))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {3310#(and (not (= main_~y~0 0)) (<= main_~b~0 5) (= main_~b~0 main_~y~0) (<= 0 main_~b~0))} is VALID [2022-04-07 20:47:16,747 INFO L290 TraceCheckUtils]: 30: Hoare triple {3310#(and (not (= main_~y~0 0)) (<= main_~b~0 5) (= main_~b~0 main_~y~0) (<= 0 main_~b~0))} [101] L39-->L39-2: Formula: (and (= v_main_~y~0_1 (+ (- 1) v_main_~y~0_2)) (= v_main_~z~0_1 (+ v_main_~x~0_1 v_main_~z~0_2)) (= (let ((.cse0 (mod v_main_~y~0_2 2))) (ite (and (< v_main_~y~0_2 0) (not (= .cse0 0))) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_2, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_2} OutVars{main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_1} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {3314#(and (<= main_~b~0 5) (<= main_~b~0 (+ main_~y~0 1)) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-07 20:47:16,748 INFO L290 TraceCheckUtils]: 31: Hoare triple {3314#(and (<= main_~b~0 5) (<= main_~b~0 (+ main_~y~0 1)) (not (= main_~b~0 0)) (<= 0 main_~b~0))} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {3318#(and (<= main_~b~0 5) (not (= main_~b~0 0)) (<= 0 main_~b~0) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ main_~y~0 1)))} is VALID [2022-04-07 20:47:16,748 INFO L290 TraceCheckUtils]: 32: Hoare triple {3318#(and (<= main_~b~0 5) (not (= main_~b~0 0)) (<= 0 main_~b~0) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ main_~y~0 1)))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3318#(and (<= main_~b~0 5) (not (= main_~b~0 0)) (<= 0 main_~b~0) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ main_~y~0 1)))} is VALID [2022-04-07 20:47:16,748 INFO L272 TraceCheckUtils]: 33: Hoare triple {3318#(and (<= main_~b~0 5) (not (= main_~b~0 0)) (<= 0 main_~b~0) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ main_~y~0 1)))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3214#true} is VALID [2022-04-07 20:47:16,749 INFO L290 TraceCheckUtils]: 34: Hoare triple {3214#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3214#true} is VALID [2022-04-07 20:47:16,749 INFO L290 TraceCheckUtils]: 35: Hoare triple {3214#true} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {3214#true} is VALID [2022-04-07 20:47:16,749 INFO L290 TraceCheckUtils]: 36: Hoare triple {3214#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3214#true} is VALID [2022-04-07 20:47:16,749 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {3214#true} {3318#(and (<= main_~b~0 5) (not (= main_~b~0 0)) (<= 0 main_~b~0) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ main_~y~0 1)))} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3318#(and (<= main_~b~0 5) (not (= main_~b~0 0)) (<= 0 main_~b~0) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ main_~y~0 1)))} is VALID [2022-04-07 20:47:16,750 INFO L290 TraceCheckUtils]: 38: Hoare triple {3318#(and (<= main_~b~0 5) (not (= main_~b~0 0)) (<= 0 main_~b~0) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ main_~y~0 1)))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {3318#(and (<= main_~b~0 5) (not (= main_~b~0 0)) (<= 0 main_~b~0) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ main_~y~0 1)))} is VALID [2022-04-07 20:47:16,750 INFO L290 TraceCheckUtils]: 39: Hoare triple {3318#(and (<= main_~b~0 5) (not (= main_~b~0 0)) (<= 0 main_~b~0) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ main_~y~0 1)))} [102] L39-->L39-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_3} OutVars{main_~y~0=v_main_~y~0_3} AuxVars[] AssignedVars[] {3318#(and (<= main_~b~0 5) (not (= main_~b~0 0)) (<= 0 main_~b~0) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ main_~y~0 1)))} is VALID [2022-04-07 20:47:16,752 INFO L290 TraceCheckUtils]: 40: Hoare triple {3318#(and (<= main_~b~0 5) (not (= main_~b~0 0)) (<= 0 main_~b~0) (< (div (+ 2 (* (- 1) main_~b~0)) (- 2)) (+ main_~y~0 1)))} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {3346#(and (< (div (+ (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) 1) (- 2)) (+ main_~y~0 1)) (<= main_~b~0 5) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-07 20:47:16,752 INFO L290 TraceCheckUtils]: 41: Hoare triple {3346#(and (< (div (+ (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) 1) (- 2)) (+ main_~y~0 1)) (<= main_~b~0 5) (not (= main_~b~0 0)) (<= 0 main_~b~0))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3346#(and (< (div (+ (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) 1) (- 2)) (+ main_~y~0 1)) (<= main_~b~0 5) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-07 20:47:16,752 INFO L272 TraceCheckUtils]: 42: Hoare triple {3346#(and (< (div (+ (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) 1) (- 2)) (+ main_~y~0 1)) (<= main_~b~0 5) (not (= main_~b~0 0)) (<= 0 main_~b~0))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3214#true} is VALID [2022-04-07 20:47:16,753 INFO L290 TraceCheckUtils]: 43: Hoare triple {3214#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3356#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-07 20:47:16,753 INFO L290 TraceCheckUtils]: 44: Hoare triple {3356#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {3360#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 20:47:16,753 INFO L290 TraceCheckUtils]: 45: Hoare triple {3360#(not (= |__VERIFIER_assert_#in~cond| 0))} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3360#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 20:47:16,754 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {3360#(not (= |__VERIFIER_assert_#in~cond| 0))} {3346#(and (< (div (+ (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) 1) (- 2)) (+ main_~y~0 1)) (<= main_~b~0 5) (not (= main_~b~0 0)) (<= 0 main_~b~0))} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3367#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (< (div (+ (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) 1) (- 2)) (+ main_~y~0 1)) (<= main_~b~0 5) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-07 20:47:16,755 INFO L290 TraceCheckUtils]: 47: Hoare triple {3367#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (< (div (+ (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) 1) (- 2)) (+ main_~y~0 1)) (<= main_~b~0 5) (not (= main_~b~0 0)) (<= 0 main_~b~0))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {3367#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (< (div (+ (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) 1) (- 2)) (+ main_~y~0 1)) (<= main_~b~0 5) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-07 20:47:16,756 INFO L290 TraceCheckUtils]: 48: Hoare triple {3367#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (< (div (+ (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) 1) (- 2)) (+ main_~y~0 1)) (<= main_~b~0 5) (not (= main_~b~0 0)) (<= 0 main_~b~0))} [102] L39-->L39-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_3} OutVars{main_~y~0=v_main_~y~0_3} AuxVars[] AssignedVars[] {3374#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 1)) (< (div (+ (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) 1) (- 2)) (+ main_~y~0 1)) (<= main_~b~0 5) (not (= main_~b~0 0)) (<= 0 main_~b~0))} is VALID [2022-04-07 20:47:18,758 WARN L290 TraceCheckUtils]: 49: Hoare triple {3374#(and (= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 1)) (< (div (+ (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) 1) (- 2)) (+ main_~y~0 1)) (<= main_~b~0 5) (not (= main_~b~0 0)) (<= 0 main_~b~0))} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {3378#(and (exists ((aux_mod_v_main_~y~0_44_22 Int) (aux_div_v_main_~y~0_44_22 Int)) (and (not (= aux_mod_v_main_~y~0_44_22 1)) (= (div (+ (* aux_div_v_main_~y~0_44_22 2) aux_mod_v_main_~y~0_44_22) 2) main_~y~0) (= (+ main_~z~0 (* (+ (* aux_div_v_main_~y~0_44_22 2) aux_mod_v_main_~y~0_44_22) (div (- main_~x~0) (- 2)))) (* main_~b~0 main_~a~0)) (< aux_mod_v_main_~y~0_44_22 2) (<= 0 aux_mod_v_main_~y~0_44_22) (< (div (+ (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) 1) (- 2)) (+ (* aux_div_v_main_~y~0_44_22 2) aux_mod_v_main_~y~0_44_22 1)))) (<= main_~b~0 5) (not (= main_~b~0 0)) (<= 0 main_~b~0) (= (mod main_~x~0 2) 0))} is UNKNOWN [2022-04-07 20:47:18,946 INFO L290 TraceCheckUtils]: 50: Hoare triple {3378#(and (exists ((aux_mod_v_main_~y~0_44_22 Int) (aux_div_v_main_~y~0_44_22 Int)) (and (not (= aux_mod_v_main_~y~0_44_22 1)) (= (div (+ (* aux_div_v_main_~y~0_44_22 2) aux_mod_v_main_~y~0_44_22) 2) main_~y~0) (= (+ main_~z~0 (* (+ (* aux_div_v_main_~y~0_44_22 2) aux_mod_v_main_~y~0_44_22) (div (- main_~x~0) (- 2)))) (* main_~b~0 main_~a~0)) (< aux_mod_v_main_~y~0_44_22 2) (<= 0 aux_mod_v_main_~y~0_44_22) (< (div (+ (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) 1) (- 2)) (+ (* aux_div_v_main_~y~0_44_22 2) aux_mod_v_main_~y~0_44_22 1)))) (<= main_~b~0 5) (not (= main_~b~0 0)) (<= 0 main_~b~0) (= (mod main_~x~0 2) 0))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3382#(and (= (+ main_~z~0 (* 2 (* (div (* (- 1) main_~x~0) (- 2)) main_~y~0))) (* main_~b~0 main_~a~0)) (<= main_~b~0 5) (not (= main_~b~0 0)) (<= 0 main_~b~0) (= (mod main_~x~0 2) 0) (< (div (* (- 1) (div (+ (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) 1) (- 2))) (- 2)) (+ main_~y~0 1)))} is VALID [2022-04-07 20:47:19,905 INFO L272 TraceCheckUtils]: 51: Hoare triple {3382#(and (= (+ main_~z~0 (* 2 (* (div (* (- 1) main_~x~0) (- 2)) main_~y~0))) (* main_~b~0 main_~a~0)) (<= main_~b~0 5) (not (= main_~b~0 0)) (<= 0 main_~b~0) (= (mod main_~x~0 2) 0) (< (div (* (- 1) (div (+ (* (- 1) (div (+ 2 (* (- 1) main_~b~0)) (- 2))) 1) (- 2))) (- 2)) (+ main_~y~0 1)))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3386#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 20:47:19,905 INFO L290 TraceCheckUtils]: 52: Hoare triple {3386#(<= 1 |__VERIFIER_assert_#in~cond|)} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3390#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 20:47:19,906 INFO L290 TraceCheckUtils]: 53: Hoare triple {3390#(<= 1 __VERIFIER_assert_~cond)} [99] L13-->L14: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {3215#false} is VALID [2022-04-07 20:47:19,906 INFO L290 TraceCheckUtils]: 54: Hoare triple {3215#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3215#false} is VALID [2022-04-07 20:47:19,906 INFO L134 CoverageAnalysis]: Checked inductivity of 51 backedges. 16 proven. 23 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-07 20:47:19,906 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 20:47:54,368 INFO L290 TraceCheckUtils]: 54: Hoare triple {3215#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3215#false} is VALID [2022-04-07 20:47:54,369 INFO L290 TraceCheckUtils]: 53: Hoare triple {3390#(<= 1 __VERIFIER_assert_~cond)} [99] L13-->L14: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {3215#false} is VALID [2022-04-07 20:47:54,369 INFO L290 TraceCheckUtils]: 52: Hoare triple {3386#(<= 1 |__VERIFIER_assert_#in~cond|)} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3390#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 20:47:54,370 INFO L272 TraceCheckUtils]: 51: Hoare triple {3406#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3386#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 20:47:54,370 INFO L290 TraceCheckUtils]: 50: Hoare triple {3406#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3406#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-07 20:47:54,377 INFO L290 TraceCheckUtils]: 49: Hoare triple {3413#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {3406#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-07 20:47:54,378 INFO L290 TraceCheckUtils]: 48: Hoare triple {3417#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} [102] L39-->L39-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_3} OutVars{main_~y~0=v_main_~y~0_3} AuxVars[] AssignedVars[] {3413#(and (or (not (< main_~y~0 0)) (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0))))} is VALID [2022-04-07 20:47:54,379 INFO L290 TraceCheckUtils]: 47: Hoare triple {3417#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {3417#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} is VALID [2022-04-07 20:47:54,383 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {3360#(not (= |__VERIFIER_assert_#in~cond| 0))} {3424#(or (<= 0 main_~y~0) (= (mod main_~y~0 2) 0))} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3417#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (or (= (mod main_~y~0 2) 0) (= (+ main_~z~0 (* (* main_~x~0 2) (+ (div main_~y~0 2) 1))) (* main_~b~0 main_~a~0))) (or (= (+ main_~z~0 (* (* main_~x~0 2) (div main_~y~0 2))) (* main_~b~0 main_~a~0)) (not (= (mod main_~y~0 2) 0)))))} is VALID [2022-04-07 20:47:54,383 INFO L290 TraceCheckUtils]: 45: Hoare triple {3360#(not (= |__VERIFIER_assert_#in~cond| 0))} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3360#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 20:47:54,384 INFO L290 TraceCheckUtils]: 44: Hoare triple {3434#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {3360#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 20:47:54,384 INFO L290 TraceCheckUtils]: 43: Hoare triple {3214#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3434#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-07 20:47:54,384 INFO L272 TraceCheckUtils]: 42: Hoare triple {3424#(or (<= 0 main_~y~0) (= (mod main_~y~0 2) 0))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3214#true} is VALID [2022-04-07 20:47:54,384 INFO L290 TraceCheckUtils]: 41: Hoare triple {3424#(or (<= 0 main_~y~0) (= (mod main_~y~0 2) 0))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3424#(or (<= 0 main_~y~0) (= (mod main_~y~0 2) 0))} is VALID [2022-04-07 20:47:54,386 INFO L290 TraceCheckUtils]: 40: Hoare triple {3444#(and (<= 0 (+ (div main_~y~0 2) 1)) (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ (div (+ (- 2) (div main_~y~0 2)) 2) 1))))} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {3424#(or (<= 0 main_~y~0) (= (mod main_~y~0 2) 0))} is VALID [2022-04-07 20:47:54,386 INFO L290 TraceCheckUtils]: 39: Hoare triple {3444#(and (<= 0 (+ (div main_~y~0 2) 1)) (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ (div (+ (- 2) (div main_~y~0 2)) 2) 1))))} [102] L39-->L39-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_3} OutVars{main_~y~0=v_main_~y~0_3} AuxVars[] AssignedVars[] {3444#(and (<= 0 (+ (div main_~y~0 2) 1)) (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ (div (+ (- 2) (div main_~y~0 2)) 2) 1))))} is VALID [2022-04-07 20:47:54,387 INFO L290 TraceCheckUtils]: 38: Hoare triple {3444#(and (<= 0 (+ (div main_~y~0 2) 1)) (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ (div (+ (- 2) (div main_~y~0 2)) 2) 1))))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {3444#(and (<= 0 (+ (div main_~y~0 2) 1)) (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ (div (+ (- 2) (div main_~y~0 2)) 2) 1))))} is VALID [2022-04-07 20:47:54,388 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {3214#true} {3444#(and (<= 0 (+ (div main_~y~0 2) 1)) (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ (div (+ (- 2) (div main_~y~0 2)) 2) 1))))} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3444#(and (<= 0 (+ (div main_~y~0 2) 1)) (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ (div (+ (- 2) (div main_~y~0 2)) 2) 1))))} is VALID [2022-04-07 20:47:54,388 INFO L290 TraceCheckUtils]: 36: Hoare triple {3214#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3214#true} is VALID [2022-04-07 20:47:54,388 INFO L290 TraceCheckUtils]: 35: Hoare triple {3214#true} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {3214#true} is VALID [2022-04-07 20:47:54,388 INFO L290 TraceCheckUtils]: 34: Hoare triple {3214#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3214#true} is VALID [2022-04-07 20:47:54,388 INFO L272 TraceCheckUtils]: 33: Hoare triple {3444#(and (<= 0 (+ (div main_~y~0 2) 1)) (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ (div (+ (- 2) (div main_~y~0 2)) 2) 1))))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3214#true} is VALID [2022-04-07 20:47:54,388 INFO L290 TraceCheckUtils]: 32: Hoare triple {3444#(and (<= 0 (+ (div main_~y~0 2) 1)) (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ (div (+ (- 2) (div main_~y~0 2)) 2) 1))))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3444#(and (<= 0 (+ (div main_~y~0 2) 1)) (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ (div (+ (- 2) (div main_~y~0 2)) 2) 1))))} is VALID [2022-04-07 20:47:54,390 INFO L290 TraceCheckUtils]: 31: Hoare triple {3472#(and (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ 2 (div (+ (- 2) (div (+ 4 (* (- 1) (div main_~y~0 2))) (- 2))) 2)))) (<= 0 (+ (div (+ (- 1) (div (+ (div main_~y~0 2) (- 4)) 2)) 2) 2)))} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {3444#(and (<= 0 (+ (div main_~y~0 2) 1)) (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ (div (+ (- 2) (div main_~y~0 2)) 2) 1))))} is VALID [2022-04-07 20:47:54,392 INFO L290 TraceCheckUtils]: 30: Hoare triple {3476#(<= 0 (+ 3 (div (+ (- 1) (div (+ (- 4) (* (- 1) (div (+ main_~y~0 (- 10)) (- 2)))) 2)) 2)))} [101] L39-->L39-2: Formula: (and (= v_main_~y~0_1 (+ (- 1) v_main_~y~0_2)) (= v_main_~z~0_1 (+ v_main_~x~0_1 v_main_~z~0_2)) (= (let ((.cse0 (mod v_main_~y~0_2 2))) (ite (and (< v_main_~y~0_2 0) (not (= .cse0 0))) (+ .cse0 (- 2)) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_2, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_2} OutVars{main_~y~0=v_main_~y~0_1, main_~x~0=v_main_~x~0_1, main_~z~0=v_main_~z~0_1} AuxVars[] AssignedVars[main_~z~0, main_~y~0] {3472#(and (or (not (= (mod main_~y~0 2) 0)) (<= 0 (+ 2 (div (+ (- 2) (div (+ 4 (* (- 1) (div main_~y~0 2))) (- 2))) 2)))) (<= 0 (+ (div (+ (- 1) (div (+ (div main_~y~0 2) (- 4)) 2)) 2) 2)))} is VALID [2022-04-07 20:47:54,393 INFO L290 TraceCheckUtils]: 29: Hoare triple {3476#(<= 0 (+ 3 (div (+ (- 1) (div (+ (- 4) (* (- 1) (div (+ main_~y~0 (- 10)) (- 2)))) 2)) 2)))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {3476#(<= 0 (+ 3 (div (+ (- 1) (div (+ (- 4) (* (- 1) (div (+ main_~y~0 (- 10)) (- 2)))) 2)) 2)))} is VALID [2022-04-07 20:47:54,393 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {3214#true} {3476#(<= 0 (+ 3 (div (+ (- 1) (div (+ (- 4) (* (- 1) (div (+ main_~y~0 (- 10)) (- 2)))) 2)) 2)))} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3476#(<= 0 (+ 3 (div (+ (- 1) (div (+ (- 4) (* (- 1) (div (+ main_~y~0 (- 10)) (- 2)))) 2)) 2)))} is VALID [2022-04-07 20:47:54,393 INFO L290 TraceCheckUtils]: 27: Hoare triple {3214#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3214#true} is VALID [2022-04-07 20:47:54,394 INFO L290 TraceCheckUtils]: 26: Hoare triple {3214#true} [100] L13-->L13-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {3214#true} is VALID [2022-04-07 20:47:54,394 INFO L290 TraceCheckUtils]: 25: Hoare triple {3214#true} [95] __VERIFIER_assertENTRY-->L13: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3214#true} is VALID [2022-04-07 20:47:54,394 INFO L272 TraceCheckUtils]: 24: Hoare triple {3476#(<= 0 (+ 3 (div (+ (- 1) (div (+ (- 4) (* (- 1) (div (+ main_~y~0 (- 10)) (- 2)))) 2)) 2)))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3214#true} is VALID [2022-04-07 20:47:54,394 INFO L290 TraceCheckUtils]: 23: Hoare triple {3476#(<= 0 (+ 3 (div (+ (- 1) (div (+ (- 4) (* (- 1) (div (+ main_~y~0 (- 10)) (- 2)))) 2)) 2)))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3476#(<= 0 (+ 3 (div (+ (- 1) (div (+ (- 4) (* (- 1) (div (+ main_~y~0 (- 10)) (- 2)))) 2)) 2)))} is VALID [2022-04-07 20:47:54,395 INFO L290 TraceCheckUtils]: 22: Hoare triple {3501#(<= 0 (+ 3 (div (+ (- 1) (div (+ (* (- 1) (div (+ main_~b~0 (- 10)) (- 2))) (- 4)) 2)) 2)))} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {3476#(<= 0 (+ 3 (div (+ (- 1) (div (+ (- 4) (* (- 1) (div (+ main_~y~0 (- 10)) (- 2)))) 2)) 2)))} is VALID [2022-04-07 20:47:54,395 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {3214#true} {3501#(<= 0 (+ 3 (div (+ (- 1) (div (+ (* (- 1) (div (+ main_~b~0 (- 10)) (- 2))) (- 4)) 2)) 2)))} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {3501#(<= 0 (+ 3 (div (+ (- 1) (div (+ (* (- 1) (div (+ main_~b~0 (- 10)) (- 2))) (- 4)) 2)) 2)))} is VALID [2022-04-07 20:47:54,395 INFO L290 TraceCheckUtils]: 20: Hoare triple {3214#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3214#true} is VALID [2022-04-07 20:47:54,395 INFO L290 TraceCheckUtils]: 19: Hoare triple {3214#true} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {3214#true} is VALID [2022-04-07 20:47:54,395 INFO L290 TraceCheckUtils]: 18: Hoare triple {3214#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {3214#true} is VALID [2022-04-07 20:47:54,396 INFO L272 TraceCheckUtils]: 17: Hoare triple {3501#(<= 0 (+ 3 (div (+ (- 1) (div (+ (* (- 1) (div (+ main_~b~0 (- 10)) (- 2))) (- 4)) 2)) 2)))} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {3214#true} is VALID [2022-04-07 20:47:54,397 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {3262#(not (= |assume_abort_if_not_#in~cond| 0))} {3214#true} [109] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 5) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {3501#(<= 0 (+ 3 (div (+ (- 1) (div (+ (* (- 1) (div (+ main_~b~0 (- 10)) (- 2))) (- 4)) 2)) 2)))} is VALID [2022-04-07 20:47:54,397 INFO L290 TraceCheckUtils]: 15: Hoare triple {3262#(not (= |assume_abort_if_not_#in~cond| 0))} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3262#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 20:47:54,397 INFO L290 TraceCheckUtils]: 14: Hoare triple {3529#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {3262#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-07 20:47:54,398 INFO L290 TraceCheckUtils]: 13: Hoare triple {3214#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {3529#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-07 20:47:54,398 INFO L272 TraceCheckUtils]: 12: Hoare triple {3214#true} [83] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~b~0_8 5) (<= 0 v_main_~b~0_8)) 1 0)) InVars {main_~b~0=v_main_~b~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {3214#true} is VALID [2022-04-07 20:47:54,398 INFO L290 TraceCheckUtils]: 11: Hoare triple {3214#true} [81] L25-1-->L27: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~b~0_3 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~b~0=v_main_~b~0_3} AuxVars[] AssignedVars[main_#t~nondet5, main_~b~0] {3214#true} is VALID [2022-04-07 20:47:54,398 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3214#true} {3214#true} [108] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 5)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {3214#true} is VALID [2022-04-07 20:47:54,398 INFO L290 TraceCheckUtils]: 9: Hoare triple {3214#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3214#true} is VALID [2022-04-07 20:47:54,398 INFO L290 TraceCheckUtils]: 8: Hoare triple {3214#true} [85] L10-->L10-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {3214#true} is VALID [2022-04-07 20:47:54,398 INFO L290 TraceCheckUtils]: 7: Hoare triple {3214#true} [82] assume_abort_if_notENTRY-->L10: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {3214#true} is VALID [2022-04-07 20:47:54,398 INFO L272 TraceCheckUtils]: 6: Hoare triple {3214#true} [80] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~a~0_8) (<= v_main_~a~0_8 5)) 1 0)) InVars {main_~a~0=v_main_~a~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~a~0] {3214#true} is VALID [2022-04-07 20:47:54,399 INFO L290 TraceCheckUtils]: 5: Hoare triple {3214#true} [78] mainENTRY-->L25: Formula: (and (= v_main_~a~0_2 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~y~0=v_main_~y~0_6, main_~x~0=v_main_~x~0_4, main_~b~0=v_main_~b~0_2, main_~z~0=v_main_~z~0_4, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3214#true} is VALID [2022-04-07 20:47:54,399 INFO L272 TraceCheckUtils]: 4: Hoare triple {3214#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3214#true} is VALID [2022-04-07 20:47:54,399 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3214#true} {3214#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3214#true} is VALID [2022-04-07 20:47:54,399 INFO L290 TraceCheckUtils]: 2: Hoare triple {3214#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3214#true} is VALID [2022-04-07 20:47:54,399 INFO L290 TraceCheckUtils]: 1: Hoare triple {3214#true} [76] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {3214#true} is VALID [2022-04-07 20:47:54,399 INFO L272 TraceCheckUtils]: 0: Hoare triple {3214#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3214#true} is VALID [2022-04-07 20:47:54,399 INFO L134 CoverageAnalysis]: Checked inductivity of 51 backedges. 19 proven. 20 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-07 20:47:54,400 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 20:47:54,400 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [673329501] [2022-04-07 20:47:54,400 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 20:47:54,400 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [526470031] [2022-04-07 20:47:54,400 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [526470031] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 20:47:54,400 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 20:47:54,400 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 16] total 28 [2022-04-07 20:47:54,400 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1875684861] [2022-04-07 20:47:54,400 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 20:47:54,401 INFO L78 Accepts]: Start accepts. Automaton has has 28 states, 27 states have (on average 1.8888888888888888) internal successors, (51), 25 states have internal predecessors, (51), 11 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 9 states have call predecessors, (12), 9 states have call successors, (12) Word has length 55 [2022-04-07 20:47:54,401 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 20:47:54,402 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 28 states, 27 states have (on average 1.8888888888888888) internal successors, (51), 25 states have internal predecessors, (51), 11 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 9 states have call predecessors, (12), 9 states have call successors, (12) [2022-04-07 20:47:55,965 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 20:47:55,965 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 28 states [2022-04-07 20:47:55,965 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 20:47:55,966 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 28 interpolants. [2022-04-07 20:47:55,966 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=143, Invalid=612, Unknown=1, NotChecked=0, Total=756 [2022-04-07 20:47:55,966 INFO L87 Difference]: Start difference. First operand 67 states and 72 transitions. Second operand has 28 states, 27 states have (on average 1.8888888888888888) internal successors, (51), 25 states have internal predecessors, (51), 11 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 9 states have call predecessors, (12), 9 states have call successors, (12) [2022-04-07 20:48:03,991 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.57s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-07 20:48:05,892 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.84s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-07 20:48:08,666 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-07 20:48:09,961 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.29s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-07 20:48:18,548 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.53s for a HTC check with result VALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-07 20:48:18,550 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:48:18,550 INFO L93 Difference]: Finished difference Result 65 states and 70 transitions. [2022-04-07 20:48:18,550 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-04-07 20:48:18,550 INFO L78 Accepts]: Start accepts. Automaton has has 28 states, 27 states have (on average 1.8888888888888888) internal successors, (51), 25 states have internal predecessors, (51), 11 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 9 states have call predecessors, (12), 9 states have call successors, (12) Word has length 55 [2022-04-07 20:48:18,551 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 20:48:18,551 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 27 states have (on average 1.8888888888888888) internal successors, (51), 25 states have internal predecessors, (51), 11 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 9 states have call predecessors, (12), 9 states have call successors, (12) [2022-04-07 20:48:18,552 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 41 transitions. [2022-04-07 20:48:18,552 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 27 states have (on average 1.8888888888888888) internal successors, (51), 25 states have internal predecessors, (51), 11 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 9 states have call predecessors, (12), 9 states have call successors, (12) [2022-04-07 20:48:18,553 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 41 transitions. [2022-04-07 20:48:18,553 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 17 states and 41 transitions. [2022-04-07 20:48:22,492 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 40 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-07 20:48:22,492 INFO L225 Difference]: With dead ends: 65 [2022-04-07 20:48:22,492 INFO L226 Difference]: Without dead ends: 0 [2022-04-07 20:48:22,493 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 119 GetRequests, 82 SyntacticMatches, 2 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 1 DeprecatedPredicates, 345 ImplicationChecksByTransitivity, 10.6s TimeCoverageRelationStatistics Valid=270, Invalid=1061, Unknown=1, NotChecked=0, Total=1332 [2022-04-07 20:48:22,493 INFO L913 BasicCegarLoop]: 17 mSDtfsCounter, 40 mSDsluCounter, 164 mSDsCounter, 0 mSdLazyCounter, 263 mSolverCounterSat, 35 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 12.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 40 SdHoareTripleChecker+Valid, 181 SdHoareTripleChecker+Invalid, 306 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 35 IncrementalHoareTripleChecker+Valid, 263 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 7 IncrementalHoareTripleChecker+Unchecked, 12.0s IncrementalHoareTripleChecker+Time [2022-04-07 20:48:22,493 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [40 Valid, 181 Invalid, 306 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [35 Valid, 263 Invalid, 1 Unknown, 7 Unchecked, 12.0s Time] [2022-04-07 20:48:22,494 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-07 20:48:22,494 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-07 20:48:22,494 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 20:48:22,495 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-07 20:48:22,495 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-07 20:48:22,495 INFO L87 Difference]: Start difference. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-07 20:48:22,495 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:48:22,495 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-07 20:48:22,495 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 20:48:22,495 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:48:22,495 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:48:22,495 INFO L74 IsIncluded]: Start isIncluded. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-07 20:48:22,495 INFO L87 Difference]: Start difference. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-07 20:48:22,503 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:48:22,503 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-07 20:48:22,503 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 20:48:22,503 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:48:22,503 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:48:22,503 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 20:48:22,504 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 20:48:22,504 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-07 20:48:22,504 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-07 20:48:22,504 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 55 [2022-04-07 20:48:22,504 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 20:48:22,504 INFO L478 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-07 20:48:22,504 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 28 states, 27 states have (on average 1.8888888888888888) internal successors, (51), 25 states have internal predecessors, (51), 11 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 9 states have call predecessors, (12), 9 states have call successors, (12) [2022-04-07 20:48:22,504 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 20:48:22,504 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:48:22,507 INFO L788 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-07 20:48:22,528 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-04-07 20:48:22,708 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable8 [2022-04-07 20:48:22,711 INFO L719 BasicCegarLoop]: Path program histogram: [3, 1, 1, 1, 1, 1, 1] [2022-04-07 20:48:22,712 INFO L178 ceAbstractionStarter]: Computing trace abstraction results [2022-04-07 20:48:22,713 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 07.04 08:48:22 BasicIcfg [2022-04-07 20:48:22,713 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-07 20:48:22,714 INFO L158 Benchmark]: Toolchain (without parser) took 360061.78ms. Allocated memory was 206.6MB in the beginning and 297.8MB in the end (delta: 91.2MB). Free memory was 149.8MB in the beginning and 238.2MB in the end (delta: -88.5MB). Peak memory consumption was 3.5MB. Max. memory is 8.0GB. [2022-04-07 20:48:22,714 INFO L158 Benchmark]: CDTParser took 0.11ms. Allocated memory is still 206.6MB. Free memory is still 165.9MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-07 20:48:22,715 INFO L158 Benchmark]: CACSL2BoogieTranslator took 187.82ms. Allocated memory was 206.6MB in the beginning and 297.8MB in the end (delta: 91.2MB). Free memory was 149.5MB in the beginning and 268.4MB in the end (delta: -118.9MB). Peak memory consumption was 14.2MB. Max. memory is 8.0GB. [2022-04-07 20:48:22,715 INFO L158 Benchmark]: Boogie Preprocessor took 33.16ms. Allocated memory is still 297.8MB. Free memory was 268.4MB in the beginning and 266.9MB in the end (delta: 1.6MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-07 20:48:22,715 INFO L158 Benchmark]: RCFGBuilder took 251.73ms. Allocated memory is still 297.8MB. Free memory was 266.9MB in the beginning and 254.3MB in the end (delta: 12.6MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2022-04-07 20:48:22,715 INFO L158 Benchmark]: IcfgTransformer took 41.41ms. Allocated memory is still 297.8MB. Free memory was 254.3MB in the beginning and 252.7MB in the end (delta: 1.6MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-07 20:48:22,715 INFO L158 Benchmark]: TraceAbstraction took 359525.39ms. Allocated memory is still 297.8MB. Free memory was 252.2MB in the beginning and 238.2MB in the end (delta: 14.0MB). Peak memory consumption was 15.0MB. Max. memory is 8.0GB. [2022-04-07 20:48:22,717 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 206.6MB. Free memory is still 165.9MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 187.82ms. Allocated memory was 206.6MB in the beginning and 297.8MB in the end (delta: 91.2MB). Free memory was 149.5MB in the beginning and 268.4MB in the end (delta: -118.9MB). Peak memory consumption was 14.2MB. Max. memory is 8.0GB. * Boogie Preprocessor took 33.16ms. Allocated memory is still 297.8MB. Free memory was 268.4MB in the beginning and 266.9MB in the end (delta: 1.6MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 251.73ms. Allocated memory is still 297.8MB. Free memory was 266.9MB in the beginning and 254.3MB in the end (delta: 12.6MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * IcfgTransformer took 41.41ms. Allocated memory is still 297.8MB. Free memory was 254.3MB in the beginning and 252.7MB in the end (delta: 1.6MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * TraceAbstraction took 359525.39ms. Allocated memory is still 297.8MB. Free memory was 252.2MB in the beginning and 238.2MB in the end (delta: 14.0MB). Peak memory consumption was 15.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: 15]: call to reach_error is unreachable For all program executions holds that call to reach_error is unreachable at this location - StatisticsResult: Ultimate Automizer benchmark data CFG has 5 procedures, 32 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 359.5s, OverallIterations: 9, TraceHistogramMax: 4, PathProgramHistogramMax: 3, EmptinessCheckTime: 0.0s, AutomataDifference: 60.1s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 4 mSolverCounterUnknown, 213 SdHoareTripleChecker+Valid, 25.4s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 201 mSDsluCounter, 1166 SdHoareTripleChecker+Invalid, 25.3s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 35 IncrementalHoareTripleChecker+Unchecked, 947 mSDsCounter, 121 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 1222 IncrementalHoareTripleChecker+Invalid, 1382 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 121 mSolverCounterUnsat, 219 mSDtfsCounter, 1222 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 615 GetRequests, 465 SyntacticMatches, 13 SemanticMatches, 137 ConstructedPredicates, 0 IntricatePredicates, 2 DeprecatedPredicates, 696 ImplicationChecksByTransitivity, 27.6s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=70occurred in iteration=7, InterpolantAutomatonStates: 95, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.2s AutomataMinimizationTime, 9 MinimizatonAttempts, 22 StatesRemovedByMinimization, 4 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.1s SsaConstructionTime, 0.2s SatisfiabilityAnalysisTime, 288.6s InterpolantComputationTime, 363 NumberOfCodeBlocks, 363 NumberOfCodeBlocksAsserted, 13 NumberOfCheckSat, 576 ConstructedInterpolants, 3 QuantifiedInterpolants, 2943 SizeOfPredicates, 30 NumberOfNonLiveVariables, 948 ConjunctsInSsa, 148 ConjunctsInUnsatCore, 14 InterpolantComputations, 3 PerfectInterpolantSequences, 310/381 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold RESULT: Ultimate proved your program to be correct! [2022-04-07 20:48:22,786 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Ended with exit code 0 Received shutdown request...