/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-e106359-m [2022-04-14 22:50:39,904 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-14 22:50:39,905 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-14 22:50:39,939 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-14 22:50:39,939 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-14 22:50:39,940 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-14 22:50:39,942 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-14 22:50:39,944 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-14 22:50:39,945 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-14 22:50:39,948 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-14 22:50:39,949 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-14 22:50:39,950 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-14 22:50:39,950 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-14 22:50:39,951 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-14 22:50:39,952 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-14 22:50:39,954 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-14 22:50:39,954 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-14 22:50:39,955 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-14 22:50:39,957 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-14 22:50:39,960 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-14 22:50:39,962 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-14 22:50:39,962 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-14 22:50:39,963 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-14 22:50:39,963 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-14 22:50:39,964 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-14 22:50:39,969 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-14 22:50:39,969 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-14 22:50:39,969 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-14 22:50:39,970 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-14 22:50:39,970 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-14 22:50:39,971 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-14 22:50:39,971 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-14 22:50:39,972 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-14 22:50:39,973 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-14 22:50:39,973 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-14 22:50:39,973 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-14 22:50:39,974 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-14 22:50:39,974 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-14 22:50:39,974 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-14 22:50:39,974 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-14 22:50:39,975 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-14 22:50:39,976 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-14 22:50:39,976 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/LoopAccelerationJordanC.epf [2022-04-14 22:50:39,984 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-14 22:50:39,984 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-14 22:50:39,985 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-14 22:50:39,985 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-14 22:50:39,985 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-14 22:50:39,985 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-14 22:50:39,985 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-14 22:50:39,985 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-14 22:50:39,986 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-14 22:50:39,986 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-14 22:50:39,986 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-14 22:50:39,986 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-14 22:50:39,986 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-14 22:50:39,986 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-14 22:50:39,987 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-14 22:50:39,987 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-14 22:50:39,987 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-14 22:50:39,987 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-14 22:50:39,987 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-14 22:50:39,987 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-14 22:50:39,987 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-14 22:50:39,988 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-14 22:50:39,988 INFO L138 SettingsManager]: * TransformationType=LOOP_ACCELERATION_JORDAN WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-14 22:50:40,182 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-14 22:50:40,201 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-14 22:50:40,202 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-14 22:50:40,203 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-14 22:50:40,204 INFO L275 PluginConnector]: CDTParser initialized [2022-04-14 22:50:40,204 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-14 22:50:40,240 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/44a16a53c/1119b652c1e448248211a5d5b6d9d808/FLAGa1525963d [2022-04-14 22:50:40,588 INFO L306 CDTParser]: Found 1 translation units. [2022-04-14 22:50:40,589 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prodbin-ll_valuebound5.c [2022-04-14 22:50:40,592 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/44a16a53c/1119b652c1e448248211a5d5b6d9d808/FLAGa1525963d [2022-04-14 22:50:40,600 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/44a16a53c/1119b652c1e448248211a5d5b6d9d808 [2022-04-14 22:50:40,601 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-14 22:50:40,602 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-14 22:50:40,603 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-14 22:50:40,603 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-14 22:50:40,605 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-14 22:50:40,606 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.04 10:50:40" (1/1) ... [2022-04-14 22:50:40,607 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@41f50cb5 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 10:50:40, skipping insertion in model container [2022-04-14 22:50:40,607 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.04 10:50:40" (1/1) ... [2022-04-14 22:50:40,611 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-14 22:50:40,620 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-14 22:50:40,717 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-14 22:50:40,726 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-14 22:50:40,731 INFO L203 MainTranslator]: Completed pre-run [2022-04-14 22:50:40,738 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-14 22:50:40,742 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-14 22:50:40,750 INFO L208 MainTranslator]: Completed translation [2022-04-14 22:50:40,751 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 10:50:40 WrapperNode [2022-04-14 22:50:40,751 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-14 22:50:40,752 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-14 22:50:40,752 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-14 22:50:40,752 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-14 22:50:40,758 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 10:50:40" (1/1) ... [2022-04-14 22:50:40,758 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 10:50:40" (1/1) ... [2022-04-14 22:50:40,762 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 10:50:40" (1/1) ... [2022-04-14 22:50:40,762 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 10:50:40" (1/1) ... [2022-04-14 22:50:40,765 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 10:50:40" (1/1) ... [2022-04-14 22:50:40,768 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 10:50:40" (1/1) ... [2022-04-14 22:50:40,769 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 10:50:40" (1/1) ... [2022-04-14 22:50:40,770 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-14 22:50:40,770 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-14 22:50:40,770 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-14 22:50:40,771 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-14 22:50:40,771 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 10:50:40" (1/1) ... [2022-04-14 22:50:40,775 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-14 22:50:40,783 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 22:50:40,792 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-14 22:50:40,796 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-14 22:50:40,820 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-14 22:50:40,820 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-14 22:50:40,820 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-14 22:50:40,820 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-14 22:50:40,820 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-14 22:50:40,821 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-14 22:50:40,821 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-14 22:50:40,821 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-14 22:50:40,821 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-14 22:50:40,822 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-14 22:50:40,822 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-14 22:50:40,822 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-14 22:50:40,822 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-14 22:50:40,822 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-14 22:50:40,823 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-14 22:50:40,823 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-14 22:50:40,823 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-14 22:50:40,824 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-14 22:50:40,824 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-14 22:50:40,824 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-14 22:50:40,866 INFO L234 CfgBuilder]: Building ICFG [2022-04-14 22:50:40,867 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-14 22:50:40,996 INFO L275 CfgBuilder]: Performing block encoding [2022-04-14 22:50:41,001 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-14 22:50:41,001 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-14 22:50:41,002 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 10:50:41 BoogieIcfgContainer [2022-04-14 22:50:41,002 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-14 22:50:41,003 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-14 22:50:41,003 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-14 22:50:41,020 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-14 22:50:41,022 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 10:50:41" (1/1) ... [2022-04-14 22:50:41,024 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_JORDAN [2022-04-14 22:50:41,058 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 14.04 10:50:41 BasicIcfg [2022-04-14 22:50:41,058 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-14 22:50:41,059 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-14 22:50:41,059 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-14 22:50:41,061 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-14 22:50:41,061 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 14.04 10:50:40" (1/4) ... [2022-04-14 22:50:41,061 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@756a4db6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.04 10:50:41, skipping insertion in model container [2022-04-14 22:50:41,061 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 10:50:40" (2/4) ... [2022-04-14 22:50:41,061 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@756a4db6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.04 10:50:41, skipping insertion in model container [2022-04-14 22:50:41,062 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 10:50:41" (3/4) ... [2022-04-14 22:50:41,062 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@756a4db6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 14.04 10:50:41, skipping insertion in model container [2022-04-14 22:50:41,062 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 14.04 10:50:41" (4/4) ... [2022-04-14 22:50:41,062 INFO L111 eAbstractionObserver]: Analyzing ICFG prodbin-ll_valuebound5.cJordan [2022-04-14 22:50:41,065 INFO L202 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:ForwardPredicates Determinization: PREDICATE_ABSTRACTION [2022-04-14 22:50:41,065 INFO L161 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-14 22:50:41,091 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-14 22:50:41,095 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=ForwardPredicates, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=false, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP [2022-04-14 22:50:41,095 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-14 22:50:41,117 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-14 22:50:41,122 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-14 22:50:41,123 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 22:50:41,123 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 22:50:41,123 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 22:50:41,126 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 22:50:41,127 INFO L85 PathProgramCache]: Analyzing trace with hash 1656134296, now seen corresponding path program 1 times [2022-04-14 22:50:41,136 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 22:50:41,137 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [985751963] [2022-04-14 22:50:41,137 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 22:50:41,138 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 22:50:41,238 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 22:50:41,292 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-14 22:50:41,298 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 22:50:41,313 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-14 22:50:41,313 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-14 22:50:41,313 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-14 22:50:41,314 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-14 22:50:41,319 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 22:50:41,333 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-14 22:50:41,334 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} [84] L10-->L10-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-14 22:50:41,334 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-14 22:50:41,334 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-14 22:50:41,334 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-14 22:50:41,336 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 22:50:41,344 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-14 22:50:41,345 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} [84] L10-->L10-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-14 22:50:41,345 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-14 22:50:41,345 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-14 22:50:41,346 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-14 22:50:41,347 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 22:50:41,354 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-14 22:50:41,355 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} [84] L10-->L10-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-14 22:50:41,355 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-14 22:50:41,355 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-14 22:50:41,356 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-14 22:50:41,358 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-14 22:50:41,358 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-14 22:50:41,358 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-14 22:50:41,358 INFO L272 TraceCheckUtils]: 4: Hoare triple {35#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-14 22:50:41,358 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-14 22:50:41,359 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-14 22:50:41,359 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-14 22:50:41,360 INFO L290 TraceCheckUtils]: 8: Hoare triple {35#true} [84] L10-->L10-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-14 22:50:41,360 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-14 22:50:41,360 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-14 22:50:41,361 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-14 22:50:41,361 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-14 22:50:41,361 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-14 22:50:41,362 INFO L290 TraceCheckUtils]: 14: Hoare triple {35#true} [84] L10-->L10-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-14 22:50:41,362 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-14 22:50:41,362 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-14 22:50:41,362 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-14 22:50:41,362 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-14 22:50:41,363 INFO L290 TraceCheckUtils]: 19: Hoare triple {35#true} [84] L10-->L10-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-14 22:50:41,363 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-14 22:50:41,364 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-14 22:50:41,364 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-14 22:50:41,365 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-14 22:50:41,365 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-14 22:50:41,365 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-14 22:50:41,366 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-14 22:50:41,367 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-14 22:50:41,367 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-14 22:50:41,367 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 22:50:41,368 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [985751963] [2022-04-14 22:50:41,369 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [985751963] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 22:50:41,369 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 22:50:41,369 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-14 22:50:41,372 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [873171503] [2022-04-14 22:50:41,372 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 22:50:41,377 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-14 22:50:41,378 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 22:50:41,381 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-14 22:50:41,418 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 22:50:41,418 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-14 22:50:41,419 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 22:50:41,434 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-14 22:50:41,435 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-14 22:50:41,437 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-14 22:50:41,545 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 22:50:41,545 INFO L93 Difference]: Finished difference Result 32 states and 36 transitions. [2022-04-14 22:50:41,545 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-14 22:50:41,545 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-14 22:50:41,546 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 22:50:41,546 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-14 22:50:41,551 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 40 transitions. [2022-04-14 22:50:41,551 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-14 22:50:41,554 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 40 transitions. [2022-04-14 22:50:41,554 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 40 transitions. [2022-04-14 22:50:41,600 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-14 22:50:41,606 INFO L225 Difference]: With dead ends: 32 [2022-04-14 22:50:41,606 INFO L226 Difference]: Without dead ends: 27 [2022-04-14 22:50:41,607 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-14 22:50:41,609 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-14 22:50:41,610 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-14 22:50:41,620 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2022-04-14 22:50:41,627 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 27. [2022-04-14 22:50:41,627 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 22:50:41,628 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-14 22:50:41,628 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-14 22:50:41,628 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-14 22:50:41,631 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 22:50:41,631 INFO L93 Difference]: Finished difference Result 27 states and 31 transitions. [2022-04-14 22:50:41,632 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-04-14 22:50:41,632 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 22:50:41,632 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 22:50:41,632 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-14 22:50:41,633 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-14 22:50:41,635 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 22:50:41,635 INFO L93 Difference]: Finished difference Result 27 states and 31 transitions. [2022-04-14 22:50:41,635 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-04-14 22:50:41,636 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 22:50:41,636 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 22:50:41,636 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 22:50:41,636 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 22:50:41,636 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-14 22:50:41,638 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 31 transitions. [2022-04-14 22:50:41,638 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 31 transitions. Word has length 28 [2022-04-14 22:50:41,639 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 22:50:41,639 INFO L478 AbstractCegarLoop]: Abstraction has 27 states and 31 transitions. [2022-04-14 22:50:41,639 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-14 22:50:41,639 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-04-14 22:50:41,640 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-14 22:50:41,640 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 22:50:41,640 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 22:50:41,640 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-14 22:50:41,640 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 22:50:41,641 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 22:50:41,641 INFO L85 PathProgramCache]: Analyzing trace with hash -1063826184, now seen corresponding path program 1 times [2022-04-14 22:50:41,641 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 22:50:41,641 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [354583275] [2022-04-14 22:50:41,641 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 22:50:41,641 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 22:50:41,670 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 22:50:41,670 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1209265946] [2022-04-14 22:50:41,671 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 22:50:41,671 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 22:50:41,671 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 22:50:41,672 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 22:50:41,673 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-14 22:50:41,712 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 22:50:41,716 INFO L263 TraceCheckSpWp]: Trace formula consists of 90 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-14 22:50:41,742 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 22:50:41,748 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 22:50:41,905 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-14 22:50:41,906 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-14 22:50:41,906 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-14 22:50:41,906 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-14 22:50:41,906 INFO L272 TraceCheckUtils]: 4: Hoare triple {168#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {168#true} is VALID [2022-04-14 22:50:41,909 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-14 22:50:41,910 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-14 22:50:41,910 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-14 22:50:41,910 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-14 22:50:41,910 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-14 22:50:41,910 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-14 22:50:41,910 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-14 22:50:41,911 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-14 22:50:41,911 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-14 22:50:41,911 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-14 22:50:41,911 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-14 22:50:41,911 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-14 22:50:41,912 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-14 22:50:41,912 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-14 22:50:41,912 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-14 22:50:41,912 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-14 22:50:41,912 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-14 22:50:41,916 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-14 22:50:41,916 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-14 22:50:41,917 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-14 22:50:41,918 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-14 22:50:41,918 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-14 22:50:41,919 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-14 22:50:41,919 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-14 22:50:41,919 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 22:50:41,919 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 22:50:41,919 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [354583275] [2022-04-14 22:50:41,920 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 22:50:41,920 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1209265946] [2022-04-14 22:50:41,922 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1209265946] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 22:50:41,922 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 22:50:41,922 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-14 22:50:41,923 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1757242003] [2022-04-14 22:50:41,923 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 22:50:41,924 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-14 22:50:41,924 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 22:50:41,924 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-14 22:50:41,941 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 22:50:41,941 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-14 22:50:41,941 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 22:50:41,943 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-14 22:50:41,943 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-14 22:50:41,943 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-14 22:50:42,065 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 22:50:42,065 INFO L93 Difference]: Finished difference Result 37 states and 43 transitions. [2022-04-14 22:50:42,065 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-14 22:50:42,066 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-14 22:50:42,066 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 22:50:42,066 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-14 22:50:42,068 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 44 transitions. [2022-04-14 22:50:42,068 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-14 22:50:42,070 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 44 transitions. [2022-04-14 22:50:42,070 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 44 transitions. [2022-04-14 22:50:42,103 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-14 22:50:42,104 INFO L225 Difference]: With dead ends: 37 [2022-04-14 22:50:42,104 INFO L226 Difference]: Without dead ends: 37 [2022-04-14 22:50:42,104 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-14 22:50:42,105 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-14 22:50:42,106 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-14 22:50:42,106 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2022-04-14 22:50:42,108 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 33. [2022-04-14 22:50:42,108 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 22:50:42,109 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-14 22:50:42,109 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-14 22:50:42,109 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-14 22:50:42,111 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 22:50:42,111 INFO L93 Difference]: Finished difference Result 37 states and 43 transitions. [2022-04-14 22:50:42,111 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 43 transitions. [2022-04-14 22:50:42,112 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 22:50:42,112 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 22:50:42,112 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-14 22:50:42,113 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-14 22:50:42,114 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 22:50:42,115 INFO L93 Difference]: Finished difference Result 37 states and 43 transitions. [2022-04-14 22:50:42,115 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 43 transitions. [2022-04-14 22:50:42,115 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 22:50:42,115 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 22:50:42,115 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 22:50:42,115 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 22:50:42,116 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-14 22:50:42,117 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 37 transitions. [2022-04-14 22:50:42,117 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 37 transitions. Word has length 28 [2022-04-14 22:50:42,117 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 22:50:42,117 INFO L478 AbstractCegarLoop]: Abstraction has 33 states and 37 transitions. [2022-04-14 22:50:42,118 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-14 22:50:42,118 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 37 transitions. [2022-04-14 22:50:42,118 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-14 22:50:42,118 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 22:50:42,118 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-14 22:50:42,135 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-14 22:50:42,328 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 22:50:42,328 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 22:50:42,329 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 22:50:42,329 INFO L85 PathProgramCache]: Analyzing trace with hash -499634320, now seen corresponding path program 1 times [2022-04-14 22:50:42,330 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 22:50:42,330 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [532606161] [2022-04-14 22:50:42,330 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 22:50:42,330 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 22:50:42,346 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 22:50:42,346 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2123453630] [2022-04-14 22:50:42,346 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 22:50:42,346 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 22:50:42,346 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 22:50:42,350 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 22:50:42,351 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-14 22:50:42,392 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 22:50:42,393 INFO L263 TraceCheckSpWp]: Trace formula consists of 101 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-14 22:50:42,416 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 22:50:42,417 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 22:50:42,543 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-14 22:50:42,544 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-14 22:50:42,544 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-14 22:50:42,544 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-14 22:50:42,544 INFO L272 TraceCheckUtils]: 4: Hoare triple {402#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {402#true} is VALID [2022-04-14 22:50:42,544 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-14 22:50:42,544 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-14 22:50:42,545 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-14 22:50:42,545 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-14 22:50:42,545 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-14 22:50:42,545 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-14 22:50:42,545 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-14 22:50:42,545 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-14 22:50:42,545 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-14 22:50:42,546 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-14 22:50:42,546 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-14 22:50:42,546 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-14 22:50:42,546 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-14 22:50:42,549 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-14 22:50:42,550 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-14 22:50:42,550 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-14 22:50:42,551 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-14 22:50:42,551 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-14 22:50:42,551 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-14 22:50:42,551 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-14 22:50:42,552 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-14 22:50:42,552 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-14 22:50:42,552 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-14 22:50:42,552 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-14 22:50:42,553 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-14 22:50:42,553 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-14 22:50:42,553 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-14 22:50:42,553 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-14 22:50:42,553 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-14 22:50:42,554 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 8 proven. 0 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-14 22:50:42,554 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 22:50:42,554 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 22:50:42,554 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [532606161] [2022-04-14 22:50:42,554 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 22:50:42,554 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2123453630] [2022-04-14 22:50:42,554 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2123453630] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 22:50:42,554 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 22:50:42,554 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-14 22:50:42,555 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [398779014] [2022-04-14 22:50:42,555 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 22:50:42,555 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-14 22:50:42,555 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 22:50:42,556 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-14 22:50:42,579 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 22:50:42,579 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-14 22:50:42,579 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 22:50:42,579 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-14 22:50:42,580 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-14 22:50:42,580 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-14 22:50:42,723 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 22:50:42,723 INFO L93 Difference]: Finished difference Result 36 states and 41 transitions. [2022-04-14 22:50:42,723 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-14 22:50:42,723 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-14 22:50:42,724 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 22:50:42,724 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-14 22:50:42,725 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 39 transitions. [2022-04-14 22:50:42,725 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-14 22:50:42,726 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 39 transitions. [2022-04-14 22:50:42,727 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 39 transitions. [2022-04-14 22:50:42,756 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-14 22:50:42,757 INFO L225 Difference]: With dead ends: 36 [2022-04-14 22:50:42,757 INFO L226 Difference]: Without dead ends: 36 [2022-04-14 22:50:42,757 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-14 22:50:42,758 INFO L913 BasicCegarLoop]: 24 mSDtfsCounter, 14 mSDsluCounter, 65 mSDsCounter, 0 mSdLazyCounter, 58 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 15 SdHoareTripleChecker+Valid, 89 SdHoareTripleChecker+Invalid, 60 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 58 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-14 22:50:42,758 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [15 Valid, 89 Invalid, 60 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 58 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-14 22:50:42,759 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states. [2022-04-14 22:50:42,761 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 34. [2022-04-14 22:50:42,761 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 22:50:42,762 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-14 22:50:42,762 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-14 22:50:42,762 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-14 22:50:42,764 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 22:50:42,764 INFO L93 Difference]: Finished difference Result 36 states and 41 transitions. [2022-04-14 22:50:42,764 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 41 transitions. [2022-04-14 22:50:42,764 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 22:50:42,764 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 22:50:42,765 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-14 22:50:42,765 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-14 22:50:42,766 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 22:50:42,766 INFO L93 Difference]: Finished difference Result 36 states and 41 transitions. [2022-04-14 22:50:42,766 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 41 transitions. [2022-04-14 22:50:42,767 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 22:50:42,767 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 22:50:42,767 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 22:50:42,767 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 22:50:42,767 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-14 22:50:42,769 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 38 transitions. [2022-04-14 22:50:42,769 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 38 transitions. Word has length 34 [2022-04-14 22:50:42,769 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 22:50:42,769 INFO L478 AbstractCegarLoop]: Abstraction has 34 states and 38 transitions. [2022-04-14 22:50:42,769 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-14 22:50:42,769 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 38 transitions. [2022-04-14 22:50:42,770 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-04-14 22:50:42,770 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 22:50:42,770 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-14 22:50:42,786 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-14 22:50:42,986 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-14 22:50:42,987 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 22:50:42,988 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 22:50:42,988 INFO L85 PathProgramCache]: Analyzing trace with hash -1096608558, now seen corresponding path program 1 times [2022-04-14 22:50:42,988 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 22:50:42,988 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1017605297] [2022-04-14 22:50:42,988 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 22:50:42,988 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 22:50:43,008 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 22:50:43,008 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [281079104] [2022-04-14 22:50:43,008 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 22:50:43,008 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 22:50:43,008 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 22:50:43,009 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 22:50:43,010 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-14 22:50:43,044 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 22:50:43,045 INFO L263 TraceCheckSpWp]: Trace formula consists of 111 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-14 22:50:43,054 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 22:50:43,055 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 22:50:44,499 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-14 22:50:44,499 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-14 22:50:44,500 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-14 22:50:44,500 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-14 22:50:44,500 INFO L272 TraceCheckUtils]: 4: Hoare triple {655#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {655#true} is VALID [2022-04-14 22:50:44,500 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-14 22:50:44,500 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-14 22:50:44,500 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-14 22:50:44,500 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-14 22:50:44,501 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-14 22:50:44,501 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-14 22:50:44,501 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-14 22:50:44,501 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-14 22:50:44,501 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-14 22:50:44,501 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-14 22:50:44,501 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-14 22:50:44,501 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-14 22:50:44,502 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-14 22:50:44,502 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-14 22:50:44,502 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-14 22:50:44,502 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-14 22:50:44,502 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-14 22:50:44,512 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-14 22:50:44,512 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-14 22:50:44,512 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-14 22:50:44,513 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-14 22:50:44,513 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-14 22:50:44,513 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-14 22:50:44,514 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-14 22:50:44,515 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-14 22:50:44,516 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-14 22:50:44,517 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-14 22:50:44,517 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-14 22:50:45,023 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-14 22:50:45,024 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-14 22:50:45,025 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-14 22:50:45,025 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-14 22:50:45,026 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-14 22:50:45,026 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 22:51:39,164 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-14 22:51:39,165 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-14 22:51:39,166 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-14 22:51:39,166 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-14 22:51:39,167 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-14 22:51:39,173 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-14 22:51:39,175 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-14 22:51:39,175 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-14 22:51:41,177 WARN 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 UNKNOWN [2022-04-14 22:51:41,178 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-14 22:51:41,178 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-14 22:51:41,178 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-14 22:51:41,179 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-14 22:51:41,179 INFO L290 TraceCheckUtils]: 23: Hoare triple {655#true} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {655#true} is VALID [2022-04-14 22:51:41,179 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-14 22:51:41,179 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-14 22:51:41,179 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-14 22:51:41,179 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-14 22:51:41,179 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-14 22:51:41,179 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-14 22:51:41,180 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-14 22:51:41,180 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-14 22:51:41,180 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-14 22:51:41,180 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-14 22:51:41,180 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-14 22:51:41,180 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-14 22:51:41,180 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-14 22:51:41,180 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-14 22:51:41,181 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-14 22:51:41,181 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-14 22:51:41,181 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-14 22:51:41,181 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-14 22:51:41,181 INFO L272 TraceCheckUtils]: 4: Hoare triple {655#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {655#true} is VALID [2022-04-14 22:51:41,181 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-14 22:51:41,181 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-14 22:51:41,181 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-14 22:51:41,182 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-14 22:51:41,182 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-14 22:51:41,182 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 22:51:41,182 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1017605297] [2022-04-14 22:51:41,182 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 22:51:41,182 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [281079104] [2022-04-14 22:51:41,182 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [281079104] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-14 22:51:41,182 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-14 22:51:41,182 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 9] total 14 [2022-04-14 22:51:41,182 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [4332876] [2022-04-14 22:51:41,183 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-14 22:51:41,183 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-14 22:51:41,183 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 22:51:41,184 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-14 22:51:43,594 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 22:51:43,594 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-14 22:51:43,594 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 22:51:43,595 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-14 22:51:43,595 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=40, Invalid=142, Unknown=0, NotChecked=0, Total=182 [2022-04-14 22:51:43,595 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-14 22:51:49,389 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.72s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-14 22:51:52,252 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-14 22:51:57,015 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.50s for a HTC check with result VALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-14 22:51:58,785 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 22:51:58,785 INFO L93 Difference]: Finished difference Result 50 states and 58 transitions. [2022-04-14 22:51:58,785 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-14 22:51:58,785 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-14 22:51:58,786 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 22:51:58,786 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-14 22:51:58,787 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 56 transitions. [2022-04-14 22:51:58,788 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-14 22:51:58,789 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 56 transitions. [2022-04-14 22:51:58,789 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 56 transitions. [2022-04-14 22:52:01,606 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 55 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-14 22:52:01,607 INFO L225 Difference]: With dead ends: 50 [2022-04-14 22:52:01,607 INFO L226 Difference]: Without dead ends: 50 [2022-04-14 22:52:01,607 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 77 GetRequests, 58 SyntacticMatches, 3 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 37 ImplicationChecksByTransitivity, 3.8s TimeCoverageRelationStatistics Valid=66, Invalid=240, Unknown=0, NotChecked=0, Total=306 [2022-04-14 22:52:01,608 INFO L913 BasicCegarLoop]: 24 mSDtfsCounter, 25 mSDsluCounter, 121 mSDsCounter, 0 mSdLazyCounter, 167 mSolverCounterSat, 16 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 10.1s 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, 10.1s IncrementalHoareTripleChecker+Time [2022-04-14 22:52:01,608 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [27 Valid, 145 Invalid, 184 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 167 Invalid, 1 Unknown, 0 Unchecked, 10.1s Time] [2022-04-14 22:52:01,608 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2022-04-14 22:52:01,611 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 47. [2022-04-14 22:52:01,611 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 22:52:01,611 INFO L82 GeneralOperation]: Start isEquivalent. First operand 50 states. Second operand has 47 states, 31 states have (on average 1.1935483870967742) internal successors, (37), 33 states have internal predecessors, (37), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-14 22:52:01,611 INFO L74 IsIncluded]: Start isIncluded. First operand 50 states. Second operand has 47 states, 31 states have (on average 1.1935483870967742) internal successors, (37), 33 states have internal predecessors, (37), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-14 22:52:01,611 INFO L87 Difference]: Start difference. First operand 50 states. Second operand has 47 states, 31 states have (on average 1.1935483870967742) internal successors, (37), 33 states have internal predecessors, (37), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-14 22:52:01,613 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 22:52:01,613 INFO L93 Difference]: Finished difference Result 50 states and 58 transitions. [2022-04-14 22:52:01,613 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 58 transitions. [2022-04-14 22:52:01,614 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 22:52:01,614 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 22:52:01,614 INFO L74 IsIncluded]: Start isIncluded. First operand has 47 states, 31 states have (on average 1.1935483870967742) internal successors, (37), 33 states have internal predecessors, (37), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 50 states. [2022-04-14 22:52:01,614 INFO L87 Difference]: Start difference. First operand has 47 states, 31 states have (on average 1.1935483870967742) internal successors, (37), 33 states have internal predecessors, (37), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 50 states. [2022-04-14 22:52:01,616 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 22:52:01,616 INFO L93 Difference]: Finished difference Result 50 states and 58 transitions. [2022-04-14 22:52:01,616 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 58 transitions. [2022-04-14 22:52:01,616 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 22:52:01,616 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 22:52:01,616 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 22:52:01,617 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 22:52:01,617 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 47 states, 31 states have (on average 1.1935483870967742) internal successors, (37), 33 states have internal predecessors, (37), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-14 22:52:01,618 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 55 transitions. [2022-04-14 22:52:01,618 INFO L78 Accepts]: Start accepts. Automaton has 47 states and 55 transitions. Word has length 37 [2022-04-14 22:52:01,618 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 22:52:01,618 INFO L478 AbstractCegarLoop]: Abstraction has 47 states and 55 transitions. [2022-04-14 22:52:01,619 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-14 22:52:01,619 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 55 transitions. [2022-04-14 22:52:01,619 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-04-14 22:52:01,619 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 22:52:01,619 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-14 22:52:01,643 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-14 22:52:01,820 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 22:52:01,820 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 22:52:01,820 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 22:52:01,820 INFO L85 PathProgramCache]: Analyzing trace with hash -209104877, now seen corresponding path program 1 times [2022-04-14 22:52:01,821 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 22:52:01,821 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1215957886] [2022-04-14 22:52:01,821 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 22:52:01,821 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 22:52:01,831 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 22:52:01,831 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [861632460] [2022-04-14 22:52:01,831 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 22:52:01,832 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 22:52:01,832 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 22:52:01,833 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 22:52:01,839 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-14 22:52:01,870 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 22:52:01,871 INFO L263 TraceCheckSpWp]: Trace formula consists of 106 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-14 22:52:01,881 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 22:52:01,882 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 22:52:03,389 INFO L272 TraceCheckUtils]: 0: Hoare triple {1095#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1095#true} is VALID [2022-04-14 22:52:03,389 INFO L290 TraceCheckUtils]: 1: Hoare triple {1095#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] {1095#true} is VALID [2022-04-14 22:52:03,389 INFO L290 TraceCheckUtils]: 2: Hoare triple {1095#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1095#true} is VALID [2022-04-14 22:52:03,389 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1095#true} {1095#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1095#true} is VALID [2022-04-14 22:52:03,389 INFO L272 TraceCheckUtils]: 4: Hoare triple {1095#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1095#true} is VALID [2022-04-14 22:52:03,389 INFO L290 TraceCheckUtils]: 5: Hoare triple {1095#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] {1095#true} is VALID [2022-04-14 22:52:03,389 INFO L272 TraceCheckUtils]: 6: Hoare triple {1095#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] {1095#true} is VALID [2022-04-14 22:52:03,390 INFO L290 TraceCheckUtils]: 7: Hoare triple {1095#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] {1095#true} is VALID [2022-04-14 22:52:03,390 INFO L290 TraceCheckUtils]: 8: Hoare triple {1095#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[] {1095#true} is VALID [2022-04-14 22:52:03,390 INFO L290 TraceCheckUtils]: 9: Hoare triple {1095#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1095#true} is VALID [2022-04-14 22:52:03,390 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1095#true} {1095#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] {1095#true} is VALID [2022-04-14 22:52:03,390 INFO L290 TraceCheckUtils]: 11: Hoare triple {1095#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] {1095#true} is VALID [2022-04-14 22:52:03,390 INFO L272 TraceCheckUtils]: 12: Hoare triple {1095#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] {1095#true} is VALID [2022-04-14 22:52:03,390 INFO L290 TraceCheckUtils]: 13: Hoare triple {1095#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] {1095#true} is VALID [2022-04-14 22:52:03,390 INFO L290 TraceCheckUtils]: 14: Hoare triple {1095#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[] {1095#true} is VALID [2022-04-14 22:52:03,390 INFO L290 TraceCheckUtils]: 15: Hoare triple {1095#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1095#true} is VALID [2022-04-14 22:52:03,390 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1095#true} {1095#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] {1095#true} is VALID [2022-04-14 22:52:03,391 INFO L272 TraceCheckUtils]: 17: Hoare triple {1095#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] {1095#true} is VALID [2022-04-14 22:52:03,392 INFO L290 TraceCheckUtils]: 18: Hoare triple {1095#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] {1154#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-14 22:52:03,393 INFO L290 TraceCheckUtils]: 19: Hoare triple {1154#(= 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[] {1158#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 22:52:03,393 INFO L290 TraceCheckUtils]: 20: Hoare triple {1158#(not (= |assume_abort_if_not_#in~cond| 0))} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1158#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 22:52:03,394 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1158#(not (= |assume_abort_if_not_#in~cond| 0))} {1095#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] {1165#(<= 1 main_~b~0)} is VALID [2022-04-14 22:52:03,394 INFO L290 TraceCheckUtils]: 22: Hoare triple {1165#(<= 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] {1169#(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-14 22:52:03,394 INFO L290 TraceCheckUtils]: 23: Hoare triple {1169#(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[] {1169#(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-14 22:52:03,395 INFO L272 TraceCheckUtils]: 24: Hoare triple {1169#(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] {1095#true} is VALID [2022-04-14 22:52:03,395 INFO L290 TraceCheckUtils]: 25: Hoare triple {1095#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] {1179#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-14 22:52:03,395 INFO L290 TraceCheckUtils]: 26: Hoare triple {1179#(= |__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[] {1183#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 22:52:03,396 INFO L290 TraceCheckUtils]: 27: Hoare triple {1183#(not (= |__VERIFIER_assert_#in~cond| 0))} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1183#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 22:52:03,396 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1183#(not (= |__VERIFIER_assert_#in~cond| 0))} {1169#(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] {1169#(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-14 22:52:03,397 INFO L290 TraceCheckUtils]: 29: Hoare triple {1169#(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[] {1169#(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-14 22:52:03,397 INFO L290 TraceCheckUtils]: 30: Hoare triple {1169#(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[] {1196#(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-14 22:52:03,398 INFO L290 TraceCheckUtils]: 31: Hoare triple {1196#(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] {1200#(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-14 22:52:03,398 INFO L290 TraceCheckUtils]: 32: Hoare triple {1200#(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[] {1200#(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-14 22:52:03,400 INFO L272 TraceCheckUtils]: 33: Hoare triple {1200#(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] {1207#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 22:52:03,400 INFO L290 TraceCheckUtils]: 34: Hoare triple {1207#(<= 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] {1211#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 22:52:03,400 INFO L290 TraceCheckUtils]: 35: Hoare triple {1211#(<= 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[] {1096#false} is VALID [2022-04-14 22:52:03,401 INFO L290 TraceCheckUtils]: 36: Hoare triple {1096#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1096#false} is VALID [2022-04-14 22:52:03,401 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-14 22:52:03,401 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 22:52:39,753 INFO L290 TraceCheckUtils]: 36: Hoare triple {1096#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1096#false} is VALID [2022-04-14 22:52:39,754 INFO L290 TraceCheckUtils]: 35: Hoare triple {1211#(<= 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[] {1096#false} is VALID [2022-04-14 22:52:39,754 INFO L290 TraceCheckUtils]: 34: Hoare triple {1207#(<= 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] {1211#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 22:52:39,755 INFO L272 TraceCheckUtils]: 33: Hoare triple {1227#(= (+ 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] {1207#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 22:52:39,755 INFO L290 TraceCheckUtils]: 32: Hoare triple {1227#(= (+ 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[] {1227#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-14 22:52:39,760 INFO L290 TraceCheckUtils]: 31: Hoare triple {1234#(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] {1227#(= (+ main_~z~0 (* main_~y~0 main_~x~0)) (* main_~b~0 main_~a~0))} is VALID [2022-04-14 22:52:39,761 INFO L290 TraceCheckUtils]: 30: Hoare triple {1238#(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[] {1234#(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-14 22:52:39,761 INFO L290 TraceCheckUtils]: 29: Hoare triple {1238#(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[] {1238#(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-14 22:52:39,764 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1183#(not (= |__VERIFIER_assert_#in~cond| 0))} {1245#(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] {1238#(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-14 22:52:39,764 INFO L290 TraceCheckUtils]: 27: Hoare triple {1183#(not (= |__VERIFIER_assert_#in~cond| 0))} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1183#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 22:52:39,764 INFO L290 TraceCheckUtils]: 26: Hoare triple {1255#(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[] {1183#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 22:52:39,765 INFO L290 TraceCheckUtils]: 25: Hoare triple {1095#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] {1255#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-14 22:52:39,765 INFO L272 TraceCheckUtils]: 24: Hoare triple {1245#(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] {1095#true} is VALID [2022-04-14 22:52:39,765 INFO L290 TraceCheckUtils]: 23: Hoare triple {1245#(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[] {1245#(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-14 22:52:39,766 INFO L290 TraceCheckUtils]: 22: Hoare triple {1265#(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] {1245#(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-14 22:52:39,766 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1158#(not (= |assume_abort_if_not_#in~cond| 0))} {1095#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] {1265#(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-14 22:52:39,767 INFO L290 TraceCheckUtils]: 20: Hoare triple {1158#(not (= |assume_abort_if_not_#in~cond| 0))} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1158#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 22:52:39,767 INFO L290 TraceCheckUtils]: 19: Hoare triple {1278#(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[] {1158#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 22:52:39,767 INFO L290 TraceCheckUtils]: 18: Hoare triple {1095#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] {1278#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-14 22:52:39,767 INFO L272 TraceCheckUtils]: 17: Hoare triple {1095#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] {1095#true} is VALID [2022-04-14 22:52:39,768 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1095#true} {1095#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] {1095#true} is VALID [2022-04-14 22:52:39,768 INFO L290 TraceCheckUtils]: 15: Hoare triple {1095#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1095#true} is VALID [2022-04-14 22:52:39,768 INFO L290 TraceCheckUtils]: 14: Hoare triple {1095#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[] {1095#true} is VALID [2022-04-14 22:52:39,768 INFO L290 TraceCheckUtils]: 13: Hoare triple {1095#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] {1095#true} is VALID [2022-04-14 22:52:39,768 INFO L272 TraceCheckUtils]: 12: Hoare triple {1095#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] {1095#true} is VALID [2022-04-14 22:52:39,768 INFO L290 TraceCheckUtils]: 11: Hoare triple {1095#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] {1095#true} is VALID [2022-04-14 22:52:39,768 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1095#true} {1095#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] {1095#true} is VALID [2022-04-14 22:52:39,768 INFO L290 TraceCheckUtils]: 9: Hoare triple {1095#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1095#true} is VALID [2022-04-14 22:52:39,768 INFO L290 TraceCheckUtils]: 8: Hoare triple {1095#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[] {1095#true} is VALID [2022-04-14 22:52:39,768 INFO L290 TraceCheckUtils]: 7: Hoare triple {1095#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] {1095#true} is VALID [2022-04-14 22:52:39,769 INFO L272 TraceCheckUtils]: 6: Hoare triple {1095#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] {1095#true} is VALID [2022-04-14 22:52:39,769 INFO L290 TraceCheckUtils]: 5: Hoare triple {1095#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] {1095#true} is VALID [2022-04-14 22:52:39,769 INFO L272 TraceCheckUtils]: 4: Hoare triple {1095#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1095#true} is VALID [2022-04-14 22:52:39,769 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1095#true} {1095#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1095#true} is VALID [2022-04-14 22:52:39,769 INFO L290 TraceCheckUtils]: 2: Hoare triple {1095#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1095#true} is VALID [2022-04-14 22:52:39,769 INFO L290 TraceCheckUtils]: 1: Hoare triple {1095#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] {1095#true} is VALID [2022-04-14 22:52:39,769 INFO L272 TraceCheckUtils]: 0: Hoare triple {1095#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1095#true} is VALID [2022-04-14 22:52:39,769 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-14 22:52:39,769 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 22:52:39,770 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1215957886] [2022-04-14 22:52:39,770 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 22:52:39,770 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [861632460] [2022-04-14 22:52:39,770 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [861632460] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-14 22:52:39,770 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-14 22:52:39,770 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 13] total 19 [2022-04-14 22:52:39,770 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [65143078] [2022-04-14 22:52:39,770 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-14 22:52:39,771 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-14 22:52:39,771 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 22:52:39,771 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-14 22:52:39,810 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-14 22:52:39,811 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2022-04-14 22:52:39,811 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 22:52:39,812 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2022-04-14 22:52:39,812 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=62, Invalid=280, Unknown=0, NotChecked=0, Total=342 [2022-04-14 22:52:39,812 INFO L87 Difference]: Start difference. First operand 47 states and 55 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-14 22:52:41,909 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 22:52:41,909 INFO L93 Difference]: Finished difference Result 71 states and 84 transitions. [2022-04-14 22:52:41,909 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-04-14 22:52:41,910 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-14 22:52:41,910 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 22:52:41,910 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-14 22:52:41,912 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 61 transitions. [2022-04-14 22:52:41,912 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-14 22:52:41,913 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 61 transitions. [2022-04-14 22:52:41,913 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 17 states and 61 transitions. [2022-04-14 22:52:41,989 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-14 22:52:41,990 INFO L225 Difference]: With dead ends: 71 [2022-04-14 22:52:41,990 INFO L226 Difference]: Without dead ends: 71 [2022-04-14 22:52:41,990 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 80 GetRequests, 54 SyntacticMatches, 2 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 102 ImplicationChecksByTransitivity, 0.8s TimeCoverageRelationStatistics Valid=122, Invalid=528, Unknown=0, NotChecked=0, Total=650 [2022-04-14 22:52:41,991 INFO L913 BasicCegarLoop]: 19 mSDtfsCounter, 42 mSDsluCounter, 130 mSDsCounter, 0 mSdLazyCounter, 305 mSolverCounterSat, 33 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 44 SdHoareTripleChecker+Valid, 149 SdHoareTripleChecker+Invalid, 338 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 33 IncrementalHoareTripleChecker+Valid, 305 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-04-14 22:52:41,991 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [44 Valid, 149 Invalid, 338 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [33 Valid, 305 Invalid, 0 Unknown, 0 Unchecked, 0.8s Time] [2022-04-14 22:52:41,991 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 71 states. [2022-04-14 22:52:41,995 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 71 to 71. [2022-04-14 22:52:41,995 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 22:52:41,995 INFO L82 GeneralOperation]: Start isEquivalent. First operand 71 states. Second operand has 71 states, 49 states have (on average 1.183673469387755) internal successors, (58), 53 states have internal predecessors, (58), 14 states have call successors, (14), 8 states have call predecessors, (14), 7 states have return successors, (12), 9 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-14 22:52:41,996 INFO L74 IsIncluded]: Start isIncluded. First operand 71 states. Second operand has 71 states, 49 states have (on average 1.183673469387755) internal successors, (58), 53 states have internal predecessors, (58), 14 states have call successors, (14), 8 states have call predecessors, (14), 7 states have return successors, (12), 9 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-14 22:52:41,996 INFO L87 Difference]: Start difference. First operand 71 states. Second operand has 71 states, 49 states have (on average 1.183673469387755) internal successors, (58), 53 states have internal predecessors, (58), 14 states have call successors, (14), 8 states have call predecessors, (14), 7 states have return successors, (12), 9 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-14 22:52:41,998 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 22:52:41,998 INFO L93 Difference]: Finished difference Result 71 states and 84 transitions. [2022-04-14 22:52:41,998 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 84 transitions. [2022-04-14 22:52:41,999 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 22:52:41,999 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 22:52:41,999 INFO L74 IsIncluded]: Start isIncluded. First operand has 71 states, 49 states have (on average 1.183673469387755) internal successors, (58), 53 states have internal predecessors, (58), 14 states have call successors, (14), 8 states have call predecessors, (14), 7 states have return successors, (12), 9 states have call predecessors, (12), 12 states have call successors, (12) Second operand 71 states. [2022-04-14 22:52:41,999 INFO L87 Difference]: Start difference. First operand has 71 states, 49 states have (on average 1.183673469387755) internal successors, (58), 53 states have internal predecessors, (58), 14 states have call successors, (14), 8 states have call predecessors, (14), 7 states have return successors, (12), 9 states have call predecessors, (12), 12 states have call successors, (12) Second operand 71 states. [2022-04-14 22:52:42,001 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 22:52:42,001 INFO L93 Difference]: Finished difference Result 71 states and 84 transitions. [2022-04-14 22:52:42,002 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 84 transitions. [2022-04-14 22:52:42,002 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 22:52:42,002 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 22:52:42,002 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 22:52:42,002 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 22:52:42,002 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 71 states, 49 states have (on average 1.183673469387755) internal successors, (58), 53 states have internal predecessors, (58), 14 states have call successors, (14), 8 states have call predecessors, (14), 7 states have return successors, (12), 9 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-14 22:52:42,010 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 71 states to 71 states and 84 transitions. [2022-04-14 22:52:42,010 INFO L78 Accepts]: Start accepts. Automaton has 71 states and 84 transitions. Word has length 37 [2022-04-14 22:52:42,010 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 22:52:42,010 INFO L478 AbstractCegarLoop]: Abstraction has 71 states and 84 transitions. [2022-04-14 22:52:42,011 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-14 22:52:42,011 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 84 transitions. [2022-04-14 22:52:42,013 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-14 22:52:42,013 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 22:52:42,013 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-14 22:52:42,031 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-14 22:52:42,227 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 22:52:42,227 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 22:52:42,228 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 22:52:42,228 INFO L85 PathProgramCache]: Analyzing trace with hash -266261558, now seen corresponding path program 1 times [2022-04-14 22:52:42,228 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 22:52:42,228 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [535007890] [2022-04-14 22:52:42,228 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 22:52:42,228 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 22:52:42,239 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 22:52:42,239 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [212619588] [2022-04-14 22:52:42,239 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 22:52:42,240 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 22:52:42,240 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 22:52:42,241 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 22:52:42,244 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-14 22:52:42,277 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 22:52:42,278 INFO L263 TraceCheckSpWp]: Trace formula consists of 122 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-14 22:52:42,285 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 22:52:42,285 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 22:52:50,855 INFO L272 TraceCheckUtils]: 0: Hoare triple {1633#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1633#true} is VALID [2022-04-14 22:52:50,855 INFO L290 TraceCheckUtils]: 1: Hoare triple {1633#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] {1633#true} is VALID [2022-04-14 22:52:50,856 INFO L290 TraceCheckUtils]: 2: Hoare triple {1633#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1633#true} is VALID [2022-04-14 22:52:50,856 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1633#true} {1633#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1633#true} is VALID [2022-04-14 22:52:50,856 INFO L272 TraceCheckUtils]: 4: Hoare triple {1633#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1633#true} is VALID [2022-04-14 22:52:50,856 INFO L290 TraceCheckUtils]: 5: Hoare triple {1633#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] {1633#true} is VALID [2022-04-14 22:52:50,856 INFO L272 TraceCheckUtils]: 6: Hoare triple {1633#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] {1633#true} is VALID [2022-04-14 22:52:50,856 INFO L290 TraceCheckUtils]: 7: Hoare triple {1633#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] {1633#true} is VALID [2022-04-14 22:52:50,856 INFO L290 TraceCheckUtils]: 8: Hoare triple {1633#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[] {1633#true} is VALID [2022-04-14 22:52:50,856 INFO L290 TraceCheckUtils]: 9: Hoare triple {1633#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1633#true} is VALID [2022-04-14 22:52:50,856 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1633#true} {1633#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] {1633#true} is VALID [2022-04-14 22:52:50,856 INFO L290 TraceCheckUtils]: 11: Hoare triple {1633#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] {1633#true} is VALID [2022-04-14 22:52:50,857 INFO L272 TraceCheckUtils]: 12: Hoare triple {1633#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] {1633#true} is VALID [2022-04-14 22:52:50,857 INFO L290 TraceCheckUtils]: 13: Hoare triple {1633#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] {1633#true} is VALID [2022-04-14 22:52:50,857 INFO L290 TraceCheckUtils]: 14: Hoare triple {1633#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[] {1633#true} is VALID [2022-04-14 22:52:50,857 INFO L290 TraceCheckUtils]: 15: Hoare triple {1633#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1633#true} is VALID [2022-04-14 22:52:50,857 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1633#true} {1633#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] {1633#true} is VALID [2022-04-14 22:52:50,857 INFO L272 TraceCheckUtils]: 17: Hoare triple {1633#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] {1633#true} is VALID [2022-04-14 22:52:50,857 INFO L290 TraceCheckUtils]: 18: Hoare triple {1633#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] {1633#true} is VALID [2022-04-14 22:52:50,857 INFO L290 TraceCheckUtils]: 19: Hoare triple {1633#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[] {1633#true} is VALID [2022-04-14 22:52:50,857 INFO L290 TraceCheckUtils]: 20: Hoare triple {1633#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1633#true} is VALID [2022-04-14 22:52:50,857 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1633#true} {1633#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] {1633#true} is VALID [2022-04-14 22:52:50,857 INFO L290 TraceCheckUtils]: 22: Hoare triple {1633#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] {1633#true} is VALID [2022-04-14 22:52:50,857 INFO L290 TraceCheckUtils]: 23: Hoare triple {1633#true} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1633#true} is VALID [2022-04-14 22:52:50,858 INFO L272 TraceCheckUtils]: 24: Hoare triple {1633#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] {1633#true} is VALID [2022-04-14 22:52:50,858 INFO L290 TraceCheckUtils]: 25: Hoare triple {1633#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] {1633#true} is VALID [2022-04-14 22:52:50,858 INFO L290 TraceCheckUtils]: 26: Hoare triple {1633#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[] {1633#true} is VALID [2022-04-14 22:52:50,858 INFO L290 TraceCheckUtils]: 27: Hoare triple {1633#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1633#true} is VALID [2022-04-14 22:52:50,858 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1633#true} {1633#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] {1633#true} is VALID [2022-04-14 22:52:50,858 INFO L290 TraceCheckUtils]: 29: Hoare triple {1633#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[] {1633#true} is VALID [2022-04-14 22:52:50,858 INFO L290 TraceCheckUtils]: 30: Hoare triple {1633#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] {1633#true} is VALID [2022-04-14 22:52:50,858 INFO L290 TraceCheckUtils]: 31: Hoare triple {1633#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] {1633#true} is VALID [2022-04-14 22:52:50,858 INFO L290 TraceCheckUtils]: 32: Hoare triple {1633#true} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1633#true} is VALID [2022-04-14 22:52:50,858 INFO L272 TraceCheckUtils]: 33: Hoare triple {1633#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] {1633#true} is VALID [2022-04-14 22:52:50,859 INFO L290 TraceCheckUtils]: 34: Hoare triple {1633#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] {1740#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-14 22:52:50,859 INFO L290 TraceCheckUtils]: 35: Hoare triple {1740#(= |__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[] {1744#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 22:52:50,859 INFO L290 TraceCheckUtils]: 36: Hoare triple {1744#(not (= |__VERIFIER_assert_#in~cond| 0))} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1744#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 22:52:52,862 WARN L284 TraceCheckUtils]: 37: Hoare quadruple {1744#(not (= |__VERIFIER_assert_#in~cond| 0))} {1633#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] {1751#(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-14 22:52:52,863 INFO L290 TraceCheckUtils]: 38: Hoare triple {1751#(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[] {1755#(= main_~z~0 (* main_~b~0 main_~a~0))} is VALID [2022-04-14 22:52:52,863 INFO L272 TraceCheckUtils]: 39: Hoare triple {1755#(= 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] {1759#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 22:52:52,864 INFO L290 TraceCheckUtils]: 40: Hoare triple {1759#(<= 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] {1763#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 22:52:52,864 INFO L290 TraceCheckUtils]: 41: Hoare triple {1763#(<= 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[] {1634#false} is VALID [2022-04-14 22:52:52,864 INFO L290 TraceCheckUtils]: 42: Hoare triple {1634#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1634#false} is VALID [2022-04-14 22:52:52,864 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-14 22:52:52,864 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 22:52:57,810 INFO L290 TraceCheckUtils]: 42: Hoare triple {1634#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1634#false} is VALID [2022-04-14 22:52:57,810 INFO L290 TraceCheckUtils]: 41: Hoare triple {1763#(<= 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[] {1634#false} is VALID [2022-04-14 22:52:57,811 INFO L290 TraceCheckUtils]: 40: Hoare triple {1759#(<= 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] {1763#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 22:52:57,811 INFO L272 TraceCheckUtils]: 39: Hoare triple {1755#(= 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] {1759#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 22:52:57,812 INFO L290 TraceCheckUtils]: 38: Hoare triple {1782#(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[] {1755#(= main_~z~0 (* main_~b~0 main_~a~0))} is VALID [2022-04-14 22:52:57,812 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {1744#(not (= |__VERIFIER_assert_#in~cond| 0))} {1633#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] {1782#(or (not (= main_~y~0 0)) (= main_~z~0 (* main_~b~0 main_~a~0)))} is VALID [2022-04-14 22:52:57,813 INFO L290 TraceCheckUtils]: 36: Hoare triple {1744#(not (= |__VERIFIER_assert_#in~cond| 0))} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1744#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 22:52:57,813 INFO L290 TraceCheckUtils]: 35: Hoare triple {1795#(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[] {1744#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 22:52:57,813 INFO L290 TraceCheckUtils]: 34: Hoare triple {1633#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] {1795#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-14 22:52:57,814 INFO L272 TraceCheckUtils]: 33: Hoare triple {1633#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] {1633#true} is VALID [2022-04-14 22:52:57,814 INFO L290 TraceCheckUtils]: 32: Hoare triple {1633#true} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1633#true} is VALID [2022-04-14 22:52:57,814 INFO L290 TraceCheckUtils]: 31: Hoare triple {1633#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] {1633#true} is VALID [2022-04-14 22:52:57,814 INFO L290 TraceCheckUtils]: 30: Hoare triple {1633#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] {1633#true} is VALID [2022-04-14 22:52:57,814 INFO L290 TraceCheckUtils]: 29: Hoare triple {1633#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[] {1633#true} is VALID [2022-04-14 22:52:57,814 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1633#true} {1633#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] {1633#true} is VALID [2022-04-14 22:52:57,814 INFO L290 TraceCheckUtils]: 27: Hoare triple {1633#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1633#true} is VALID [2022-04-14 22:52:57,814 INFO L290 TraceCheckUtils]: 26: Hoare triple {1633#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[] {1633#true} is VALID [2022-04-14 22:52:57,814 INFO L290 TraceCheckUtils]: 25: Hoare triple {1633#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] {1633#true} is VALID [2022-04-14 22:52:57,814 INFO L272 TraceCheckUtils]: 24: Hoare triple {1633#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] {1633#true} is VALID [2022-04-14 22:52:57,814 INFO L290 TraceCheckUtils]: 23: Hoare triple {1633#true} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1633#true} is VALID [2022-04-14 22:52:57,815 INFO L290 TraceCheckUtils]: 22: Hoare triple {1633#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] {1633#true} is VALID [2022-04-14 22:52:57,815 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1633#true} {1633#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] {1633#true} is VALID [2022-04-14 22:52:57,815 INFO L290 TraceCheckUtils]: 20: Hoare triple {1633#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1633#true} is VALID [2022-04-14 22:52:57,815 INFO L290 TraceCheckUtils]: 19: Hoare triple {1633#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[] {1633#true} is VALID [2022-04-14 22:52:57,815 INFO L290 TraceCheckUtils]: 18: Hoare triple {1633#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] {1633#true} is VALID [2022-04-14 22:52:57,815 INFO L272 TraceCheckUtils]: 17: Hoare triple {1633#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] {1633#true} is VALID [2022-04-14 22:52:57,815 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1633#true} {1633#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] {1633#true} is VALID [2022-04-14 22:52:57,815 INFO L290 TraceCheckUtils]: 15: Hoare triple {1633#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1633#true} is VALID [2022-04-14 22:52:57,815 INFO L290 TraceCheckUtils]: 14: Hoare triple {1633#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[] {1633#true} is VALID [2022-04-14 22:52:57,815 INFO L290 TraceCheckUtils]: 13: Hoare triple {1633#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] {1633#true} is VALID [2022-04-14 22:52:57,815 INFO L272 TraceCheckUtils]: 12: Hoare triple {1633#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] {1633#true} is VALID [2022-04-14 22:52:57,816 INFO L290 TraceCheckUtils]: 11: Hoare triple {1633#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] {1633#true} is VALID [2022-04-14 22:52:57,816 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1633#true} {1633#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] {1633#true} is VALID [2022-04-14 22:52:57,816 INFO L290 TraceCheckUtils]: 9: Hoare triple {1633#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1633#true} is VALID [2022-04-14 22:52:57,816 INFO L290 TraceCheckUtils]: 8: Hoare triple {1633#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[] {1633#true} is VALID [2022-04-14 22:52:57,816 INFO L290 TraceCheckUtils]: 7: Hoare triple {1633#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] {1633#true} is VALID [2022-04-14 22:52:57,816 INFO L272 TraceCheckUtils]: 6: Hoare triple {1633#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] {1633#true} is VALID [2022-04-14 22:52:57,816 INFO L290 TraceCheckUtils]: 5: Hoare triple {1633#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] {1633#true} is VALID [2022-04-14 22:52:57,816 INFO L272 TraceCheckUtils]: 4: Hoare triple {1633#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1633#true} is VALID [2022-04-14 22:52:57,816 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1633#true} {1633#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1633#true} is VALID [2022-04-14 22:52:57,816 INFO L290 TraceCheckUtils]: 2: Hoare triple {1633#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1633#true} is VALID [2022-04-14 22:52:57,816 INFO L290 TraceCheckUtils]: 1: Hoare triple {1633#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] {1633#true} is VALID [2022-04-14 22:52:57,817 INFO L272 TraceCheckUtils]: 0: Hoare triple {1633#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1633#true} is VALID [2022-04-14 22:52:57,817 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-14 22:52:57,817 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 22:52:57,817 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [535007890] [2022-04-14 22:52:57,817 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 22:52:57,817 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [212619588] [2022-04-14 22:52:57,817 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [212619588] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-14 22:52:57,817 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-14 22:52:57,817 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-14 22:52:57,817 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1608076331] [2022-04-14 22:52:57,817 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-14 22:52:57,818 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-14 22:52:57,818 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 22:52:57,822 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-14 22:52:59,848 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-14 22:52:59,848 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-14 22:52:59,848 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 22:52:59,849 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-14 22:52:59,849 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=66, Unknown=0, NotChecked=0, Total=90 [2022-04-14 22:52:59,849 INFO L87 Difference]: Start difference. First operand 71 states and 84 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-14 22:53:01,904 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-14 22:53:02,210 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 22:53:02,210 INFO L93 Difference]: Finished difference Result 75 states and 87 transitions. [2022-04-14 22:53:02,210 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-14 22:53:02,210 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-14 22:53:02,210 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 22:53:02,211 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-14 22:53:02,211 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 39 transitions. [2022-04-14 22:53:02,212 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-14 22:53:02,212 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 39 transitions. [2022-04-14 22:53:02,212 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 39 transitions. [2022-04-14 22:53:06,241 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-14 22:53:06,242 INFO L225 Difference]: With dead ends: 75 [2022-04-14 22:53:06,242 INFO L226 Difference]: Without dead ends: 70 [2022-04-14 22:53:06,242 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-14 22:53:06,243 INFO L913 BasicCegarLoop]: 25 mSDtfsCounter, 20 mSDsluCounter, 96 mSDsCounter, 0 mSdLazyCounter, 77 mSolverCounterSat, 3 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 20 SdHoareTripleChecker+Valid, 121 SdHoareTripleChecker+Invalid, 81 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 77 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.2s IncrementalHoareTripleChecker+Time [2022-04-14 22:53:06,243 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [20 Valid, 121 Invalid, 81 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 77 Invalid, 1 Unknown, 0 Unchecked, 2.2s Time] [2022-04-14 22:53:06,243 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 70 states. [2022-04-14 22:53:06,246 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 70 to 70. [2022-04-14 22:53:06,247 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 22:53:06,247 INFO L82 GeneralOperation]: Start isEquivalent. First operand 70 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-14 22:53:06,247 INFO L74 IsIncluded]: Start isIncluded. First operand 70 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-14 22:53:06,247 INFO L87 Difference]: Start difference. First operand 70 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-14 22:53:06,249 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 22:53:06,249 INFO L93 Difference]: Finished difference Result 70 states and 80 transitions. [2022-04-14 22:53:06,249 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 80 transitions. [2022-04-14 22:53:06,250 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 22:53:06,250 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 22:53:06,250 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 70 states. [2022-04-14 22:53:06,250 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 70 states. [2022-04-14 22:53:06,252 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 22:53:06,252 INFO L93 Difference]: Finished difference Result 70 states and 80 transitions. [2022-04-14 22:53:06,252 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 80 transitions. [2022-04-14 22:53:06,252 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 22:53:06,252 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 22:53:06,253 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 22:53:06,253 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 22:53:06,253 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-14 22:53:06,254 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 70 states to 70 states and 80 transitions. [2022-04-14 22:53:06,254 INFO L78 Accepts]: Start accepts. Automaton has 70 states and 80 transitions. Word has length 43 [2022-04-14 22:53:06,254 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 22:53:06,255 INFO L478 AbstractCegarLoop]: Abstraction has 70 states and 80 transitions. [2022-04-14 22:53:06,255 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-14 22:53:06,255 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 80 transitions. [2022-04-14 22:53:06,255 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-14 22:53:06,255 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 22:53:06,255 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-14 22:53:06,278 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-14 22:53:06,476 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 22:53:06,477 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 22:53:06,477 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 22:53:06,477 INFO L85 PathProgramCache]: Analyzing trace with hash -172555565, now seen corresponding path program 1 times [2022-04-14 22:53:06,477 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 22:53:06,477 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1475472950] [2022-04-14 22:53:06,477 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 22:53:06,478 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 22:53:06,498 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 22:53:06,498 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1082538416] [2022-04-14 22:53:06,498 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 22:53:06,498 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 22:53:06,499 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 22:53:06,502 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 22:53:06,502 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-14 22:53:06,541 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 22:53:06,542 INFO L263 TraceCheckSpWp]: Trace formula consists of 148 conjuncts, 18 conjunts are in the unsatisfiable core [2022-04-14 22:53:06,558 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 22:53:06,560 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 22:53:07,638 INFO L272 TraceCheckUtils]: 0: Hoare triple {2189#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2189#true} is VALID [2022-04-14 22:53:07,638 INFO L290 TraceCheckUtils]: 1: Hoare triple {2189#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] {2189#true} is VALID [2022-04-14 22:53:07,638 INFO L290 TraceCheckUtils]: 2: Hoare triple {2189#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2189#true} is VALID [2022-04-14 22:53:07,638 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2189#true} {2189#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2189#true} is VALID [2022-04-14 22:53:07,638 INFO L272 TraceCheckUtils]: 4: Hoare triple {2189#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2189#true} is VALID [2022-04-14 22:53:07,639 INFO L290 TraceCheckUtils]: 5: Hoare triple {2189#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] {2189#true} is VALID [2022-04-14 22:53:07,639 INFO L272 TraceCheckUtils]: 6: Hoare triple {2189#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] {2189#true} is VALID [2022-04-14 22:53:07,639 INFO L290 TraceCheckUtils]: 7: Hoare triple {2189#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] {2189#true} is VALID [2022-04-14 22:53:07,639 INFO L290 TraceCheckUtils]: 8: Hoare triple {2189#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[] {2189#true} is VALID [2022-04-14 22:53:07,639 INFO L290 TraceCheckUtils]: 9: Hoare triple {2189#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2189#true} is VALID [2022-04-14 22:53:07,639 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2189#true} {2189#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] {2189#true} is VALID [2022-04-14 22:53:07,639 INFO L290 TraceCheckUtils]: 11: Hoare triple {2189#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] {2189#true} is VALID [2022-04-14 22:53:07,639 INFO L272 TraceCheckUtils]: 12: Hoare triple {2189#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] {2189#true} is VALID [2022-04-14 22:53:07,640 INFO L290 TraceCheckUtils]: 13: Hoare triple {2189#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] {2233#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-14 22:53:07,640 INFO L290 TraceCheckUtils]: 14: Hoare triple {2233#(= 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[] {2237#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 22:53:07,640 INFO L290 TraceCheckUtils]: 15: Hoare triple {2237#(not (= |assume_abort_if_not_#in~cond| 0))} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2237#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 22:53:07,641 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2237#(not (= |assume_abort_if_not_#in~cond| 0))} {2189#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] {2244#(and (<= main_~b~0 5) (<= 0 main_~b~0))} is VALID [2022-04-14 22:53:07,641 INFO L272 TraceCheckUtils]: 17: Hoare triple {2244#(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] {2189#true} is VALID [2022-04-14 22:53:07,641 INFO L290 TraceCheckUtils]: 18: Hoare triple {2189#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] {2189#true} is VALID [2022-04-14 22:53:07,641 INFO L290 TraceCheckUtils]: 19: Hoare triple {2189#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[] {2189#true} is VALID [2022-04-14 22:53:07,641 INFO L290 TraceCheckUtils]: 20: Hoare triple {2189#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2189#true} is VALID [2022-04-14 22:53:07,641 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2189#true} {2244#(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] {2244#(and (<= main_~b~0 5) (<= 0 main_~b~0))} is VALID [2022-04-14 22:53:07,642 INFO L290 TraceCheckUtils]: 22: Hoare triple {2244#(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] {2263#(<= main_~y~0 5)} is VALID [2022-04-14 22:53:07,642 INFO L290 TraceCheckUtils]: 23: Hoare triple {2263#(<= main_~y~0 5)} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2263#(<= main_~y~0 5)} is VALID [2022-04-14 22:53:07,642 INFO L272 TraceCheckUtils]: 24: Hoare triple {2263#(<= 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] {2189#true} is VALID [2022-04-14 22:53:07,642 INFO L290 TraceCheckUtils]: 25: Hoare triple {2189#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] {2189#true} is VALID [2022-04-14 22:53:07,642 INFO L290 TraceCheckUtils]: 26: Hoare triple {2189#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[] {2189#true} is VALID [2022-04-14 22:53:07,642 INFO L290 TraceCheckUtils]: 27: Hoare triple {2189#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2189#true} is VALID [2022-04-14 22:53:07,643 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2189#true} {2263#(<= 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] {2263#(<= main_~y~0 5)} is VALID [2022-04-14 22:53:07,643 INFO L290 TraceCheckUtils]: 29: Hoare triple {2263#(<= 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[] {2285#(and (not (= main_~y~0 0)) (<= main_~y~0 5))} is VALID [2022-04-14 22:53:07,644 INFO L290 TraceCheckUtils]: 30: Hoare triple {2285#(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] {2289#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= main_~y~0 4) (<= 0 (+ main_~y~0 1)))} is VALID [2022-04-14 22:53:07,647 INFO L290 TraceCheckUtils]: 31: Hoare triple {2289#(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] {2293#(exists ((aux_mod_v_main_~y~0_26_28 Int) (aux_div_v_main_~y~0_26_28 Int)) (and (<= 0 (+ (* aux_div_v_main_~y~0_26_28 2) aux_mod_v_main_~y~0_26_28)) (<= 1 aux_mod_v_main_~y~0_26_28) (<= main_~y~0 (div (+ (- 1) (* aux_div_v_main_~y~0_26_28 2) aux_mod_v_main_~y~0_26_28) 2)) (<= (+ (* aux_div_v_main_~y~0_26_28 2) aux_mod_v_main_~y~0_26_28) 5) (< aux_mod_v_main_~y~0_26_28 2)))} is VALID [2022-04-14 22:53:07,648 INFO L290 TraceCheckUtils]: 32: Hoare triple {2293#(exists ((aux_mod_v_main_~y~0_26_28 Int) (aux_div_v_main_~y~0_26_28 Int)) (and (<= 0 (+ (* aux_div_v_main_~y~0_26_28 2) aux_mod_v_main_~y~0_26_28)) (<= 1 aux_mod_v_main_~y~0_26_28) (<= main_~y~0 (div (+ (- 1) (* aux_div_v_main_~y~0_26_28 2) aux_mod_v_main_~y~0_26_28) 2)) (<= (+ (* aux_div_v_main_~y~0_26_28 2) aux_mod_v_main_~y~0_26_28) 5) (< aux_mod_v_main_~y~0_26_28 2)))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2297#(<= main_~y~0 2)} is VALID [2022-04-14 22:53:07,648 INFO L272 TraceCheckUtils]: 33: Hoare triple {2297#(<= 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] {2189#true} is VALID [2022-04-14 22:53:07,648 INFO L290 TraceCheckUtils]: 34: Hoare triple {2189#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] {2189#true} is VALID [2022-04-14 22:53:07,648 INFO L290 TraceCheckUtils]: 35: Hoare triple {2189#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[] {2189#true} is VALID [2022-04-14 22:53:07,648 INFO L290 TraceCheckUtils]: 36: Hoare triple {2189#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2189#true} is VALID [2022-04-14 22:53:07,649 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2189#true} {2297#(<= 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] {2297#(<= main_~y~0 2)} is VALID [2022-04-14 22:53:07,649 INFO L290 TraceCheckUtils]: 38: Hoare triple {2297#(<= 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[] {2316#(and (not (= main_~y~0 0)) (<= main_~y~0 2))} is VALID [2022-04-14 22:53:07,650 INFO L290 TraceCheckUtils]: 39: Hoare triple {2316#(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] {2320#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} is VALID [2022-04-14 22:53:07,651 INFO L290 TraceCheckUtils]: 40: Hoare triple {2320#(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] {2320#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} is VALID [2022-04-14 22:53:07,652 INFO L290 TraceCheckUtils]: 41: Hoare triple {2320#(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[] {2320#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} is VALID [2022-04-14 22:53:07,652 INFO L272 TraceCheckUtils]: 42: Hoare triple {2320#(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] {2189#true} is VALID [2022-04-14 22:53:07,652 INFO L290 TraceCheckUtils]: 43: Hoare triple {2189#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] {2189#true} is VALID [2022-04-14 22:53:07,652 INFO L290 TraceCheckUtils]: 44: Hoare triple {2189#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[] {2189#true} is VALID [2022-04-14 22:53:07,652 INFO L290 TraceCheckUtils]: 45: Hoare triple {2189#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2189#true} is VALID [2022-04-14 22:53:07,653 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {2189#true} {2320#(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] {2320#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} is VALID [2022-04-14 22:53:07,653 INFO L290 TraceCheckUtils]: 47: Hoare triple {2320#(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[] {2190#false} is VALID [2022-04-14 22:53:07,653 INFO L290 TraceCheckUtils]: 48: Hoare triple {2190#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[] {2190#false} is VALID [2022-04-14 22:53:07,653 INFO L290 TraceCheckUtils]: 49: Hoare triple {2190#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] {2190#false} is VALID [2022-04-14 22:53:07,653 INFO L290 TraceCheckUtils]: 50: Hoare triple {2190#false} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2190#false} is VALID [2022-04-14 22:53:07,654 INFO L272 TraceCheckUtils]: 51: Hoare triple {2190#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] {2190#false} is VALID [2022-04-14 22:53:07,654 INFO L290 TraceCheckUtils]: 52: Hoare triple {2190#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] {2190#false} is VALID [2022-04-14 22:53:07,654 INFO L290 TraceCheckUtils]: 53: Hoare triple {2190#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[] {2190#false} is VALID [2022-04-14 22:53:07,654 INFO L290 TraceCheckUtils]: 54: Hoare triple {2190#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2190#false} is VALID [2022-04-14 22:53:07,654 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-14 22:53:07,654 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 22:53:08,828 INFO L290 TraceCheckUtils]: 54: Hoare triple {2190#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2190#false} is VALID [2022-04-14 22:53:08,829 INFO L290 TraceCheckUtils]: 53: Hoare triple {2190#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[] {2190#false} is VALID [2022-04-14 22:53:08,829 INFO L290 TraceCheckUtils]: 52: Hoare triple {2190#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] {2190#false} is VALID [2022-04-14 22:53:08,829 INFO L272 TraceCheckUtils]: 51: Hoare triple {2190#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] {2190#false} is VALID [2022-04-14 22:53:08,829 INFO L290 TraceCheckUtils]: 50: Hoare triple {2190#false} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2190#false} is VALID [2022-04-14 22:53:08,829 INFO L290 TraceCheckUtils]: 49: Hoare triple {2190#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] {2190#false} is VALID [2022-04-14 22:53:08,829 INFO L290 TraceCheckUtils]: 48: Hoare triple {2190#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[] {2190#false} is VALID [2022-04-14 22:53:08,830 INFO L290 TraceCheckUtils]: 47: Hoare triple {2320#(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[] {2190#false} is VALID [2022-04-14 22:53:08,830 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {2189#true} {2320#(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] {2320#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} is VALID [2022-04-14 22:53:08,830 INFO L290 TraceCheckUtils]: 45: Hoare triple {2189#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2189#true} is VALID [2022-04-14 22:53:08,830 INFO L290 TraceCheckUtils]: 44: Hoare triple {2189#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[] {2189#true} is VALID [2022-04-14 22:53:08,831 INFO L290 TraceCheckUtils]: 43: Hoare triple {2189#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] {2189#true} is VALID [2022-04-14 22:53:08,831 INFO L272 TraceCheckUtils]: 42: Hoare triple {2320#(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] {2189#true} is VALID [2022-04-14 22:53:08,831 INFO L290 TraceCheckUtils]: 41: Hoare triple {2320#(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[] {2320#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} is VALID [2022-04-14 22:53:08,832 INFO L290 TraceCheckUtils]: 40: Hoare triple {2408#(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] {2320#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= 0 (+ main_~y~0 1)) (<= main_~y~0 1))} is VALID [2022-04-14 22:53:08,834 INFO L290 TraceCheckUtils]: 39: Hoare triple {2412#(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] {2408#(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-14 22:53:08,834 INFO L290 TraceCheckUtils]: 38: Hoare triple {2412#(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[] {2412#(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-14 22:53:08,835 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2189#true} {2412#(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] {2412#(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-14 22:53:08,835 INFO L290 TraceCheckUtils]: 36: Hoare triple {2189#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2189#true} is VALID [2022-04-14 22:53:08,835 INFO L290 TraceCheckUtils]: 35: Hoare triple {2189#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[] {2189#true} is VALID [2022-04-14 22:53:08,835 INFO L290 TraceCheckUtils]: 34: Hoare triple {2189#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] {2189#true} is VALID [2022-04-14 22:53:08,835 INFO L272 TraceCheckUtils]: 33: Hoare triple {2412#(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] {2189#true} is VALID [2022-04-14 22:53:08,839 INFO L290 TraceCheckUtils]: 32: Hoare triple {2412#(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[] {2412#(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-14 22:53:08,841 INFO L290 TraceCheckUtils]: 31: Hoare triple {2263#(<= 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] {2412#(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-14 22:53:08,841 INFO L290 TraceCheckUtils]: 30: Hoare triple {2440#(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] {2263#(<= main_~y~0 5)} is VALID [2022-04-14 22:53:08,842 INFO L290 TraceCheckUtils]: 29: Hoare triple {2440#(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[] {2440#(or (<= main_~y~0 6) (< (mod main_~y~0 2) 1))} is VALID [2022-04-14 22:53:08,842 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2189#true} {2440#(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] {2440#(or (<= main_~y~0 6) (< (mod main_~y~0 2) 1))} is VALID [2022-04-14 22:53:08,842 INFO L290 TraceCheckUtils]: 27: Hoare triple {2189#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2189#true} is VALID [2022-04-14 22:53:08,842 INFO L290 TraceCheckUtils]: 26: Hoare triple {2189#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[] {2189#true} is VALID [2022-04-14 22:53:08,843 INFO L290 TraceCheckUtils]: 25: Hoare triple {2189#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] {2189#true} is VALID [2022-04-14 22:53:08,843 INFO L272 TraceCheckUtils]: 24: Hoare triple {2440#(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] {2189#true} is VALID [2022-04-14 22:53:08,843 INFO L290 TraceCheckUtils]: 23: Hoare triple {2440#(or (<= main_~y~0 6) (< (mod main_~y~0 2) 1))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2440#(or (<= main_~y~0 6) (< (mod main_~y~0 2) 1))} is VALID [2022-04-14 22:53:08,844 INFO L290 TraceCheckUtils]: 22: Hoare triple {2465#(<= (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] {2440#(or (<= main_~y~0 6) (< (mod main_~y~0 2) 1))} is VALID [2022-04-14 22:53:08,844 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2189#true} {2465#(<= (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] {2465#(<= (div (* (- 1) main_~b~0) (- 2)) 3)} is VALID [2022-04-14 22:53:08,844 INFO L290 TraceCheckUtils]: 20: Hoare triple {2189#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2189#true} is VALID [2022-04-14 22:53:08,844 INFO L290 TraceCheckUtils]: 19: Hoare triple {2189#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[] {2189#true} is VALID [2022-04-14 22:53:08,844 INFO L290 TraceCheckUtils]: 18: Hoare triple {2189#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] {2189#true} is VALID [2022-04-14 22:53:08,844 INFO L272 TraceCheckUtils]: 17: Hoare triple {2465#(<= (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] {2189#true} is VALID [2022-04-14 22:53:08,845 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2237#(not (= |assume_abort_if_not_#in~cond| 0))} {2189#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] {2465#(<= (div (* (- 1) main_~b~0) (- 2)) 3)} is VALID [2022-04-14 22:53:08,845 INFO L290 TraceCheckUtils]: 15: Hoare triple {2237#(not (= |assume_abort_if_not_#in~cond| 0))} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2237#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 22:53:08,846 INFO L290 TraceCheckUtils]: 14: Hoare triple {2493#(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[] {2237#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 22:53:08,846 INFO L290 TraceCheckUtils]: 13: Hoare triple {2189#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] {2493#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-14 22:53:08,846 INFO L272 TraceCheckUtils]: 12: Hoare triple {2189#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] {2189#true} is VALID [2022-04-14 22:53:08,846 INFO L290 TraceCheckUtils]: 11: Hoare triple {2189#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] {2189#true} is VALID [2022-04-14 22:53:08,846 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2189#true} {2189#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] {2189#true} is VALID [2022-04-14 22:53:08,847 INFO L290 TraceCheckUtils]: 9: Hoare triple {2189#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2189#true} is VALID [2022-04-14 22:53:08,847 INFO L290 TraceCheckUtils]: 8: Hoare triple {2189#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[] {2189#true} is VALID [2022-04-14 22:53:08,847 INFO L290 TraceCheckUtils]: 7: Hoare triple {2189#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] {2189#true} is VALID [2022-04-14 22:53:08,847 INFO L272 TraceCheckUtils]: 6: Hoare triple {2189#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] {2189#true} is VALID [2022-04-14 22:53:08,847 INFO L290 TraceCheckUtils]: 5: Hoare triple {2189#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] {2189#true} is VALID [2022-04-14 22:53:08,847 INFO L272 TraceCheckUtils]: 4: Hoare triple {2189#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2189#true} is VALID [2022-04-14 22:53:08,847 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2189#true} {2189#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2189#true} is VALID [2022-04-14 22:53:08,847 INFO L290 TraceCheckUtils]: 2: Hoare triple {2189#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2189#true} is VALID [2022-04-14 22:53:08,847 INFO L290 TraceCheckUtils]: 1: Hoare triple {2189#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] {2189#true} is VALID [2022-04-14 22:53:08,847 INFO L272 TraceCheckUtils]: 0: Hoare triple {2189#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2189#true} is VALID [2022-04-14 22:53:08,847 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-14 22:53:08,848 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 22:53:08,848 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1475472950] [2022-04-14 22:53:08,848 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 22:53:08,848 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1082538416] [2022-04-14 22:53:08,848 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1082538416] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-14 22:53:08,848 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-14 22:53:08,848 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 10] total 17 [2022-04-14 22:53:08,848 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1896944526] [2022-04-14 22:53:08,848 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-14 22:53:08,849 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-14 22:53:08,849 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 22:53:08,849 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-14 22:53:08,900 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-14 22:53:08,901 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-04-14 22:53:08,901 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 22:53:08,901 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-04-14 22:53:08,901 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=67, Invalid=205, Unknown=0, NotChecked=0, Total=272 [2022-04-14 22:53:08,901 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-14 22:53:09,291 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 22:53:09,291 INFO L93 Difference]: Finished difference Result 71 states and 80 transitions. [2022-04-14 22:53:09,291 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-14 22:53:09,291 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-14 22:53:09,291 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 22:53:09,292 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-14 22:53:09,293 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 42 transitions. [2022-04-14 22:53:09,293 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-14 22:53:09,293 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 42 transitions. [2022-04-14 22:53:09,294 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 42 transitions. [2022-04-14 22:53:09,333 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 22:53:09,334 INFO L225 Difference]: With dead ends: 71 [2022-04-14 22:53:09,334 INFO L226 Difference]: Without dead ends: 67 [2022-04-14 22:53:09,335 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 119 GetRequests, 92 SyntacticMatches, 4 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 1 DeprecatedPredicates, 124 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=145, Invalid=455, Unknown=0, NotChecked=0, Total=600 [2022-04-14 22:53:09,337 INFO L913 BasicCegarLoop]: 26 mSDtfsCounter, 19 mSDsluCounter, 73 mSDsCounter, 0 mSdLazyCounter, 113 mSolverCounterSat, 23 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 19 SdHoareTripleChecker+Valid, 99 SdHoareTripleChecker+Invalid, 138 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 23 IncrementalHoareTripleChecker+Valid, 113 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 2 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-14 22:53:09,337 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [19 Valid, 99 Invalid, 138 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [23 Valid, 113 Invalid, 0 Unknown, 2 Unchecked, 0.1s Time] [2022-04-14 22:53:09,339 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 67 states. [2022-04-14 22:53:09,341 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 67 to 67. [2022-04-14 22:53:09,341 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 22:53:09,342 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-14 22:53:09,342 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-14 22:53:09,342 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-14 22:53:09,344 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 22:53:09,344 INFO L93 Difference]: Finished difference Result 67 states and 72 transitions. [2022-04-14 22:53:09,344 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 72 transitions. [2022-04-14 22:53:09,344 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 22:53:09,344 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 22:53:09,344 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-14 22:53:09,344 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-14 22:53:09,346 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 22:53:09,346 INFO L93 Difference]: Finished difference Result 67 states and 72 transitions. [2022-04-14 22:53:09,346 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 72 transitions. [2022-04-14 22:53:09,346 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 22:53:09,346 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 22:53:09,346 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 22:53:09,346 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 22:53:09,347 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-14 22:53:09,351 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 67 states to 67 states and 72 transitions. [2022-04-14 22:53:09,351 INFO L78 Accepts]: Start accepts. Automaton has 67 states and 72 transitions. Word has length 55 [2022-04-14 22:53:09,351 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 22:53:09,351 INFO L478 AbstractCegarLoop]: Abstraction has 67 states and 72 transitions. [2022-04-14 22:53:09,351 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-14 22:53:09,352 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 72 transitions. [2022-04-14 22:53:09,352 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-14 22:53:09,352 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 22:53:09,352 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-14 22:53:09,370 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-14 22:53:09,567 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 22:53:09,567 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 22:53:09,568 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 22:53:09,568 INFO L85 PathProgramCache]: Analyzing trace with hash -683089742, now seen corresponding path program 2 times [2022-04-14 22:53:09,568 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 22:53:09,568 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [389408752] [2022-04-14 22:53:09,568 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 22:53:09,568 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 22:53:09,579 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 22:53:09,579 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1065723585] [2022-04-14 22:53:09,579 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-14 22:53:09,579 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 22:53:09,579 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 22:53:09,587 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-14 22:53:09,588 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-14 22:53:09,618 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-14 22:53:09,618 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-14 22:53:09,619 INFO L263 TraceCheckSpWp]: Trace formula consists of 143 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-14 22:53:09,628 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 22:53:09,628 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 22:53:11,001 INFO L272 TraceCheckUtils]: 0: Hoare triple {2825#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2825#true} is VALID [2022-04-14 22:53:11,001 INFO L290 TraceCheckUtils]: 1: Hoare triple {2825#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] {2825#true} is VALID [2022-04-14 22:53:11,001 INFO L290 TraceCheckUtils]: 2: Hoare triple {2825#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2825#true} is VALID [2022-04-14 22:53:11,001 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2825#true} {2825#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2825#true} is VALID [2022-04-14 22:53:11,002 INFO L272 TraceCheckUtils]: 4: Hoare triple {2825#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2825#true} is VALID [2022-04-14 22:53:11,002 INFO L290 TraceCheckUtils]: 5: Hoare triple {2825#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] {2825#true} is VALID [2022-04-14 22:53:11,002 INFO L272 TraceCheckUtils]: 6: Hoare triple {2825#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] {2825#true} is VALID [2022-04-14 22:53:11,002 INFO L290 TraceCheckUtils]: 7: Hoare triple {2825#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] {2825#true} is VALID [2022-04-14 22:53:11,002 INFO L290 TraceCheckUtils]: 8: Hoare triple {2825#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[] {2825#true} is VALID [2022-04-14 22:53:11,002 INFO L290 TraceCheckUtils]: 9: Hoare triple {2825#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2825#true} is VALID [2022-04-14 22:53:11,002 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2825#true} {2825#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] {2825#true} is VALID [2022-04-14 22:53:11,002 INFO L290 TraceCheckUtils]: 11: Hoare triple {2825#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] {2825#true} is VALID [2022-04-14 22:53:11,002 INFO L272 TraceCheckUtils]: 12: Hoare triple {2825#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] {2825#true} is VALID [2022-04-14 22:53:11,003 INFO L290 TraceCheckUtils]: 13: Hoare triple {2825#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] {2869#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-14 22:53:11,003 INFO L290 TraceCheckUtils]: 14: Hoare triple {2869#(= 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[] {2873#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 22:53:11,003 INFO L290 TraceCheckUtils]: 15: Hoare triple {2873#(not (= |assume_abort_if_not_#in~cond| 0))} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2873#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 22:53:11,004 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2873#(not (= |assume_abort_if_not_#in~cond| 0))} {2825#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] {2880#(and (<= main_~b~0 5) (<= 0 main_~b~0))} is VALID [2022-04-14 22:53:11,004 INFO L272 TraceCheckUtils]: 17: Hoare triple {2880#(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] {2825#true} is VALID [2022-04-14 22:53:11,004 INFO L290 TraceCheckUtils]: 18: Hoare triple {2825#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] {2825#true} is VALID [2022-04-14 22:53:11,004 INFO L290 TraceCheckUtils]: 19: Hoare triple {2825#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[] {2825#true} is VALID [2022-04-14 22:53:11,004 INFO L290 TraceCheckUtils]: 20: Hoare triple {2825#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2825#true} is VALID [2022-04-14 22:53:11,004 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2825#true} {2880#(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] {2880#(and (<= main_~b~0 5) (<= 0 main_~b~0))} is VALID [2022-04-14 22:53:11,005 INFO L290 TraceCheckUtils]: 22: Hoare triple {2880#(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] {2899#(<= main_~y~0 5)} is VALID [2022-04-14 22:53:11,005 INFO L290 TraceCheckUtils]: 23: Hoare triple {2899#(<= main_~y~0 5)} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2899#(<= main_~y~0 5)} is VALID [2022-04-14 22:53:11,005 INFO L272 TraceCheckUtils]: 24: Hoare triple {2899#(<= 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] {2825#true} is VALID [2022-04-14 22:53:11,005 INFO L290 TraceCheckUtils]: 25: Hoare triple {2825#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] {2825#true} is VALID [2022-04-14 22:53:11,005 INFO L290 TraceCheckUtils]: 26: Hoare triple {2825#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[] {2825#true} is VALID [2022-04-14 22:53:11,005 INFO L290 TraceCheckUtils]: 27: Hoare triple {2825#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2825#true} is VALID [2022-04-14 22:53:11,006 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2825#true} {2899#(<= 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] {2899#(<= main_~y~0 5)} is VALID [2022-04-14 22:53:11,006 INFO L290 TraceCheckUtils]: 29: Hoare triple {2899#(<= 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[] {2921#(and (not (= main_~y~0 0)) (<= main_~y~0 5))} is VALID [2022-04-14 22:53:11,007 INFO L290 TraceCheckUtils]: 30: Hoare triple {2921#(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] {2925#(and (<= 1 (mod (+ main_~y~0 1) 2)) (<= main_~y~0 4) (<= 0 (+ main_~y~0 1)))} is VALID [2022-04-14 22:53:11,010 INFO L290 TraceCheckUtils]: 31: Hoare triple {2925#(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] {2929#(exists ((aux_mod_v_main_~y~0_36_28 Int) (aux_div_v_main_~y~0_36_28 Int)) (and (= main_~y~0 (div (+ (- 1) (* aux_div_v_main_~y~0_36_28 2) aux_mod_v_main_~y~0_36_28) 2)) (< aux_mod_v_main_~y~0_36_28 2) (<= (+ (* aux_div_v_main_~y~0_36_28 2) aux_mod_v_main_~y~0_36_28) 5) (<= 0 (+ (* aux_div_v_main_~y~0_36_28 2) aux_mod_v_main_~y~0_36_28)) (<= 1 aux_mod_v_main_~y~0_36_28)))} is VALID [2022-04-14 22:53:11,010 INFO L290 TraceCheckUtils]: 32: Hoare triple {2929#(exists ((aux_mod_v_main_~y~0_36_28 Int) (aux_div_v_main_~y~0_36_28 Int)) (and (= main_~y~0 (div (+ (- 1) (* aux_div_v_main_~y~0_36_28 2) aux_mod_v_main_~y~0_36_28) 2)) (< aux_mod_v_main_~y~0_36_28 2) (<= (+ (* aux_div_v_main_~y~0_36_28 2) aux_mod_v_main_~y~0_36_28) 5) (<= 0 (+ (* aux_div_v_main_~y~0_36_28 2) aux_mod_v_main_~y~0_36_28)) (<= 1 aux_mod_v_main_~y~0_36_28)))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2933#(and (< main_~y~0 3) (< 0 (+ main_~y~0 1)))} is VALID [2022-04-14 22:53:11,011 INFO L272 TraceCheckUtils]: 33: Hoare triple {2933#(and (< main_~y~0 3) (< 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] {2825#true} is VALID [2022-04-14 22:53:11,011 INFO L290 TraceCheckUtils]: 34: Hoare triple {2825#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] {2825#true} is VALID [2022-04-14 22:53:11,011 INFO L290 TraceCheckUtils]: 35: Hoare triple {2825#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[] {2825#true} is VALID [2022-04-14 22:53:11,011 INFO L290 TraceCheckUtils]: 36: Hoare triple {2825#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2825#true} is VALID [2022-04-14 22:53:11,011 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2825#true} {2933#(and (< main_~y~0 3) (< 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] {2933#(and (< main_~y~0 3) (< 0 (+ main_~y~0 1)))} is VALID [2022-04-14 22:53:11,012 INFO L290 TraceCheckUtils]: 38: Hoare triple {2933#(and (< main_~y~0 3) (< 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[] {2952#(and (not (= main_~y~0 0)) (< main_~y~0 3) (< 0 (+ main_~y~0 1)))} is VALID [2022-04-14 22:53:11,012 INFO L290 TraceCheckUtils]: 39: Hoare triple {2952#(and (not (= main_~y~0 0)) (< main_~y~0 3) (< 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[] {2956#(and (not (= main_~y~0 0)) (not (= (mod main_~y~0 2) 1)) (< main_~y~0 3) (< 0 (+ main_~y~0 1)))} is VALID [2022-04-14 22:53:11,014 INFO L290 TraceCheckUtils]: 40: Hoare triple {2956#(and (not (= main_~y~0 0)) (not (= (mod main_~y~0 2) 1)) (< main_~y~0 3) (< 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] {2960#(exists ((aux_div_v_main_~y~0_37_22 Int) (aux_mod_v_main_~y~0_37_22 Int)) (and (<= 0 aux_mod_v_main_~y~0_37_22) (< 0 (+ (* aux_div_v_main_~y~0_37_22 2) aux_mod_v_main_~y~0_37_22 1)) (not (= (+ (* aux_div_v_main_~y~0_37_22 2) aux_mod_v_main_~y~0_37_22) 0)) (< aux_mod_v_main_~y~0_37_22 2) (< (+ (* aux_div_v_main_~y~0_37_22 2) aux_mod_v_main_~y~0_37_22) 3) (not (= aux_mod_v_main_~y~0_37_22 1)) (= main_~y~0 (div (+ (* aux_div_v_main_~y~0_37_22 2) aux_mod_v_main_~y~0_37_22) 2))))} is VALID [2022-04-14 22:53:11,014 INFO L290 TraceCheckUtils]: 41: Hoare triple {2960#(exists ((aux_div_v_main_~y~0_37_22 Int) (aux_mod_v_main_~y~0_37_22 Int)) (and (<= 0 aux_mod_v_main_~y~0_37_22) (< 0 (+ (* aux_div_v_main_~y~0_37_22 2) aux_mod_v_main_~y~0_37_22 1)) (not (= (+ (* aux_div_v_main_~y~0_37_22 2) aux_mod_v_main_~y~0_37_22) 0)) (< aux_mod_v_main_~y~0_37_22 2) (< (+ (* aux_div_v_main_~y~0_37_22 2) aux_mod_v_main_~y~0_37_22) 3) (not (= aux_mod_v_main_~y~0_37_22 1)) (= main_~y~0 (div (+ (* aux_div_v_main_~y~0_37_22 2) aux_mod_v_main_~y~0_37_22) 2))))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2964#(and (< (* main_~y~0 2) 3) (< 0 main_~y~0))} is VALID [2022-04-14 22:53:11,014 INFO L272 TraceCheckUtils]: 42: Hoare triple {2964#(and (< (* main_~y~0 2) 3) (< 0 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] {2825#true} is VALID [2022-04-14 22:53:11,015 INFO L290 TraceCheckUtils]: 43: Hoare triple {2825#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] {2825#true} is VALID [2022-04-14 22:53:11,015 INFO L290 TraceCheckUtils]: 44: Hoare triple {2825#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[] {2825#true} is VALID [2022-04-14 22:53:11,015 INFO L290 TraceCheckUtils]: 45: Hoare triple {2825#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2825#true} is VALID [2022-04-14 22:53:11,015 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {2825#true} {2964#(and (< (* main_~y~0 2) 3) (< 0 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] {2964#(and (< (* main_~y~0 2) 3) (< 0 main_~y~0))} is VALID [2022-04-14 22:53:11,016 INFO L290 TraceCheckUtils]: 47: Hoare triple {2964#(and (< (* main_~y~0 2) 3) (< 0 main_~y~0))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {2964#(and (< (* main_~y~0 2) 3) (< 0 main_~y~0))} is VALID [2022-04-14 22:53:11,016 INFO L290 TraceCheckUtils]: 48: Hoare triple {2964#(and (< (* main_~y~0 2) 3) (< 0 main_~y~0))} [102] L39-->L39-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_3} OutVars{main_~y~0=v_main_~y~0_3} AuxVars[] AssignedVars[] {2826#false} is VALID [2022-04-14 22:53:11,016 INFO L290 TraceCheckUtils]: 49: Hoare triple {2826#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] {2826#false} is VALID [2022-04-14 22:53:11,016 INFO L290 TraceCheckUtils]: 50: Hoare triple {2826#false} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2826#false} is VALID [2022-04-14 22:53:11,016 INFO L272 TraceCheckUtils]: 51: Hoare triple {2826#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] {2826#false} is VALID [2022-04-14 22:53:11,016 INFO L290 TraceCheckUtils]: 52: Hoare triple {2826#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] {2826#false} is VALID [2022-04-14 22:53:11,017 INFO L290 TraceCheckUtils]: 53: Hoare triple {2826#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[] {2826#false} is VALID [2022-04-14 22:53:11,017 INFO L290 TraceCheckUtils]: 54: Hoare triple {2826#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2826#false} is VALID [2022-04-14 22:53:11,017 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-14 22:53:11,017 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 22:53:14,453 INFO L290 TraceCheckUtils]: 54: Hoare triple {2826#false} [103] L14-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2826#false} is VALID [2022-04-14 22:53:14,453 INFO L290 TraceCheckUtils]: 53: Hoare triple {2826#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[] {2826#false} is VALID [2022-04-14 22:53:14,453 INFO L290 TraceCheckUtils]: 52: Hoare triple {2826#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] {2826#false} is VALID [2022-04-14 22:53:14,454 INFO L272 TraceCheckUtils]: 51: Hoare triple {2826#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] {2826#false} is VALID [2022-04-14 22:53:14,454 INFO L290 TraceCheckUtils]: 50: Hoare triple {2826#false} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2826#false} is VALID [2022-04-14 22:53:14,454 INFO L290 TraceCheckUtils]: 49: Hoare triple {2826#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] {2826#false} is VALID [2022-04-14 22:53:14,456 INFO L290 TraceCheckUtils]: 48: Hoare triple {3022#(and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1))} [102] L39-->L39-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_3} OutVars{main_~y~0=v_main_~y~0_3} AuxVars[] AssignedVars[] {2826#false} is VALID [2022-04-14 22:53:14,459 INFO L290 TraceCheckUtils]: 47: Hoare triple {3022#(and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {3022#(and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1))} is VALID [2022-04-14 22:53:14,464 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {2825#true} {3022#(and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1))} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3022#(and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1))} is VALID [2022-04-14 22:53:14,464 INFO L290 TraceCheckUtils]: 45: Hoare triple {2825#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2825#true} is VALID [2022-04-14 22:53:14,464 INFO L290 TraceCheckUtils]: 44: Hoare triple {2825#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[] {2825#true} is VALID [2022-04-14 22:53:14,464 INFO L290 TraceCheckUtils]: 43: Hoare triple {2825#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] {2825#true} is VALID [2022-04-14 22:53:14,464 INFO L272 TraceCheckUtils]: 42: Hoare triple {3022#(and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2825#true} is VALID [2022-04-14 22:53:14,464 INFO L290 TraceCheckUtils]: 41: Hoare triple {3022#(and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3022#(and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1))} is VALID [2022-04-14 22:53:14,465 INFO L290 TraceCheckUtils]: 40: Hoare triple {3047#(and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2)))} [106] L39-2-->L34-2: Formula: (and (= v_main_~y~0_4 (let ((.cse0 (div v_main_~y~0_5 2))) (ite (and (not (= (mod v_main_~y~0_5 2) 0)) (< v_main_~y~0_5 0)) (+ .cse0 1) .cse0))) (= v_main_~x~0_2 (* v_main_~x~0_3 2))) InVars {main_~x~0=v_main_~x~0_3, main_~y~0=v_main_~y~0_5} OutVars{main_~x~0=v_main_~x~0_2, main_~y~0=v_main_~y~0_4} AuxVars[] AssignedVars[main_~x~0, main_~y~0] {3022#(and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1))} is VALID [2022-04-14 22:53:14,466 INFO L290 TraceCheckUtils]: 39: Hoare triple {3051#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))} [102] L39-->L39-2: Formula: (not (= (let ((.cse0 (mod v_main_~y~0_3 2))) (ite (and (< v_main_~y~0_3 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1)) InVars {main_~y~0=v_main_~y~0_3} OutVars{main_~y~0=v_main_~y~0_3} AuxVars[] AssignedVars[] {3047#(and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2)))} is VALID [2022-04-14 22:53:14,466 INFO L290 TraceCheckUtils]: 38: Hoare triple {3055#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (= main_~y~0 0) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))} [97] L35-1-->L39: Formula: (not (= v_main_~y~0_10 0)) InVars {main_~y~0=v_main_~y~0_10} OutVars{main_~y~0=v_main_~y~0_10} AuxVars[] AssignedVars[] {3051#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))} is VALID [2022-04-14 22:53:14,467 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {2825#true} {3055#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (= main_~y~0 0) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))} [112] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {3055#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (= main_~y~0 0) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))} is VALID [2022-04-14 22:53:14,467 INFO L290 TraceCheckUtils]: 36: Hoare triple {2825#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2825#true} is VALID [2022-04-14 22:53:14,467 INFO L290 TraceCheckUtils]: 35: Hoare triple {2825#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[] {2825#true} is VALID [2022-04-14 22:53:14,467 INFO L290 TraceCheckUtils]: 34: Hoare triple {2825#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] {2825#true} is VALID [2022-04-14 22:53:14,467 INFO L272 TraceCheckUtils]: 33: Hoare triple {3055#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (= main_~y~0 0) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))} [93] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~z~0_7 (* v_main_~y~0_11 v_main_~x~0_7)) (* v_main_~a~0_9 v_main_~b~0_10)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_11, main_~x~0=v_main_~x~0_7, main_~b~0=v_main_~b~0_10, main_~z~0=v_main_~z~0_7, main_~a~0=v_main_~a~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~z~0, main_~y~0, main_~b~0, main_~a~0] {2825#true} is VALID [2022-04-14 22:53:14,467 INFO L290 TraceCheckUtils]: 32: Hoare triple {3055#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (= main_~y~0 0) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3055#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (= main_~y~0 0) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))} is VALID [2022-04-14 22:53:14,468 INFO L290 TraceCheckUtils]: 31: Hoare triple {3077#(and (or (= (div main_~y~0 2) 0) (and (= (mod (div (div main_~y~0 2) 2) 2) 1) (<= 0 (div (div main_~y~0 2) 2))) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0)) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2)))) (or (not (< main_~y~0 0)) (= (+ (div main_~y~0 2) 1) 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] {3055#(or (and (<= 0 main_~y~0) (= (mod main_~y~0 2) 1)) (= main_~y~0 0) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2))))} is VALID [2022-04-14 22:53:14,470 INFO L290 TraceCheckUtils]: 30: Hoare triple {3081#(or (= (mod (div (div (+ (- 1) main_~y~0) 2) 2) 2) 1) (= (div (+ (- 1) main_~y~0) 2) 0) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0) (= (mod (div (+ (- 1) main_~y~0) 2) 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] {3077#(and (or (= (div main_~y~0 2) 0) (and (= (mod (div (div main_~y~0 2) 2) 2) 1) (<= 0 (div (div main_~y~0 2) 2))) (and (not (= (mod main_~y~0 2) 0)) (< main_~y~0 0)) (and (= (mod (div main_~y~0 2) 2) 1) (<= 0 (div main_~y~0 2)))) (or (not (< main_~y~0 0)) (= (+ (div main_~y~0 2) 1) 0)))} is VALID [2022-04-14 22:53:14,470 INFO L290 TraceCheckUtils]: 29: Hoare triple {3081#(or (= (mod (div (div (+ (- 1) main_~y~0) 2) 2) 2) 1) (= (div (+ (- 1) main_~y~0) 2) 0) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0) (= (mod (div (+ (- 1) 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[] {3081#(or (= (mod (div (div (+ (- 1) main_~y~0) 2) 2) 2) 1) (= (div (+ (- 1) main_~y~0) 2) 0) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0) (= (mod (div (+ (- 1) main_~y~0) 2) 2) 1))} is VALID [2022-04-14 22:53:14,471 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2825#true} {3081#(or (= (mod (div (div (+ (- 1) main_~y~0) 2) 2) 2) 1) (= (div (+ (- 1) main_~y~0) 2) 0) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0) (= (mod (div (+ (- 1) 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] {3081#(or (= (mod (div (div (+ (- 1) main_~y~0) 2) 2) 2) 1) (= (div (+ (- 1) main_~y~0) 2) 0) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0) (= (mod (div (+ (- 1) main_~y~0) 2) 2) 1))} is VALID [2022-04-14 22:53:14,471 INFO L290 TraceCheckUtils]: 27: Hoare triple {2825#true} [105] L13-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2825#true} is VALID [2022-04-14 22:53:14,471 INFO L290 TraceCheckUtils]: 26: Hoare triple {2825#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[] {2825#true} is VALID [2022-04-14 22:53:14,471 INFO L290 TraceCheckUtils]: 25: Hoare triple {2825#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] {2825#true} is VALID [2022-04-14 22:53:14,471 INFO L272 TraceCheckUtils]: 24: Hoare triple {3081#(or (= (mod (div (div (+ (- 1) main_~y~0) 2) 2) 2) 1) (= (div (+ (- 1) main_~y~0) 2) 0) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0) (= (mod (div (+ (- 1) 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] {2825#true} is VALID [2022-04-14 22:53:14,472 INFO L290 TraceCheckUtils]: 23: Hoare triple {3081#(or (= (mod (div (div (+ (- 1) main_~y~0) 2) 2) 2) 1) (= (div (+ (- 1) main_~y~0) 2) 0) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0) (= (mod (div (+ (- 1) main_~y~0) 2) 2) 1))} [91] L34-2-->L35: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3081#(or (= (mod (div (div (+ (- 1) main_~y~0) 2) 2) 2) 1) (= (div (+ (- 1) main_~y~0) 2) 0) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0) (= (mod (div (+ (- 1) main_~y~0) 2) 2) 1))} is VALID [2022-04-14 22:53:14,473 INFO L290 TraceCheckUtils]: 22: Hoare triple {3106#(<= (div (* (- 1) (div (* (- 1) (div (* (- 1) main_~b~0) (- 2))) (- 2))) (- 2)) 1)} [88] L28-->L34-2: Formula: (and (= v_main_~z~0_5 0) (= v_main_~a~0_6 v_main_~x~0_5) (= v_main_~b~0_6 v_main_~y~0_7)) InVars {main_~b~0=v_main_~b~0_6, main_~a~0=v_main_~a~0_6} OutVars{main_~y~0=v_main_~y~0_7, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_6, main_~z~0=v_main_~z~0_5, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_~x~0, main_~z~0, main_~y~0] {3081#(or (= (mod (div (div (+ (- 1) main_~y~0) 2) 2) 2) 1) (= (div (+ (- 1) main_~y~0) 2) 0) (not (<= 1 (mod main_~y~0 2))) (< main_~y~0 0) (= (mod (div (+ (- 1) main_~y~0) 2) 2) 1))} is VALID [2022-04-14 22:53:14,473 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2825#true} {3106#(<= (div (* (- 1) (div (* (- 1) (div (* (- 1) main_~b~0) (- 2))) (- 2))) (- 2)) 1)} [110] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {3106#(<= (div (* (- 1) (div (* (- 1) (div (* (- 1) main_~b~0) (- 2))) (- 2))) (- 2)) 1)} is VALID [2022-04-14 22:53:14,473 INFO L290 TraceCheckUtils]: 20: Hoare triple {2825#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2825#true} is VALID [2022-04-14 22:53:14,473 INFO L290 TraceCheckUtils]: 19: Hoare triple {2825#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[] {2825#true} is VALID [2022-04-14 22:53:14,473 INFO L290 TraceCheckUtils]: 18: Hoare triple {2825#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] {2825#true} is VALID [2022-04-14 22:53:14,473 INFO L272 TraceCheckUtils]: 17: Hoare triple {3106#(<= (div (* (- 1) (div (* (- 1) (div (* (- 1) main_~b~0) (- 2))) (- 2))) (- 2)) 1)} [86] L27-1-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~b~0_9) 1 0) |v_assume_abort_if_not_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~b~0, assume_abort_if_not_#in~cond] {2825#true} is VALID [2022-04-14 22:53:14,474 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2873#(not (= |assume_abort_if_not_#in~cond| 0))} {2825#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] {3106#(<= (div (* (- 1) (div (* (- 1) (div (* (- 1) main_~b~0) (- 2))) (- 2))) (- 2)) 1)} is VALID [2022-04-14 22:53:14,474 INFO L290 TraceCheckUtils]: 15: Hoare triple {2873#(not (= |assume_abort_if_not_#in~cond| 0))} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2873#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 22:53:14,474 INFO L290 TraceCheckUtils]: 14: Hoare triple {3134#(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[] {2873#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 22:53:14,475 INFO L290 TraceCheckUtils]: 13: Hoare triple {2825#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] {3134#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-14 22:53:14,475 INFO L272 TraceCheckUtils]: 12: Hoare triple {2825#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] {2825#true} is VALID [2022-04-14 22:53:14,475 INFO L290 TraceCheckUtils]: 11: Hoare triple {2825#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] {2825#true} is VALID [2022-04-14 22:53:14,475 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2825#true} {2825#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] {2825#true} is VALID [2022-04-14 22:53:14,475 INFO L290 TraceCheckUtils]: 9: Hoare triple {2825#true} [87] L10-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2825#true} is VALID [2022-04-14 22:53:14,475 INFO L290 TraceCheckUtils]: 8: Hoare triple {2825#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[] {2825#true} is VALID [2022-04-14 22:53:14,475 INFO L290 TraceCheckUtils]: 7: Hoare triple {2825#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] {2825#true} is VALID [2022-04-14 22:53:14,475 INFO L272 TraceCheckUtils]: 6: Hoare triple {2825#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] {2825#true} is VALID [2022-04-14 22:53:14,475 INFO L290 TraceCheckUtils]: 5: Hoare triple {2825#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] {2825#true} is VALID [2022-04-14 22:53:14,476 INFO L272 TraceCheckUtils]: 4: Hoare triple {2825#true} [75] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2825#true} is VALID [2022-04-14 22:53:14,476 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2825#true} {2825#true} [107] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2825#true} is VALID [2022-04-14 22:53:14,476 INFO L290 TraceCheckUtils]: 2: Hoare triple {2825#true} [79] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2825#true} is VALID [2022-04-14 22:53:14,476 INFO L290 TraceCheckUtils]: 1: Hoare triple {2825#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] {2825#true} is VALID [2022-04-14 22:53:14,476 INFO L272 TraceCheckUtils]: 0: Hoare triple {2825#true} [74] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2825#true} is VALID [2022-04-14 22:53:14,476 INFO L134 CoverageAnalysis]: Checked inductivity of 51 backedges. 22 proven. 11 refuted. 0 times theorem prover too weak. 18 trivial. 0 not checked. [2022-04-14 22:53:14,476 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 22:53:14,476 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [389408752] [2022-04-14 22:53:14,476 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 22:53:14,476 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1065723585] [2022-04-14 22:53:14,476 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1065723585] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-14 22:53:14,476 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-14 22:53:14,477 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 11] total 22 [2022-04-14 22:53:14,477 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [365441030] [2022-04-14 22:53:14,477 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-14 22:53:14,477 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 22 states have (on average 2.0) internal successors, (44), 20 states have internal predecessors, (44), 10 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 9 states have call predecessors, (12), 9 states have call successors, (12) Word has length 55 [2022-04-14 22:53:14,477 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 22:53:14,478 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 22 states, 22 states have (on average 2.0) internal successors, (44), 20 states have internal predecessors, (44), 10 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 9 states have call predecessors, (12), 9 states have call successors, (12) [2022-04-14 22:53:14,531 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 22:53:14,531 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 22 states [2022-04-14 22:53:14,531 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 22:53:14,532 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2022-04-14 22:53:14,532 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=109, Invalid=353, Unknown=0, NotChecked=0, Total=462 [2022-04-14 22:53:14,532 INFO L87 Difference]: Start difference. First operand 67 states and 72 transitions. Second operand has 22 states, 22 states have (on average 2.0) internal successors, (44), 20 states have internal predecessors, (44), 10 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 9 states have call predecessors, (12), 9 states have call successors, (12) [2022-04-14 22:53:15,171 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 22:53:15,172 INFO L93 Difference]: Finished difference Result 55 states and 57 transitions. [2022-04-14 22:53:15,172 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-14 22:53:15,173 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 22 states have (on average 2.0) internal successors, (44), 20 states have internal predecessors, (44), 10 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 9 states have call predecessors, (12), 9 states have call successors, (12) Word has length 55 [2022-04-14 22:53:15,174 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 22:53:15,174 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 22 states have (on average 2.0) internal successors, (44), 20 states have internal predecessors, (44), 10 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 9 states have call predecessors, (12), 9 states have call successors, (12) [2022-04-14 22:53:15,176 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 39 transitions. [2022-04-14 22:53:15,176 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 22 states have (on average 2.0) internal successors, (44), 20 states have internal predecessors, (44), 10 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 9 states have call predecessors, (12), 9 states have call successors, (12) [2022-04-14 22:53:15,178 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 39 transitions. [2022-04-14 22:53:15,178 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 39 transitions. [2022-04-14 22:53:15,210 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-14 22:53:15,210 INFO L225 Difference]: With dead ends: 55 [2022-04-14 22:53:15,210 INFO L226 Difference]: Without dead ends: 0 [2022-04-14 22:53:15,210 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 119 GetRequests, 89 SyntacticMatches, 2 SemanticMatches, 28 ConstructedPredicates, 0 IntricatePredicates, 2 DeprecatedPredicates, 196 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=207, Invalid=663, Unknown=0, NotChecked=0, Total=870 [2022-04-14 22:53:15,211 INFO L913 BasicCegarLoop]: 24 mSDtfsCounter, 28 mSDsluCounter, 146 mSDsCounter, 0 mSdLazyCounter, 162 mSolverCounterSat, 23 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 28 SdHoareTripleChecker+Valid, 170 SdHoareTripleChecker+Invalid, 199 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 23 IncrementalHoareTripleChecker+Valid, 162 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 14 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-14 22:53:15,211 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [28 Valid, 170 Invalid, 199 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [23 Valid, 162 Invalid, 0 Unknown, 14 Unchecked, 0.2s Time] [2022-04-14 22:53:15,211 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-14 22:53:15,211 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-14 22:53:15,211 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 22:53:15,212 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-14 22:53:15,212 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-14 22:53:15,212 INFO L87 Difference]: Start difference. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-14 22:53:15,212 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 22:53:15,212 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-14 22:53:15,212 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-14 22:53:15,212 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 22:53:15,212 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 22:53:15,212 INFO L74 IsIncluded]: Start isIncluded. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-14 22:53:15,212 INFO L87 Difference]: Start difference. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-14 22:53:15,212 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 22:53:15,212 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-14 22:53:15,212 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-14 22:53:15,212 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 22:53:15,212 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 22:53:15,212 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 22:53:15,212 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 22:53:15,213 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-14 22:53:15,213 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-14 22:53:15,213 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 55 [2022-04-14 22:53:15,213 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 22:53:15,213 INFO L478 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-14 22:53:15,213 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 22 states, 22 states have (on average 2.0) internal successors, (44), 20 states have internal predecessors, (44), 10 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 9 states have call predecessors, (12), 9 states have call successors, (12) [2022-04-14 22:53:15,213 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-14 22:53:15,213 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 22:53:15,215 INFO L788 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-14 22:53:15,233 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-14 22:53:15,419 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-14 22:53:15,421 INFO L719 BasicCegarLoop]: Path program histogram: [2, 1, 1, 1, 1, 1, 1] [2022-04-14 22:53:15,422 INFO L177 ceAbstractionStarter]: Computing trace abstraction results [2022-04-14 22:53:15,425 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 14.04 10:53:15 BasicIcfg [2022-04-14 22:53:15,425 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-14 22:53:15,425 INFO L158 Benchmark]: Toolchain (without parser) took 154823.59ms. Allocated memory was 206.6MB in the beginning and 261.1MB in the end (delta: 54.5MB). Free memory was 155.7MB in the beginning and 94.1MB in the end (delta: 61.7MB). Peak memory consumption was 115.7MB. Max. memory is 8.0GB. [2022-04-14 22:53:15,426 INFO L158 Benchmark]: CDTParser took 0.09ms. Allocated memory is still 206.6MB. Free memory was 172.4MB in the beginning and 172.2MB in the end (delta: 151.8kB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-14 22:53:15,426 INFO L158 Benchmark]: CACSL2BoogieTranslator took 148.43ms. Allocated memory is still 206.6MB. Free memory was 155.6MB in the beginning and 181.6MB in the end (delta: -26.0MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-14 22:53:15,426 INFO L158 Benchmark]: Boogie Preprocessor took 18.42ms. Allocated memory is still 206.6MB. Free memory was 181.6MB in the beginning and 180.3MB in the end (delta: 1.3MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-14 22:53:15,426 INFO L158 Benchmark]: RCFGBuilder took 232.01ms. Allocated memory is still 206.6MB. Free memory was 180.3MB in the beginning and 169.0MB in the end (delta: 11.3MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-14 22:53:15,426 INFO L158 Benchmark]: IcfgTransformer took 55.02ms. Allocated memory is still 206.6MB. Free memory was 169.0MB in the beginning and 167.3MB in the end (delta: 1.7MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-14 22:53:15,426 INFO L158 Benchmark]: TraceAbstraction took 154366.06ms. Allocated memory was 206.6MB in the beginning and 261.1MB in the end (delta: 54.5MB). Free memory was 166.9MB in the beginning and 94.1MB in the end (delta: 72.8MB). Peak memory consumption was 128.4MB. Max. memory is 8.0GB. [2022-04-14 22:53:15,427 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.09ms. Allocated memory is still 206.6MB. Free memory was 172.4MB in the beginning and 172.2MB in the end (delta: 151.8kB). There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 148.43ms. Allocated memory is still 206.6MB. Free memory was 155.6MB in the beginning and 181.6MB in the end (delta: -26.0MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * Boogie Preprocessor took 18.42ms. Allocated memory is still 206.6MB. Free memory was 181.6MB in the beginning and 180.3MB in the end (delta: 1.3MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 232.01ms. Allocated memory is still 206.6MB. Free memory was 180.3MB in the beginning and 169.0MB in the end (delta: 11.3MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * IcfgTransformer took 55.02ms. Allocated memory is still 206.6MB. Free memory was 169.0MB in the beginning and 167.3MB in the end (delta: 1.7MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * TraceAbstraction took 154366.06ms. Allocated memory was 206.6MB in the beginning and 261.1MB in the end (delta: 54.5MB). Free memory was 166.9MB in the beginning and 94.1MB in the end (delta: 72.8MB). Peak memory consumption was 128.4MB. 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: 154.3s, OverallIterations: 8, TraceHistogramMax: 4, PathProgramHistogramMax: 2, EmptinessCheckTime: 0.0s, AutomataDifference: 28.2s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 2 mSolverCounterUnknown, 186 SdHoareTripleChecker+Valid, 13.5s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 175 mSDsluCounter, 894 SdHoareTripleChecker+Invalid, 13.5s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 16 IncrementalHoareTripleChecker+Unchecked, 696 mSDsCounter, 106 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 932 IncrementalHoareTripleChecker+Invalid, 1056 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 106 mSolverCounterUnsat, 198 mSDtfsCounter, 932 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 558 GetRequests, 434 SyntacticMatches, 12 SemanticMatches, 112 ConstructedPredicates, 0 IntricatePredicates, 3 DeprecatedPredicates, 474 ImplicationChecksByTransitivity, 5.4s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=71occurred in iteration=5, InterpolantAutomatonStates: 78, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.1s AutomataMinimizationTime, 8 MinimizatonAttempts, 9 StatesRemovedByMinimization, 3 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.2s SatisfiabilityAnalysisTime, 119.2s InterpolantComputationTime, 317 NumberOfCodeBlocks, 317 NumberOfCodeBlocksAsserted, 9 NumberOfCheckSat, 531 ConstructedInterpolants, 3 QuantifiedInterpolants, 2303 SizeOfPredicates, 25 NumberOfNonLiveVariables, 821 ConjunctsInSsa, 117 ConjunctsInUnsatCore, 13 InterpolantComputations, 3 PerfectInterpolantSequences, 320/352 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold RESULT: Ultimate proved your program to be correct! [2022-04-14 22:53:15,459 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 0 Received shutdown request...