/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data --core.log.level.for.class de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN -tc ../../../trunk/examples/toolchains/AutomizerCTransformed.xml -s ../../../trunk/examples/settings/automizer/LoopAccelerationJordanC.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_valuebound20.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-e106359-m [2022-04-14 20:39:33,899 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-14 20:39:33,900 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-14 20:39:33,932 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-14 20:39:33,932 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-14 20:39:33,932 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-14 20:39:33,933 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-14 20:39:33,935 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-14 20:39:33,936 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-14 20:39:33,936 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-14 20:39:33,937 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-14 20:39:33,937 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-14 20:39:33,938 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-14 20:39:33,938 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-14 20:39:33,939 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-14 20:39:33,940 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-14 20:39:33,940 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-14 20:39:33,941 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-14 20:39:33,942 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-14 20:39:33,943 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-14 20:39:33,944 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-14 20:39:33,947 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-14 20:39:33,947 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-14 20:39:33,948 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-14 20:39:33,949 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-14 20:39:33,950 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-14 20:39:33,951 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-14 20:39:33,951 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-14 20:39:33,951 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-14 20:39:33,952 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-14 20:39:33,952 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-14 20:39:33,952 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-14 20:39:33,953 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-14 20:39:33,953 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-14 20:39:33,954 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-14 20:39:33,955 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-14 20:39:33,955 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-14 20:39:33,955 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-14 20:39:33,956 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-14 20:39:33,956 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-14 20:39:33,956 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-14 20:39:33,957 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-14 20:39:33,957 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/LoopAccelerationJordanC.epf [2022-04-14 20:39:33,967 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-14 20:39:33,968 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-14 20:39:33,968 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-14 20:39:33,969 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-14 20:39:33,969 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-14 20:39:33,969 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-14 20:39:33,969 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-14 20:39:33,969 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-14 20:39:33,969 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-14 20:39:33,969 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-14 20:39:33,969 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-14 20:39:33,970 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-14 20:39:33,970 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-14 20:39:33,970 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-14 20:39:33,970 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-14 20:39:33,970 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-14 20:39:33,970 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-14 20:39:33,970 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-14 20:39:33,970 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-14 20:39:33,971 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-14 20:39:33,971 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-14 20:39:33,971 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-14 20:39:33,971 INFO L138 SettingsManager]: * TransformationType=LOOP_ACCELERATION_JORDAN WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-14 20:39:34,154 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-14 20:39:34,169 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-14 20:39:34,171 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-14 20:39:34,171 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-14 20:39:34,172 INFO L275 PluginConnector]: CDTParser initialized [2022-04-14 20:39:34,173 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_valuebound20.c [2022-04-14 20:39:34,223 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/3e8b3bcb0/886188d8ac054c12897bbe476033af6c/FLAGfa41e5e9a [2022-04-14 20:39:34,591 INFO L306 CDTParser]: Found 1 translation units. [2022-04-14 20:39:34,592 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_valuebound20.c [2022-04-14 20:39:34,597 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/3e8b3bcb0/886188d8ac054c12897bbe476033af6c/FLAGfa41e5e9a [2022-04-14 20:39:34,613 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/3e8b3bcb0/886188d8ac054c12897bbe476033af6c [2022-04-14 20:39:34,614 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-14 20:39:34,617 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-14 20:39:34,619 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-14 20:39:34,619 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-14 20:39:34,621 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-14 20:39:34,624 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.04 08:39:34" (1/1) ... [2022-04-14 20:39:34,625 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@766a2896 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:39:34, skipping insertion in model container [2022-04-14 20:39:34,625 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.04 08:39:34" (1/1) ... [2022-04-14 20:39:34,630 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-14 20:39:34,642 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-14 20:39:34,794 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_valuebound20.c[576,589] [2022-04-14 20:39:34,819 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-14 20:39:34,825 INFO L203 MainTranslator]: Completed pre-run [2022-04-14 20:39:34,833 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/cohendiv-ll_valuebound20.c[576,589] [2022-04-14 20:39:34,849 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-14 20:39:34,859 INFO L208 MainTranslator]: Completed translation [2022-04-14 20:39:34,860 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:39:34 WrapperNode [2022-04-14 20:39:34,860 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-14 20:39:34,861 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-14 20:39:34,861 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-14 20:39:34,861 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-14 20:39:34,868 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:39:34" (1/1) ... [2022-04-14 20:39:34,869 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:39:34" (1/1) ... [2022-04-14 20:39:34,874 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:39:34" (1/1) ... [2022-04-14 20:39:34,874 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:39:34" (1/1) ... [2022-04-14 20:39:34,884 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:39:34" (1/1) ... [2022-04-14 20:39:34,890 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:39:34" (1/1) ... [2022-04-14 20:39:34,894 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:39:34" (1/1) ... [2022-04-14 20:39:34,896 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-14 20:39:34,897 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-14 20:39:34,897 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-14 20:39:34,897 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-14 20:39:34,898 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:39:34" (1/1) ... [2022-04-14 20:39:34,903 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-14 20:39:34,909 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 20:39:34,922 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-14 20:39:34,924 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-14 20:39:34,946 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-14 20:39:34,947 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-14 20:39:34,947 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-14 20:39:34,947 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-14 20:39:34,947 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-14 20:39:34,947 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-14 20:39:34,947 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-14 20:39:34,947 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-14 20:39:34,948 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-14 20:39:34,948 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-14 20:39:34,948 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-14 20:39:34,948 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-14 20:39:34,948 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-14 20:39:34,948 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-14 20:39:34,949 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-14 20:39:34,949 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-14 20:39:34,949 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-14 20:39:34,949 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-14 20:39:34,949 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-14 20:39:34,949 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-14 20:39:34,994 INFO L234 CfgBuilder]: Building ICFG [2022-04-14 20:39:34,995 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-14 20:39:35,139 INFO L275 CfgBuilder]: Performing block encoding [2022-04-14 20:39:35,144 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-14 20:39:35,144 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-14 20:39:35,145 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 08:39:35 BoogieIcfgContainer [2022-04-14 20:39:35,145 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-14 20:39:35,146 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-14 20:39:35,146 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-14 20:39:35,155 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-14 20:39:35,158 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 08:39:35" (1/1) ... [2022-04-14 20:39:35,160 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_JORDAN [2022-04-14 20:39:35,202 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 14.04 08:39:35 BasicIcfg [2022-04-14 20:39:35,203 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-14 20:39:35,204 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-14 20:39:35,204 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-14 20:39:35,207 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-14 20:39:35,207 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 14.04 08:39:34" (1/4) ... [2022-04-14 20:39:35,208 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5fadaeee and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.04 08:39:35, skipping insertion in model container [2022-04-14 20:39:35,208 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 08:39:34" (2/4) ... [2022-04-14 20:39:35,208 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5fadaeee and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.04 08:39:35, skipping insertion in model container [2022-04-14 20:39:35,208 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 08:39:35" (3/4) ... [2022-04-14 20:39:35,209 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5fadaeee and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 14.04 08:39:35, skipping insertion in model container [2022-04-14 20:39:35,209 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 14.04 08:39:35" (4/4) ... [2022-04-14 20:39:35,210 INFO L111 eAbstractionObserver]: Analyzing ICFG cohendiv-ll_valuebound20.cJordan [2022-04-14 20:39:35,214 INFO L202 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:ForwardPredicates Determinization: PREDICATE_ABSTRACTION [2022-04-14 20:39:35,214 INFO L161 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-14 20:39:35,251 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-14 20:39:35,256 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=ForwardPredicates, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=false, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP [2022-04-14 20:39:35,256 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-14 20:39:35,272 INFO L276 IsEmpty]: Start isEmpty. Operand has 39 states, 21 states have (on average 1.4285714285714286) internal successors, (30), 22 states have internal predecessors, (30), 12 states have call successors, (12), 4 states have call predecessors, (12), 4 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2022-04-14 20:39:35,278 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-14 20:39:35,278 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 20:39:35,278 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 20:39:35,279 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 20:39:35,282 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 20:39:35,282 INFO L85 PathProgramCache]: Analyzing trace with hash 795680375, now seen corresponding path program 1 times [2022-04-14 20:39:35,288 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 20:39:35,288 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [985263132] [2022-04-14 20:39:35,288 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:39:35,289 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 20:39:35,376 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:39:35,441 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-14 20:39:35,444 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:39:35,453 INFO L290 TraceCheckUtils]: 0: Hoare triple {59#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [103] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select |v_#length_1| 2) 14) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {42#true} is VALID [2022-04-14 20:39:35,453 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} [106] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-14 20:39:35,454 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {42#true} {42#true} [143] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-14 20:39:35,454 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-14 20:39:35,456 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:39:35,460 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {42#true} is VALID [2022-04-14 20:39:35,460 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-14 20:39:35,460 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-14 20:39:35,460 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#true} {42#true} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 20)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {42#true} is VALID [2022-04-14 20:39:35,460 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-14 20:39:35,462 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:39:35,472 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {42#true} is VALID [2022-04-14 20:39:35,473 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-14 20:39:35,473 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-14 20:39:35,473 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#true} {42#true} [145] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 20)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {42#true} is VALID [2022-04-14 20:39:35,473 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-14 20:39:35,475 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:39:35,479 INFO L290 TraceCheckUtils]: 0: Hoare triple {42#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {42#true} is VALID [2022-04-14 20:39:35,479 INFO L290 TraceCheckUtils]: 1: Hoare triple {42#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-14 20:39:35,479 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-14 20:39:35,479 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#true} {42#true} [146] assume_abort_if_notEXIT-->L31: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {42#true} is VALID [2022-04-14 20:39:35,480 INFO L272 TraceCheckUtils]: 0: Hoare triple {42#true} [101] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {59#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-14 20:39:35,481 INFO L290 TraceCheckUtils]: 1: Hoare triple {59#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [103] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select |v_#length_1| 2) 14) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {42#true} is VALID [2022-04-14 20:39:35,481 INFO L290 TraceCheckUtils]: 2: Hoare triple {42#true} [106] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-14 20:39:35,481 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42#true} {42#true} [143] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-14 20:39:35,481 INFO L272 TraceCheckUtils]: 4: Hoare triple {42#true} [102] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-14 20:39:35,481 INFO L290 TraceCheckUtils]: 5: Hoare triple {42#true} [105] mainENTRY-->L27: Formula: (and (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_1, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1, main_~a~0=v_main_~a~0_1} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~r~0, main_~a~0] {42#true} is VALID [2022-04-14 20:39:35,482 INFO L272 TraceCheckUtils]: 6: Hoare triple {42#true} [107] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 20)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {42#true} is VALID [2022-04-14 20:39:35,482 INFO L290 TraceCheckUtils]: 7: Hoare triple {42#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {42#true} is VALID [2022-04-14 20:39:35,482 INFO L290 TraceCheckUtils]: 8: Hoare triple {42#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-14 20:39:35,482 INFO L290 TraceCheckUtils]: 9: Hoare triple {42#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-14 20:39:35,482 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {42#true} {42#true} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 20)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {42#true} is VALID [2022-04-14 20:39:35,483 INFO L290 TraceCheckUtils]: 11: Hoare triple {42#true} [108] L27-1-->L29: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~y~0] {42#true} is VALID [2022-04-14 20:39:35,483 INFO L272 TraceCheckUtils]: 12: Hoare triple {42#true} [110] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 20)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {42#true} is VALID [2022-04-14 20:39:35,483 INFO L290 TraceCheckUtils]: 13: Hoare triple {42#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {42#true} is VALID [2022-04-14 20:39:35,483 INFO L290 TraceCheckUtils]: 14: Hoare triple {42#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-14 20:39:35,483 INFO L290 TraceCheckUtils]: 15: Hoare triple {42#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-14 20:39:35,484 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {42#true} {42#true} [145] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 20)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {42#true} is VALID [2022-04-14 20:39:35,484 INFO L272 TraceCheckUtils]: 17: Hoare triple {42#true} [113] L29-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {42#true} is VALID [2022-04-14 20:39:35,484 INFO L290 TraceCheckUtils]: 18: Hoare triple {42#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {42#true} is VALID [2022-04-14 20:39:35,484 INFO L290 TraceCheckUtils]: 19: Hoare triple {42#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-14 20:39:35,484 INFO L290 TraceCheckUtils]: 20: Hoare triple {42#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42#true} is VALID [2022-04-14 20:39:35,484 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {42#true} {42#true} [146] assume_abort_if_notEXIT-->L31: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {42#true} is VALID [2022-04-14 20:39:35,485 INFO L290 TraceCheckUtils]: 22: Hoare triple {42#true} [115] L31-->L38-2: Formula: (and (= v_main_~b~0_2 0) (= v_main_~q~0_2 0) (= v_main_~a~0_2 0) (= v_main_~r~0_2 v_main_~x~0_5)) InVars {main_~x~0=v_main_~x~0_5} OutVars{main_~q~0=v_main_~q~0_2, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0, main_~a~0] {42#true} is VALID [2022-04-14 20:39:35,485 INFO L290 TraceCheckUtils]: 23: Hoare triple {42#true} [116] L38-2-->L38-3: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {43#false} is VALID [2022-04-14 20:39:35,485 INFO L272 TraceCheckUtils]: 24: Hoare triple {43#false} [119] L38-3-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_7| (ite (= v_main_~x~0_12 (+ v_main_~r~0_18 (* v_main_~q~0_10 v_main_~y~0_20))) 1 0)) InVars {main_~q~0=v_main_~q~0_10, main_~y~0=v_main_~y~0_20, main_~x~0=v_main_~x~0_12, main_~r~0=v_main_~r~0_18} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_7|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {43#false} is VALID [2022-04-14 20:39:35,486 INFO L290 TraceCheckUtils]: 25: Hoare triple {43#false} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {43#false} is VALID [2022-04-14 20:39:35,486 INFO L290 TraceCheckUtils]: 26: Hoare triple {43#false} [125] L15-->L16: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {43#false} is VALID [2022-04-14 20:39:35,486 INFO L290 TraceCheckUtils]: 27: Hoare triple {43#false} [129] L16-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {43#false} is VALID [2022-04-14 20:39:35,486 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-14 20:39:35,487 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 20:39:35,487 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [985263132] [2022-04-14 20:39:35,487 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [985263132] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 20:39:35,487 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 20:39:35,488 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-14 20:39:35,488 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [359876295] [2022-04-14 20:39:35,489 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 20:39:35,492 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) Word has length 28 [2022-04-14 20:39:35,493 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 20:39:35,495 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-14 20:39:35,528 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:39:35,529 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-14 20:39:35,529 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 20:39:35,541 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-14 20:39:35,542 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-14 20:39:35,545 INFO L87 Difference]: Start difference. First operand has 39 states, 21 states have (on average 1.4285714285714286) internal successors, (30), 22 states have internal predecessors, (30), 12 states have call successors, (12), 4 states have call predecessors, (12), 4 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) Second operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-14 20:39:35,699 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:35,699 INFO L93 Difference]: Finished difference Result 39 states and 48 transitions. [2022-04-14 20:39:35,699 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-14 20:39:35,699 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) Word has length 28 [2022-04-14 20:39:35,699 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 20:39:35,700 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-14 20:39:35,707 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 54 transitions. [2022-04-14 20:39:35,708 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-14 20:39:35,715 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 54 transitions. [2022-04-14 20:39:35,715 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 54 transitions. [2022-04-14 20:39:35,789 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:39:35,794 INFO L225 Difference]: With dead ends: 39 [2022-04-14 20:39:35,795 INFO L226 Difference]: Without dead ends: 34 [2022-04-14 20:39:35,796 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 9 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-14 20:39:35,798 INFO L913 BasicCegarLoop]: 38 mSDtfsCounter, 21 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 12 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 31 SdHoareTripleChecker+Valid, 41 SdHoareTripleChecker+Invalid, 23 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 12 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-14 20:39:35,798 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [31 Valid, 41 Invalid, 23 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 12 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-14 20:39:35,817 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-14 20:39:35,833 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 34. [2022-04-14 20:39:35,833 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 20:39:35,834 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-14 20:39:35,835 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-14 20:39:35,836 INFO L87 Difference]: Start difference. First operand 34 states. Second operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-14 20:39:35,845 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:35,845 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-14 20:39:35,845 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-14 20:39:35,846 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:39:35,846 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:39:35,847 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 34 states. [2022-04-14 20:39:35,848 INFO L87 Difference]: Start difference. First operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 34 states. [2022-04-14 20:39:35,854 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:35,854 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-14 20:39:35,854 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-14 20:39:35,856 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:39:35,857 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:39:35,857 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 20:39:35,857 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 20:39:35,858 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-14 20:39:35,876 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 43 transitions. [2022-04-14 20:39:35,877 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 43 transitions. Word has length 28 [2022-04-14 20:39:35,877 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 20:39:35,877 INFO L478 AbstractCegarLoop]: Abstraction has 34 states and 43 transitions. [2022-04-14 20:39:35,877 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (6), 3 states have call predecessors, (6), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-04-14 20:39:35,878 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-14 20:39:35,878 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-14 20:39:35,878 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 20:39:35,880 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 20:39:35,880 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-14 20:39:35,880 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 20:39:35,881 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 20:39:35,881 INFO L85 PathProgramCache]: Analyzing trace with hash 797557208, now seen corresponding path program 1 times [2022-04-14 20:39:35,881 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 20:39:35,882 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [965514881] [2022-04-14 20:39:35,882 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:39:35,882 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 20:39:35,906 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 20:39:35,906 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [61883136] [2022-04-14 20:39:35,906 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:39:35,906 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:39:35,906 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 20:39:35,908 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 20:39:35,908 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-14 20:39:35,966 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:39:35,969 INFO L263 TraceCheckSpWp]: Trace formula consists of 92 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-14 20:39:35,980 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:39:35,983 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 20:39:36,303 INFO L272 TraceCheckUtils]: 0: Hoare triple {203#true} [101] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {203#true} is VALID [2022-04-14 20:39:36,304 INFO L290 TraceCheckUtils]: 1: Hoare triple {203#true} [103] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select |v_#length_1| 2) 14) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {203#true} is VALID [2022-04-14 20:39:36,304 INFO L290 TraceCheckUtils]: 2: Hoare triple {203#true} [106] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {203#true} is VALID [2022-04-14 20:39:36,304 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {203#true} {203#true} [143] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {203#true} is VALID [2022-04-14 20:39:36,305 INFO L272 TraceCheckUtils]: 4: Hoare triple {203#true} [102] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {203#true} is VALID [2022-04-14 20:39:36,305 INFO L290 TraceCheckUtils]: 5: Hoare triple {203#true} [105] mainENTRY-->L27: Formula: (and (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_1, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1, main_~a~0=v_main_~a~0_1} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~r~0, main_~a~0] {203#true} is VALID [2022-04-14 20:39:36,305 INFO L272 TraceCheckUtils]: 6: Hoare triple {203#true} [107] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 20)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {203#true} is VALID [2022-04-14 20:39:36,305 INFO L290 TraceCheckUtils]: 7: Hoare triple {203#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {203#true} is VALID [2022-04-14 20:39:36,305 INFO L290 TraceCheckUtils]: 8: Hoare triple {203#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {203#true} is VALID [2022-04-14 20:39:36,305 INFO L290 TraceCheckUtils]: 9: Hoare triple {203#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {203#true} is VALID [2022-04-14 20:39:36,306 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {203#true} {203#true} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 20)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {203#true} is VALID [2022-04-14 20:39:36,306 INFO L290 TraceCheckUtils]: 11: Hoare triple {203#true} [108] L27-1-->L29: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~y~0] {203#true} is VALID [2022-04-14 20:39:36,306 INFO L272 TraceCheckUtils]: 12: Hoare triple {203#true} [110] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 20)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {203#true} is VALID [2022-04-14 20:39:36,306 INFO L290 TraceCheckUtils]: 13: Hoare triple {203#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {247#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-14 20:39:36,307 INFO L290 TraceCheckUtils]: 14: Hoare triple {247#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {251#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 20:39:36,307 INFO L290 TraceCheckUtils]: 15: Hoare triple {251#(not (= |assume_abort_if_not_#in~cond| 0))} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {251#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 20:39:36,308 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {251#(not (= |assume_abort_if_not_#in~cond| 0))} {203#true} [145] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 20)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {258#(and (<= 0 main_~y~0) (<= main_~y~0 20))} is VALID [2022-04-14 20:39:36,308 INFO L272 TraceCheckUtils]: 17: Hoare triple {258#(and (<= 0 main_~y~0) (<= main_~y~0 20))} [113] L29-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {203#true} is VALID [2022-04-14 20:39:36,309 INFO L290 TraceCheckUtils]: 18: Hoare triple {203#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {247#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-14 20:39:36,309 INFO L290 TraceCheckUtils]: 19: Hoare triple {247#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {251#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 20:39:36,310 INFO L290 TraceCheckUtils]: 20: Hoare triple {251#(not (= |assume_abort_if_not_#in~cond| 0))} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {251#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 20:39:36,310 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {251#(not (= |assume_abort_if_not_#in~cond| 0))} {258#(and (<= 0 main_~y~0) (<= main_~y~0 20))} [146] assume_abort_if_notEXIT-->L31: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {274#(and (<= main_~y~0 20) (<= 1 main_~y~0))} is VALID [2022-04-14 20:39:36,311 INFO L290 TraceCheckUtils]: 22: Hoare triple {274#(and (<= main_~y~0 20) (<= 1 main_~y~0))} [115] L31-->L38-2: Formula: (and (= v_main_~b~0_2 0) (= v_main_~q~0_2 0) (= v_main_~a~0_2 0) (= v_main_~r~0_2 v_main_~x~0_5)) InVars {main_~x~0=v_main_~x~0_5} OutVars{main_~q~0=v_main_~q~0_2, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0, main_~a~0] {278#(and (= main_~a~0 0) (= main_~b~0 0) (<= main_~y~0 20) (<= 1 main_~y~0))} is VALID [2022-04-14 20:39:36,311 INFO L290 TraceCheckUtils]: 23: Hoare triple {278#(and (= main_~a~0 0) (= main_~b~0 0) (<= main_~y~0 20) (<= 1 main_~y~0))} [118] L38-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {278#(and (= main_~a~0 0) (= main_~b~0 0) (<= main_~y~0 20) (<= 1 main_~y~0))} is VALID [2022-04-14 20:39:36,312 INFO L272 TraceCheckUtils]: 24: Hoare triple {278#(and (= main_~a~0 0) (= main_~b~0 0) (<= main_~y~0 20) (<= 1 main_~y~0))} [120] L39-->__VERIFIER_assertENTRY: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {285#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 20:39:36,312 INFO L290 TraceCheckUtils]: 25: Hoare triple {285#(<= 1 |__VERIFIER_assert_#in~cond|)} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {289#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 20:39:36,313 INFO L290 TraceCheckUtils]: 26: Hoare triple {289#(<= 1 __VERIFIER_assert_~cond)} [125] L15-->L16: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {204#false} is VALID [2022-04-14 20:39:36,313 INFO L290 TraceCheckUtils]: 27: Hoare triple {204#false} [129] L16-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {204#false} is VALID [2022-04-14 20:39:36,313 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-14 20:39:36,314 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 20:39:36,314 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 20:39:36,314 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [965514881] [2022-04-14 20:39:36,314 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 20:39:36,314 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [61883136] [2022-04-14 20:39:36,314 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [61883136] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 20:39:36,314 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 20:39:36,315 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-14 20:39:36,315 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1947508054] [2022-04-14 20:39:36,315 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 20:39:36,316 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 1.875) internal successors, (15), 6 states have internal predecessors, (15), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-14 20:39:36,316 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 20:39:36,316 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 1.875) internal successors, (15), 6 states have internal predecessors, (15), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-14 20:39:36,340 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:39:36,340 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-14 20:39:36,340 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 20:39:36,342 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-14 20:39:36,342 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=54, Unknown=0, NotChecked=0, Total=72 [2022-04-14 20:39:36,342 INFO L87 Difference]: Start difference. First operand 34 states and 43 transitions. Second operand has 9 states, 8 states have (on average 1.875) internal successors, (15), 6 states have internal predecessors, (15), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-14 20:39:36,707 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:36,707 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2022-04-14 20:39:36,707 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-14 20:39:36,708 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 1.875) internal successors, (15), 6 states have internal predecessors, (15), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-14 20:39:36,708 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 20:39:36,709 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 1.875) internal successors, (15), 6 states have internal predecessors, (15), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-14 20:39:36,713 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 55 transitions. [2022-04-14 20:39:36,713 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 1.875) internal successors, (15), 6 states have internal predecessors, (15), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-14 20:39:36,716 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 55 transitions. [2022-04-14 20:39:36,716 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 55 transitions. [2022-04-14 20:39:36,756 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:39:36,759 INFO L225 Difference]: With dead ends: 43 [2022-04-14 20:39:36,759 INFO L226 Difference]: Without dead ends: 43 [2022-04-14 20:39:36,759 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 29 GetRequests, 20 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=26, Invalid=84, Unknown=0, NotChecked=0, Total=110 [2022-04-14 20:39:36,761 INFO L913 BasicCegarLoop]: 36 mSDtfsCounter, 18 mSDsluCounter, 145 mSDsCounter, 0 mSdLazyCounter, 134 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 27 SdHoareTripleChecker+Valid, 181 SdHoareTripleChecker+Invalid, 135 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 134 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-14 20:39:36,762 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [27 Valid, 181 Invalid, 135 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 134 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-14 20:39:36,765 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 43 states. [2022-04-14 20:39:36,771 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 43 to 40. [2022-04-14 20:39:36,771 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 20:39:36,772 INFO L82 GeneralOperation]: Start isEquivalent. First operand 43 states. Second operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-14 20:39:36,774 INFO L74 IsIncluded]: Start isIncluded. First operand 43 states. Second operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-14 20:39:36,774 INFO L87 Difference]: Start difference. First operand 43 states. Second operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-14 20:39:36,781 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:36,781 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2022-04-14 20:39:36,782 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-14 20:39:36,784 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:39:36,784 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:39:36,784 INFO L74 IsIncluded]: Start isIncluded. First operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) Second operand 43 states. [2022-04-14 20:39:36,784 INFO L87 Difference]: Start difference. First operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) Second operand 43 states. [2022-04-14 20:39:36,787 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:36,787 INFO L93 Difference]: Finished difference Result 43 states and 54 transitions. [2022-04-14 20:39:36,787 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 54 transitions. [2022-04-14 20:39:36,787 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:39:36,788 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:39:36,788 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 20:39:36,788 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 20:39:36,788 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 40 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 24 states have internal predecessors, (25), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-14 20:39:36,790 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 49 transitions. [2022-04-14 20:39:36,790 INFO L78 Accepts]: Start accepts. Automaton has 40 states and 49 transitions. Word has length 28 [2022-04-14 20:39:36,790 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 20:39:36,790 INFO L478 AbstractCegarLoop]: Abstraction has 40 states and 49 transitions. [2022-04-14 20:39:36,790 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 1.875) internal successors, (15), 6 states have internal predecessors, (15), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 3 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-14 20:39:36,790 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 49 transitions. [2022-04-14 20:39:36,791 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-14 20:39:36,791 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 20:39:36,791 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 20:39:36,810 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 20:39:36,995 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:39:36,996 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 20:39:36,996 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 20:39:36,996 INFO L85 PathProgramCache]: Analyzing trace with hash 648866686, now seen corresponding path program 1 times [2022-04-14 20:39:36,996 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 20:39:36,996 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [603009618] [2022-04-14 20:39:36,997 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:39:36,997 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 20:39:37,015 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 20:39:37,015 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1426350665] [2022-04-14 20:39:37,015 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:39:37,015 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:39:37,016 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 20:39:37,021 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 20:39:37,026 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-14 20:39:37,059 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:39:37,060 INFO L263 TraceCheckSpWp]: Trace formula consists of 101 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-14 20:39:37,068 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:39:37,069 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 20:39:37,281 INFO L272 TraceCheckUtils]: 0: Hoare triple {468#true} [101] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {468#true} is VALID [2022-04-14 20:39:37,282 INFO L290 TraceCheckUtils]: 1: Hoare triple {468#true} [103] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select |v_#length_1| 2) 14) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {468#true} is VALID [2022-04-14 20:39:37,282 INFO L290 TraceCheckUtils]: 2: Hoare triple {468#true} [106] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {468#true} is VALID [2022-04-14 20:39:37,282 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {468#true} {468#true} [143] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {468#true} is VALID [2022-04-14 20:39:37,282 INFO L272 TraceCheckUtils]: 4: Hoare triple {468#true} [102] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {468#true} is VALID [2022-04-14 20:39:37,282 INFO L290 TraceCheckUtils]: 5: Hoare triple {468#true} [105] mainENTRY-->L27: Formula: (and (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_1, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1, main_~a~0=v_main_~a~0_1} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~r~0, main_~a~0] {468#true} is VALID [2022-04-14 20:39:37,282 INFO L272 TraceCheckUtils]: 6: Hoare triple {468#true} [107] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 20)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {468#true} is VALID [2022-04-14 20:39:37,283 INFO L290 TraceCheckUtils]: 7: Hoare triple {468#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {468#true} is VALID [2022-04-14 20:39:37,283 INFO L290 TraceCheckUtils]: 8: Hoare triple {468#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {468#true} is VALID [2022-04-14 20:39:37,283 INFO L290 TraceCheckUtils]: 9: Hoare triple {468#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {468#true} is VALID [2022-04-14 20:39:37,283 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {468#true} {468#true} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 20)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {468#true} is VALID [2022-04-14 20:39:37,283 INFO L290 TraceCheckUtils]: 11: Hoare triple {468#true} [108] L27-1-->L29: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~y~0] {468#true} is VALID [2022-04-14 20:39:37,284 INFO L272 TraceCheckUtils]: 12: Hoare triple {468#true} [110] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 20)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {468#true} is VALID [2022-04-14 20:39:37,284 INFO L290 TraceCheckUtils]: 13: Hoare triple {468#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {512#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-14 20:39:37,285 INFO L290 TraceCheckUtils]: 14: Hoare triple {512#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {516#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 20:39:37,285 INFO L290 TraceCheckUtils]: 15: Hoare triple {516#(not (= |assume_abort_if_not_#in~cond| 0))} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {516#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 20:39:37,288 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {516#(not (= |assume_abort_if_not_#in~cond| 0))} {468#true} [145] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 20)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {523#(and (<= 0 main_~y~0) (<= main_~y~0 20))} is VALID [2022-04-14 20:39:37,288 INFO L272 TraceCheckUtils]: 17: Hoare triple {523#(and (<= 0 main_~y~0) (<= main_~y~0 20))} [113] L29-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {468#true} is VALID [2022-04-14 20:39:37,288 INFO L290 TraceCheckUtils]: 18: Hoare triple {468#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {512#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-14 20:39:37,289 INFO L290 TraceCheckUtils]: 19: Hoare triple {512#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {516#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 20:39:37,289 INFO L290 TraceCheckUtils]: 20: Hoare triple {516#(not (= |assume_abort_if_not_#in~cond| 0))} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {516#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 20:39:37,290 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {516#(not (= |assume_abort_if_not_#in~cond| 0))} {523#(and (<= 0 main_~y~0) (<= main_~y~0 20))} [146] assume_abort_if_notEXIT-->L31: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {539#(and (<= main_~y~0 20) (<= 1 main_~y~0))} is VALID [2022-04-14 20:39:37,291 INFO L290 TraceCheckUtils]: 22: Hoare triple {539#(and (<= main_~y~0 20) (<= 1 main_~y~0))} [115] L31-->L38-2: Formula: (and (= v_main_~b~0_2 0) (= v_main_~q~0_2 0) (= v_main_~a~0_2 0) (= v_main_~r~0_2 v_main_~x~0_5)) InVars {main_~x~0=v_main_~x~0_5} OutVars{main_~q~0=v_main_~q~0_2, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0, main_~a~0] {543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= main_~y~0 20) (<= 1 main_~y~0))} is VALID [2022-04-14 20:39:37,291 INFO L290 TraceCheckUtils]: 23: Hoare triple {543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= main_~y~0 20) (<= 1 main_~y~0))} [118] L38-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= main_~y~0 20) (<= 1 main_~y~0))} is VALID [2022-04-14 20:39:37,291 INFO L272 TraceCheckUtils]: 24: Hoare triple {543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= main_~y~0 20) (<= 1 main_~y~0))} [120] L39-->__VERIFIER_assertENTRY: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {468#true} is VALID [2022-04-14 20:39:37,292 INFO L290 TraceCheckUtils]: 25: Hoare triple {468#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {468#true} is VALID [2022-04-14 20:39:37,292 INFO L290 TraceCheckUtils]: 26: Hoare triple {468#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {468#true} is VALID [2022-04-14 20:39:37,292 INFO L290 TraceCheckUtils]: 27: Hoare triple {468#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {468#true} is VALID [2022-04-14 20:39:37,293 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {468#true} {543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= main_~y~0 20) (<= 1 main_~y~0))} [148] __VERIFIER_assertEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= main_~y~0 20) (<= 1 main_~y~0))} is VALID [2022-04-14 20:39:37,294 INFO L272 TraceCheckUtils]: 29: Hoare triple {543#(and (= main_~x~0 main_~r~0) (= main_~q~0 0) (<= main_~y~0 20) (<= 1 main_~y~0))} [123] L39-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {565#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 20:39:37,296 INFO L290 TraceCheckUtils]: 30: Hoare triple {565#(<= 1 |__VERIFIER_assert_#in~cond|)} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {569#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 20:39:37,297 INFO L290 TraceCheckUtils]: 31: Hoare triple {569#(<= 1 __VERIFIER_assert_~cond)} [125] L15-->L16: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {469#false} is VALID [2022-04-14 20:39:37,297 INFO L290 TraceCheckUtils]: 32: Hoare triple {469#false} [129] L16-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {469#false} is VALID [2022-04-14 20:39:37,297 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 8 proven. 0 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-04-14 20:39:37,297 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 20:39:37,299 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 20:39:37,299 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [603009618] [2022-04-14 20:39:37,299 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 20:39:37,301 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1426350665] [2022-04-14 20:39:37,301 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1426350665] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 20:39:37,301 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 20:39:37,301 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-14 20:39:37,301 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2131573043] [2022-04-14 20:39:37,301 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 20:39:37,302 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) Word has length 33 [2022-04-14 20:39:37,302 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 20:39:37,303 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-14 20:39:37,325 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:39:37,325 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-14 20:39:37,325 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 20:39:37,326 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-14 20:39:37,326 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=54, Unknown=0, NotChecked=0, Total=72 [2022-04-14 20:39:37,327 INFO L87 Difference]: Start difference. First operand 40 states and 49 transitions. Second operand has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-14 20:39:37,691 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:37,691 INFO L93 Difference]: Finished difference Result 55 states and 70 transitions. [2022-04-14 20:39:37,691 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-14 20:39:37,691 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) Word has length 33 [2022-04-14 20:39:37,691 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 20:39:37,692 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-14 20:39:37,693 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 68 transitions. [2022-04-14 20:39:37,694 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-14 20:39:37,695 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 68 transitions. [2022-04-14 20:39:37,695 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 68 transitions. [2022-04-14 20:39:37,742 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:39:37,744 INFO L225 Difference]: With dead ends: 55 [2022-04-14 20:39:37,744 INFO L226 Difference]: Without dead ends: 54 [2022-04-14 20:39:37,744 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 34 GetRequests, 25 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=26, Invalid=84, Unknown=0, NotChecked=0, Total=110 [2022-04-14 20:39:37,744 INFO L913 BasicCegarLoop]: 39 mSDtfsCounter, 39 mSDsluCounter, 127 mSDsCounter, 0 mSdLazyCounter, 129 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 51 SdHoareTripleChecker+Valid, 166 SdHoareTripleChecker+Invalid, 146 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 129 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-14 20:39:37,745 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [51 Valid, 166 Invalid, 146 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 129 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-14 20:39:37,745 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 54 states. [2022-04-14 20:39:37,748 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 54 to 53. [2022-04-14 20:39:37,748 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 20:39:37,749 INFO L82 GeneralOperation]: Start isEquivalent. First operand 54 states. Second operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-14 20:39:37,749 INFO L74 IsIncluded]: Start isIncluded. First operand 54 states. Second operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-14 20:39:37,749 INFO L87 Difference]: Start difference. First operand 54 states. Second operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-14 20:39:37,752 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:37,752 INFO L93 Difference]: Finished difference Result 54 states and 68 transitions. [2022-04-14 20:39:37,752 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 68 transitions. [2022-04-14 20:39:37,752 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:39:37,753 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:39:37,753 INFO L74 IsIncluded]: Start isIncluded. First operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 54 states. [2022-04-14 20:39:37,753 INFO L87 Difference]: Start difference. First operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 54 states. [2022-04-14 20:39:37,764 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:37,765 INFO L93 Difference]: Finished difference Result 54 states and 68 transitions. [2022-04-14 20:39:37,765 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 68 transitions. [2022-04-14 20:39:37,765 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:39:37,765 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:39:37,765 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 20:39:37,765 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 20:39:37,767 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 53 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 30 states have internal predecessors, (33), 18 states have call successors, (18), 6 states have call predecessors, (18), 5 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-14 20:39:37,769 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 53 states to 53 states and 67 transitions. [2022-04-14 20:39:37,769 INFO L78 Accepts]: Start accepts. Automaton has 53 states and 67 transitions. Word has length 33 [2022-04-14 20:39:37,769 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 20:39:37,769 INFO L478 AbstractCegarLoop]: Abstraction has 53 states and 67 transitions. [2022-04-14 20:39:37,769 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.25) internal successors, (18), 6 states have internal predecessors, (18), 3 states have call successors, (7), 2 states have call predecessors, (7), 2 states have return successors, (5), 4 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-14 20:39:37,769 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 67 transitions. [2022-04-14 20:39:37,770 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-04-14 20:39:37,770 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 20:39:37,770 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 20:39:37,793 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-14 20:39:37,983 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-14 20:39:37,984 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 20:39:37,984 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 20:39:37,984 INFO L85 PathProgramCache]: Analyzing trace with hash 619469170, now seen corresponding path program 1 times [2022-04-14 20:39:37,984 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 20:39:37,984 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1028432443] [2022-04-14 20:39:37,984 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:39:37,984 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 20:39:38,001 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 20:39:38,012 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [808058963] [2022-04-14 20:39:38,012 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:39:38,013 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:39:38,013 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 20:39:38,019 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 20:39:38,019 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-14 20:39:38,054 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:39:38,056 INFO L263 TraceCheckSpWp]: Trace formula consists of 116 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-14 20:39:38,086 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:39:38,087 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 20:39:38,218 INFO L272 TraceCheckUtils]: 0: Hoare triple {795#true} [101] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:38,218 INFO L290 TraceCheckUtils]: 1: Hoare triple {795#true} [103] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select |v_#length_1| 2) 14) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {795#true} is VALID [2022-04-14 20:39:38,218 INFO L290 TraceCheckUtils]: 2: Hoare triple {795#true} [106] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:38,218 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {795#true} {795#true} [143] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:38,219 INFO L272 TraceCheckUtils]: 4: Hoare triple {795#true} [102] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:38,219 INFO L290 TraceCheckUtils]: 5: Hoare triple {795#true} [105] mainENTRY-->L27: Formula: (and (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_1, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1, main_~a~0=v_main_~a~0_1} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~r~0, main_~a~0] {795#true} is VALID [2022-04-14 20:39:38,219 INFO L272 TraceCheckUtils]: 6: Hoare triple {795#true} [107] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 20)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {795#true} is VALID [2022-04-14 20:39:38,219 INFO L290 TraceCheckUtils]: 7: Hoare triple {795#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {795#true} is VALID [2022-04-14 20:39:38,219 INFO L290 TraceCheckUtils]: 8: Hoare triple {795#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:38,219 INFO L290 TraceCheckUtils]: 9: Hoare triple {795#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:38,219 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {795#true} {795#true} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 20)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {795#true} is VALID [2022-04-14 20:39:38,220 INFO L290 TraceCheckUtils]: 11: Hoare triple {795#true} [108] L27-1-->L29: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~y~0] {795#true} is VALID [2022-04-14 20:39:38,220 INFO L272 TraceCheckUtils]: 12: Hoare triple {795#true} [110] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 20)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {795#true} is VALID [2022-04-14 20:39:38,220 INFO L290 TraceCheckUtils]: 13: Hoare triple {795#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {795#true} is VALID [2022-04-14 20:39:38,220 INFO L290 TraceCheckUtils]: 14: Hoare triple {795#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:38,220 INFO L290 TraceCheckUtils]: 15: Hoare triple {795#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:38,220 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {795#true} {795#true} [145] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 20)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {795#true} is VALID [2022-04-14 20:39:38,220 INFO L272 TraceCheckUtils]: 17: Hoare triple {795#true} [113] L29-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {795#true} is VALID [2022-04-14 20:39:38,221 INFO L290 TraceCheckUtils]: 18: Hoare triple {795#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {795#true} is VALID [2022-04-14 20:39:38,221 INFO L290 TraceCheckUtils]: 19: Hoare triple {795#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:38,221 INFO L290 TraceCheckUtils]: 20: Hoare triple {795#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:38,221 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {795#true} {795#true} [146] assume_abort_if_notEXIT-->L31: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {795#true} is VALID [2022-04-14 20:39:38,221 INFO L290 TraceCheckUtils]: 22: Hoare triple {795#true} [115] L31-->L38-2: Formula: (and (= v_main_~b~0_2 0) (= v_main_~q~0_2 0) (= v_main_~a~0_2 0) (= v_main_~r~0_2 v_main_~x~0_5)) InVars {main_~x~0=v_main_~x~0_5} OutVars{main_~q~0=v_main_~q~0_2, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0, main_~a~0] {795#true} is VALID [2022-04-14 20:39:38,221 INFO L290 TraceCheckUtils]: 23: Hoare triple {795#true} [118] L38-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:38,221 INFO L272 TraceCheckUtils]: 24: Hoare triple {795#true} [120] L39-->__VERIFIER_assertENTRY: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {795#true} is VALID [2022-04-14 20:39:38,221 INFO L290 TraceCheckUtils]: 25: Hoare triple {795#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {795#true} is VALID [2022-04-14 20:39:38,222 INFO L290 TraceCheckUtils]: 26: Hoare triple {795#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:38,222 INFO L290 TraceCheckUtils]: 27: Hoare triple {795#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:38,222 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {795#true} {795#true} [148] __VERIFIER_assertEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {795#true} is VALID [2022-04-14 20:39:38,222 INFO L272 TraceCheckUtils]: 29: Hoare triple {795#true} [123] L39-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {795#true} is VALID [2022-04-14 20:39:38,222 INFO L290 TraceCheckUtils]: 30: Hoare triple {795#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {795#true} is VALID [2022-04-14 20:39:38,222 INFO L290 TraceCheckUtils]: 31: Hoare triple {795#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:38,222 INFO L290 TraceCheckUtils]: 32: Hoare triple {795#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {795#true} is VALID [2022-04-14 20:39:38,223 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {795#true} {795#true} [149] __VERIFIER_assertEXIT-->L40: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {795#true} is VALID [2022-04-14 20:39:38,244 INFO L290 TraceCheckUtils]: 34: Hoare triple {795#true} [128] L40-->L47-2: Formula: (and (= v_main_~b~0_4 v_main_~y~0_8) (<= v_main_~y~0_8 v_main_~r~0_5) (= v_main_~a~0_4 1)) InVars {main_~y~0=v_main_~y~0_8, main_~r~0=v_main_~r~0_5} OutVars{main_~y~0=v_main_~y~0_8, main_~b~0=v_main_~b~0_4, main_~r~0=v_main_~r~0_5, main_~a~0=v_main_~a~0_4} AuxVars[] AssignedVars[main_~b~0, main_~a~0] {902#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} is VALID [2022-04-14 20:39:38,244 INFO L290 TraceCheckUtils]: 35: Hoare triple {902#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} [134] L47-2-->L48: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {902#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} is VALID [2022-04-14 20:39:38,245 INFO L272 TraceCheckUtils]: 36: Hoare triple {902#(and (= main_~a~0 1) (= main_~b~0 main_~y~0))} [136] L48-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_3| (ite (= (* v_main_~y~0_17 v_main_~a~0_11) v_main_~b~0_12) 1 0)) InVars {main_~y~0=v_main_~y~0_17, main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {909#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 20:39:38,245 INFO L290 TraceCheckUtils]: 37: Hoare triple {909#(<= 1 |__VERIFIER_assert_#in~cond|)} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {913#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 20:39:38,246 INFO L290 TraceCheckUtils]: 38: Hoare triple {913#(<= 1 __VERIFIER_assert_~cond)} [125] L15-->L16: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {796#false} is VALID [2022-04-14 20:39:38,246 INFO L290 TraceCheckUtils]: 39: Hoare triple {796#false} [129] L16-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {796#false} is VALID [2022-04-14 20:39:38,246 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-14 20:39:38,246 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 20:39:38,246 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 20:39:38,246 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1028432443] [2022-04-14 20:39:38,246 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 20:39:38,247 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [808058963] [2022-04-14 20:39:38,247 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [808058963] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 20:39:38,247 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 20:39:38,247 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-14 20:39:38,247 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1812144362] [2022-04-14 20:39:38,247 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 20:39:38,247 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) Word has length 40 [2022-04-14 20:39:38,248 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 20:39:38,248 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-14 20:39:38,265 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:39:38,265 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-14 20:39:38,266 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 20:39:38,266 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-14 20:39:38,266 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-14 20:39:38,266 INFO L87 Difference]: Start difference. First operand 53 states and 67 transitions. Second operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-14 20:39:38,423 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:38,423 INFO L93 Difference]: Finished difference Result 77 states and 103 transitions. [2022-04-14 20:39:38,423 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-14 20:39:38,423 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) Word has length 40 [2022-04-14 20:39:38,423 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 20:39:38,423 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-14 20:39:38,425 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 68 transitions. [2022-04-14 20:39:38,425 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-14 20:39:38,426 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 68 transitions. [2022-04-14 20:39:38,426 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 68 transitions. [2022-04-14 20:39:38,473 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:39:38,475 INFO L225 Difference]: With dead ends: 77 [2022-04-14 20:39:38,475 INFO L226 Difference]: Without dead ends: 77 [2022-04-14 20:39:38,475 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 40 GetRequests, 36 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 20:39:38,476 INFO L913 BasicCegarLoop]: 46 mSDtfsCounter, 10 mSDsluCounter, 98 mSDsCounter, 0 mSdLazyCounter, 64 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 16 SdHoareTripleChecker+Valid, 144 SdHoareTripleChecker+Invalid, 65 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 64 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-14 20:39:38,476 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [16 Valid, 144 Invalid, 65 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 64 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-14 20:39:38,476 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 77 states. [2022-04-14 20:39:38,481 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 77 to 70. [2022-04-14 20:39:38,481 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 20:39:38,481 INFO L82 GeneralOperation]: Start isEquivalent. First operand 77 states. Second operand has 70 states, 38 states have (on average 1.1578947368421053) internal successors, (44), 40 states have internal predecessors, (44), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-14 20:39:38,482 INFO L74 IsIncluded]: Start isIncluded. First operand 77 states. Second operand has 70 states, 38 states have (on average 1.1578947368421053) internal successors, (44), 40 states have internal predecessors, (44), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-14 20:39:38,482 INFO L87 Difference]: Start difference. First operand 77 states. Second operand has 70 states, 38 states have (on average 1.1578947368421053) internal successors, (44), 40 states have internal predecessors, (44), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-14 20:39:38,485 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:38,485 INFO L93 Difference]: Finished difference Result 77 states and 103 transitions. [2022-04-14 20:39:38,485 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 103 transitions. [2022-04-14 20:39:38,486 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:39:38,486 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:39:38,486 INFO L74 IsIncluded]: Start isIncluded. First operand has 70 states, 38 states have (on average 1.1578947368421053) internal successors, (44), 40 states have internal predecessors, (44), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) Second operand 77 states. [2022-04-14 20:39:38,486 INFO L87 Difference]: Start difference. First operand has 70 states, 38 states have (on average 1.1578947368421053) internal successors, (44), 40 states have internal predecessors, (44), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) Second operand 77 states. [2022-04-14 20:39:38,492 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:38,493 INFO L93 Difference]: Finished difference Result 77 states and 103 transitions. [2022-04-14 20:39:38,493 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 103 transitions. [2022-04-14 20:39:38,493 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:39:38,493 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:39:38,493 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 20:39:38,493 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 20:39:38,494 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 70 states, 38 states have (on average 1.1578947368421053) internal successors, (44), 40 states have internal predecessors, (44), 25 states have call successors, (25), 7 states have call predecessors, (25), 6 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-14 20:39:38,496 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 70 states to 70 states and 92 transitions. [2022-04-14 20:39:38,496 INFO L78 Accepts]: Start accepts. Automaton has 70 states and 92 transitions. Word has length 40 [2022-04-14 20:39:38,496 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 20:39:38,496 INFO L478 AbstractCegarLoop]: Abstraction has 70 states and 92 transitions. [2022-04-14 20:39:38,496 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.4) internal successors, (17), 4 states have internal predecessors, (17), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 1 states have call predecessors, (6), 1 states have call successors, (6) [2022-04-14 20:39:38,496 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 92 transitions. [2022-04-14 20:39:38,497 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2022-04-14 20:39:38,497 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 20:39:38,497 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 20:39:38,530 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Ended with exit code 0 [2022-04-14 20:39:38,715 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:39:38,716 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 20:39:38,716 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 20:39:38,716 INFO L85 PathProgramCache]: Analyzing trace with hash -574143214, now seen corresponding path program 1 times [2022-04-14 20:39:38,716 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 20:39:38,716 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1235733238] [2022-04-14 20:39:38,716 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:39:38,717 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 20:39:38,741 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 20:39:38,741 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [299366682] [2022-04-14 20:39:38,741 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:39:38,741 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:39:38,742 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 20:39:38,742 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 20:39:38,743 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-14 20:39:38,787 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:39:38,788 INFO L263 TraceCheckSpWp]: Trace formula consists of 134 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-14 20:39:38,802 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:39:38,804 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 20:39:39,021 INFO L272 TraceCheckUtils]: 0: Hoare triple {1222#true} [101] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1222#true} is VALID [2022-04-14 20:39:39,021 INFO L290 TraceCheckUtils]: 1: Hoare triple {1222#true} [103] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select |v_#length_1| 2) 14) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1222#true} is VALID [2022-04-14 20:39:39,022 INFO L290 TraceCheckUtils]: 2: Hoare triple {1222#true} [106] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1222#true} is VALID [2022-04-14 20:39:39,022 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1222#true} {1222#true} [143] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1222#true} is VALID [2022-04-14 20:39:39,022 INFO L272 TraceCheckUtils]: 4: Hoare triple {1222#true} [102] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1222#true} is VALID [2022-04-14 20:39:39,022 INFO L290 TraceCheckUtils]: 5: Hoare triple {1222#true} [105] mainENTRY-->L27: Formula: (and (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_1, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1, main_~a~0=v_main_~a~0_1} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~r~0, main_~a~0] {1222#true} is VALID [2022-04-14 20:39:39,022 INFO L272 TraceCheckUtils]: 6: Hoare triple {1222#true} [107] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 20)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {1222#true} is VALID [2022-04-14 20:39:39,022 INFO L290 TraceCheckUtils]: 7: Hoare triple {1222#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1222#true} is VALID [2022-04-14 20:39:39,022 INFO L290 TraceCheckUtils]: 8: Hoare triple {1222#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1222#true} is VALID [2022-04-14 20:39:39,023 INFO L290 TraceCheckUtils]: 9: Hoare triple {1222#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1222#true} is VALID [2022-04-14 20:39:39,023 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1222#true} {1222#true} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 20)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {1222#true} is VALID [2022-04-14 20:39:39,023 INFO L290 TraceCheckUtils]: 11: Hoare triple {1222#true} [108] L27-1-->L29: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~y~0] {1222#true} is VALID [2022-04-14 20:39:39,023 INFO L272 TraceCheckUtils]: 12: Hoare triple {1222#true} [110] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 20)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1222#true} is VALID [2022-04-14 20:39:39,023 INFO L290 TraceCheckUtils]: 13: Hoare triple {1222#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1222#true} is VALID [2022-04-14 20:39:39,023 INFO L290 TraceCheckUtils]: 14: Hoare triple {1222#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1222#true} is VALID [2022-04-14 20:39:39,023 INFO L290 TraceCheckUtils]: 15: Hoare triple {1222#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1222#true} is VALID [2022-04-14 20:39:39,024 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1222#true} {1222#true} [145] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 20)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1222#true} is VALID [2022-04-14 20:39:39,024 INFO L272 TraceCheckUtils]: 17: Hoare triple {1222#true} [113] L29-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1222#true} is VALID [2022-04-14 20:39:39,025 INFO L290 TraceCheckUtils]: 18: Hoare triple {1222#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1281#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-14 20:39:39,025 INFO L290 TraceCheckUtils]: 19: Hoare triple {1281#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1285#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 20:39:39,025 INFO L290 TraceCheckUtils]: 20: Hoare triple {1285#(not (= |assume_abort_if_not_#in~cond| 0))} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1285#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 20:39:39,026 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1285#(not (= |assume_abort_if_not_#in~cond| 0))} {1222#true} [146] assume_abort_if_notEXIT-->L31: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1292#(<= 1 main_~y~0)} is VALID [2022-04-14 20:39:39,026 INFO L290 TraceCheckUtils]: 22: Hoare triple {1292#(<= 1 main_~y~0)} [115] L31-->L38-2: Formula: (and (= v_main_~b~0_2 0) (= v_main_~q~0_2 0) (= v_main_~a~0_2 0) (= v_main_~r~0_2 v_main_~x~0_5)) InVars {main_~x~0=v_main_~x~0_5} OutVars{main_~q~0=v_main_~q~0_2, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0, main_~a~0] {1292#(<= 1 main_~y~0)} is VALID [2022-04-14 20:39:39,027 INFO L290 TraceCheckUtils]: 23: Hoare triple {1292#(<= 1 main_~y~0)} [118] L38-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1292#(<= 1 main_~y~0)} is VALID [2022-04-14 20:39:39,027 INFO L272 TraceCheckUtils]: 24: Hoare triple {1292#(<= 1 main_~y~0)} [120] L39-->__VERIFIER_assertENTRY: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {1222#true} is VALID [2022-04-14 20:39:39,027 INFO L290 TraceCheckUtils]: 25: Hoare triple {1222#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1222#true} is VALID [2022-04-14 20:39:39,027 INFO L290 TraceCheckUtils]: 26: Hoare triple {1222#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1222#true} is VALID [2022-04-14 20:39:39,027 INFO L290 TraceCheckUtils]: 27: Hoare triple {1222#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1222#true} is VALID [2022-04-14 20:39:39,028 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1222#true} {1292#(<= 1 main_~y~0)} [148] __VERIFIER_assertEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {1292#(<= 1 main_~y~0)} is VALID [2022-04-14 20:39:39,028 INFO L272 TraceCheckUtils]: 29: Hoare triple {1292#(<= 1 main_~y~0)} [123] L39-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {1222#true} is VALID [2022-04-14 20:39:39,028 INFO L290 TraceCheckUtils]: 30: Hoare triple {1222#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1222#true} is VALID [2022-04-14 20:39:39,028 INFO L290 TraceCheckUtils]: 31: Hoare triple {1222#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1222#true} is VALID [2022-04-14 20:39:39,028 INFO L290 TraceCheckUtils]: 32: Hoare triple {1222#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1222#true} is VALID [2022-04-14 20:39:39,029 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1222#true} {1292#(<= 1 main_~y~0)} [149] __VERIFIER_assertEXIT-->L40: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {1292#(<= 1 main_~y~0)} is VALID [2022-04-14 20:39:39,030 INFO L290 TraceCheckUtils]: 34: Hoare triple {1292#(<= 1 main_~y~0)} [128] L40-->L47-2: Formula: (and (= v_main_~b~0_4 v_main_~y~0_8) (<= v_main_~y~0_8 v_main_~r~0_5) (= v_main_~a~0_4 1)) InVars {main_~y~0=v_main_~y~0_8, main_~r~0=v_main_~r~0_5} OutVars{main_~y~0=v_main_~y~0_8, main_~b~0=v_main_~b~0_4, main_~r~0=v_main_~r~0_5, main_~a~0=v_main_~a~0_4} AuxVars[] AssignedVars[main_~b~0, main_~a~0] {1332#(<= 1 main_~r~0)} is VALID [2022-04-14 20:39:39,031 INFO L290 TraceCheckUtils]: 35: Hoare triple {1332#(<= 1 main_~r~0)} [134] L47-2-->L48: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1332#(<= 1 main_~r~0)} is VALID [2022-04-14 20:39:39,031 INFO L272 TraceCheckUtils]: 36: Hoare triple {1332#(<= 1 main_~r~0)} [136] L48-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_3| (ite (= (* v_main_~y~0_17 v_main_~a~0_11) v_main_~b~0_12) 1 0)) InVars {main_~y~0=v_main_~y~0_17, main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {1222#true} is VALID [2022-04-14 20:39:39,031 INFO L290 TraceCheckUtils]: 37: Hoare triple {1222#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1222#true} is VALID [2022-04-14 20:39:39,031 INFO L290 TraceCheckUtils]: 38: Hoare triple {1222#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1222#true} is VALID [2022-04-14 20:39:39,032 INFO L290 TraceCheckUtils]: 39: Hoare triple {1222#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1222#true} is VALID [2022-04-14 20:39:39,033 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {1222#true} {1332#(<= 1 main_~r~0)} [150] __VERIFIER_assertEXIT-->L48-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_3| (ite (= (* v_main_~y~0_17 v_main_~a~0_11) v_main_~b~0_12) 1 0)) InVars {main_~y~0=v_main_~y~0_17, main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {1332#(<= 1 main_~r~0)} is VALID [2022-04-14 20:39:39,033 INFO L272 TraceCheckUtils]: 41: Hoare triple {1332#(<= 1 main_~r~0)} [137] L48-1-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~x~0_11 (+ v_main_~r~0_15 (* v_main_~y~0_18 v_main_~q~0_9))) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~q~0=v_main_~q~0_9, main_~y~0=v_main_~y~0_18, main_~x~0=v_main_~x~0_11, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {1222#true} is VALID [2022-04-14 20:39:39,033 INFO L290 TraceCheckUtils]: 42: Hoare triple {1222#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1222#true} is VALID [2022-04-14 20:39:39,033 INFO L290 TraceCheckUtils]: 43: Hoare triple {1222#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1222#true} is VALID [2022-04-14 20:39:39,034 INFO L290 TraceCheckUtils]: 44: Hoare triple {1222#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1222#true} is VALID [2022-04-14 20:39:39,036 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {1222#true} {1332#(<= 1 main_~r~0)} [151] __VERIFIER_assertEXIT-->L49: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= v_main_~x~0_11 (+ v_main_~r~0_15 (* v_main_~y~0_18 v_main_~q~0_9))) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~q~0=v_main_~q~0_9, main_~y~0=v_main_~y~0_18, main_~x~0=v_main_~x~0_11, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {1332#(<= 1 main_~r~0)} is VALID [2022-04-14 20:39:39,037 INFO L272 TraceCheckUtils]: 46: Hoare triple {1332#(<= 1 main_~r~0)} [138] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_5| (ite (<= 0 v_main_~r~0_16) 1 0)) InVars {main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_5|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~r~0] {1369#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 20:39:39,037 INFO L290 TraceCheckUtils]: 47: Hoare triple {1369#(<= 1 |__VERIFIER_assert_#in~cond|)} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1373#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 20:39:39,037 INFO L290 TraceCheckUtils]: 48: Hoare triple {1373#(<= 1 __VERIFIER_assert_~cond)} [125] L15-->L16: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1223#false} is VALID [2022-04-14 20:39:39,038 INFO L290 TraceCheckUtils]: 49: Hoare triple {1223#false} [129] L16-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1223#false} is VALID [2022-04-14 20:39:39,038 INFO L134 CoverageAnalysis]: Checked inductivity of 44 backedges. 14 proven. 0 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2022-04-14 20:39:39,038 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 20:39:39,038 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 20:39:39,038 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1235733238] [2022-04-14 20:39:39,038 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 20:39:39,038 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [299366682] [2022-04-14 20:39:39,038 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [299366682] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 20:39:39,039 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 20:39:39,039 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-14 20:39:39,039 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2138642220] [2022-04-14 20:39:39,039 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 20:39:39,039 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) Word has length 50 [2022-04-14 20:39:39,040 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 20:39:39,040 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-14 20:39:39,067 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:39:39,067 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-14 20:39:39,068 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 20:39:39,068 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-14 20:39:39,068 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-04-14 20:39:39,068 INFO L87 Difference]: Start difference. First operand 70 states and 92 transitions. Second operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-14 20:39:39,373 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:39,373 INFO L93 Difference]: Finished difference Result 74 states and 95 transitions. [2022-04-14 20:39:39,373 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-14 20:39:39,373 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) Word has length 50 [2022-04-14 20:39:39,374 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 20:39:39,374 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-14 20:39:39,376 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-14 20:39:39,376 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-14 20:39:39,377 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-14 20:39:39,377 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 47 transitions. [2022-04-14 20:39:39,411 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:39:39,422 INFO L225 Difference]: With dead ends: 74 [2022-04-14 20:39:39,423 INFO L226 Difference]: Without dead ends: 74 [2022-04-14 20:39:39,423 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 52 GetRequests, 43 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=25, Invalid=85, Unknown=0, NotChecked=0, Total=110 [2022-04-14 20:39:39,424 INFO L913 BasicCegarLoop]: 34 mSDtfsCounter, 16 mSDsluCounter, 126 mSDsCounter, 0 mSdLazyCounter, 125 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 16 SdHoareTripleChecker+Valid, 160 SdHoareTripleChecker+Invalid, 132 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 125 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-14 20:39:39,424 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [16 Valid, 160 Invalid, 132 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 125 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-14 20:39:39,424 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 74 states. [2022-04-14 20:39:39,429 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 74 to 74. [2022-04-14 20:39:39,429 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 20:39:39,429 INFO L82 GeneralOperation]: Start isEquivalent. First operand 74 states. Second operand has 74 states, 41 states have (on average 1.146341463414634) internal successors, (47), 43 states have internal predecessors, (47), 25 states have call successors, (25), 8 states have call predecessors, (25), 7 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-14 20:39:39,430 INFO L74 IsIncluded]: Start isIncluded. First operand 74 states. Second operand has 74 states, 41 states have (on average 1.146341463414634) internal successors, (47), 43 states have internal predecessors, (47), 25 states have call successors, (25), 8 states have call predecessors, (25), 7 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-14 20:39:39,430 INFO L87 Difference]: Start difference. First operand 74 states. Second operand has 74 states, 41 states have (on average 1.146341463414634) internal successors, (47), 43 states have internal predecessors, (47), 25 states have call successors, (25), 8 states have call predecessors, (25), 7 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-14 20:39:39,433 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:39,433 INFO L93 Difference]: Finished difference Result 74 states and 95 transitions. [2022-04-14 20:39:39,433 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 95 transitions. [2022-04-14 20:39:39,434 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:39:39,434 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:39:39,434 INFO L74 IsIncluded]: Start isIncluded. First operand has 74 states, 41 states have (on average 1.146341463414634) internal successors, (47), 43 states have internal predecessors, (47), 25 states have call successors, (25), 8 states have call predecessors, (25), 7 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) Second operand 74 states. [2022-04-14 20:39:39,434 INFO L87 Difference]: Start difference. First operand has 74 states, 41 states have (on average 1.146341463414634) internal successors, (47), 43 states have internal predecessors, (47), 25 states have call successors, (25), 8 states have call predecessors, (25), 7 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) Second operand 74 states. [2022-04-14 20:39:39,437 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:39,437 INFO L93 Difference]: Finished difference Result 74 states and 95 transitions. [2022-04-14 20:39:39,438 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 95 transitions. [2022-04-14 20:39:39,438 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:39:39,438 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:39:39,438 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 20:39:39,438 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 20:39:39,438 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 74 states, 41 states have (on average 1.146341463414634) internal successors, (47), 43 states have internal predecessors, (47), 25 states have call successors, (25), 8 states have call predecessors, (25), 7 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-14 20:39:39,441 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 74 states to 74 states and 95 transitions. [2022-04-14 20:39:39,441 INFO L78 Accepts]: Start accepts. Automaton has 74 states and 95 transitions. Word has length 50 [2022-04-14 20:39:39,441 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 20:39:39,442 INFO L478 AbstractCegarLoop]: Abstraction has 74 states and 95 transitions. [2022-04-14 20:39:39,442 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 3 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (8), 3 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-14 20:39:39,442 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 95 transitions. [2022-04-14 20:39:39,443 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 57 [2022-04-14 20:39:39,443 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 20:39:39,443 INFO L499 BasicCegarLoop]: trace histogram [6, 5, 5, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 20:39:39,482 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-14 20:39:39,656 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:39:39,656 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 20:39:39,657 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 20:39:39,657 INFO L85 PathProgramCache]: Analyzing trace with hash -810208713, now seen corresponding path program 1 times [2022-04-14 20:39:39,657 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 20:39:39,657 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [312160771] [2022-04-14 20:39:39,657 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:39:39,657 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 20:39:39,676 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 20:39:39,676 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [285372271] [2022-04-14 20:39:39,676 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:39:39,676 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:39:39,676 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 20:39:39,677 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 20:39:39,678 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-14 20:39:39,726 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:39:39,727 INFO L263 TraceCheckSpWp]: Trace formula consists of 144 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-14 20:39:39,736 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:39:39,737 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 20:39:40,009 INFO L272 TraceCheckUtils]: 0: Hoare triple {1681#true} [101] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:40,009 INFO L290 TraceCheckUtils]: 1: Hoare triple {1681#true} [103] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select |v_#length_1| 2) 14) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1681#true} is VALID [2022-04-14 20:39:40,009 INFO L290 TraceCheckUtils]: 2: Hoare triple {1681#true} [106] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:40,009 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1681#true} {1681#true} [143] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:40,009 INFO L272 TraceCheckUtils]: 4: Hoare triple {1681#true} [102] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:40,009 INFO L290 TraceCheckUtils]: 5: Hoare triple {1681#true} [105] mainENTRY-->L27: Formula: (and (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_1, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1, main_~a~0=v_main_~a~0_1} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~r~0, main_~a~0] {1681#true} is VALID [2022-04-14 20:39:40,010 INFO L272 TraceCheckUtils]: 6: Hoare triple {1681#true} [107] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 20)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {1681#true} is VALID [2022-04-14 20:39:40,010 INFO L290 TraceCheckUtils]: 7: Hoare triple {1681#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1681#true} is VALID [2022-04-14 20:39:40,010 INFO L290 TraceCheckUtils]: 8: Hoare triple {1681#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:40,010 INFO L290 TraceCheckUtils]: 9: Hoare triple {1681#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:40,010 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1681#true} {1681#true} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 20)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {1681#true} is VALID [2022-04-14 20:39:40,010 INFO L290 TraceCheckUtils]: 11: Hoare triple {1681#true} [108] L27-1-->L29: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~y~0] {1681#true} is VALID [2022-04-14 20:39:40,010 INFO L272 TraceCheckUtils]: 12: Hoare triple {1681#true} [110] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 20)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1681#true} is VALID [2022-04-14 20:39:40,010 INFO L290 TraceCheckUtils]: 13: Hoare triple {1681#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1681#true} is VALID [2022-04-14 20:39:40,010 INFO L290 TraceCheckUtils]: 14: Hoare triple {1681#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:40,011 INFO L290 TraceCheckUtils]: 15: Hoare triple {1681#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:40,011 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1681#true} {1681#true} [145] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 20)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1681#true} is VALID [2022-04-14 20:39:40,011 INFO L272 TraceCheckUtils]: 17: Hoare triple {1681#true} [113] L29-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1681#true} is VALID [2022-04-14 20:39:40,011 INFO L290 TraceCheckUtils]: 18: Hoare triple {1681#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1681#true} is VALID [2022-04-14 20:39:40,011 INFO L290 TraceCheckUtils]: 19: Hoare triple {1681#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:40,011 INFO L290 TraceCheckUtils]: 20: Hoare triple {1681#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:40,011 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1681#true} {1681#true} [146] assume_abort_if_notEXIT-->L31: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1681#true} is VALID [2022-04-14 20:39:40,011 INFO L290 TraceCheckUtils]: 22: Hoare triple {1681#true} [115] L31-->L38-2: Formula: (and (= v_main_~b~0_2 0) (= v_main_~q~0_2 0) (= v_main_~a~0_2 0) (= v_main_~r~0_2 v_main_~x~0_5)) InVars {main_~x~0=v_main_~x~0_5} OutVars{main_~q~0=v_main_~q~0_2, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0, main_~a~0] {1681#true} is VALID [2022-04-14 20:39:40,011 INFO L290 TraceCheckUtils]: 23: Hoare triple {1681#true} [118] L38-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:40,012 INFO L272 TraceCheckUtils]: 24: Hoare triple {1681#true} [120] L39-->__VERIFIER_assertENTRY: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {1681#true} is VALID [2022-04-14 20:39:40,012 INFO L290 TraceCheckUtils]: 25: Hoare triple {1681#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1681#true} is VALID [2022-04-14 20:39:40,012 INFO L290 TraceCheckUtils]: 26: Hoare triple {1681#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:40,012 INFO L290 TraceCheckUtils]: 27: Hoare triple {1681#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:40,012 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1681#true} {1681#true} [148] __VERIFIER_assertEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {1681#true} is VALID [2022-04-14 20:39:40,012 INFO L272 TraceCheckUtils]: 29: Hoare triple {1681#true} [123] L39-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {1681#true} is VALID [2022-04-14 20:39:40,012 INFO L290 TraceCheckUtils]: 30: Hoare triple {1681#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1681#true} is VALID [2022-04-14 20:39:40,012 INFO L290 TraceCheckUtils]: 31: Hoare triple {1681#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:40,012 INFO L290 TraceCheckUtils]: 32: Hoare triple {1681#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:40,013 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1681#true} {1681#true} [149] __VERIFIER_assertEXIT-->L40: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {1681#true} is VALID [2022-04-14 20:39:40,013 INFO L290 TraceCheckUtils]: 34: Hoare triple {1681#true} [128] L40-->L47-2: Formula: (and (= v_main_~b~0_4 v_main_~y~0_8) (<= v_main_~y~0_8 v_main_~r~0_5) (= v_main_~a~0_4 1)) InVars {main_~y~0=v_main_~y~0_8, main_~r~0=v_main_~r~0_5} OutVars{main_~y~0=v_main_~y~0_8, main_~b~0=v_main_~b~0_4, main_~r~0=v_main_~r~0_5, main_~a~0=v_main_~a~0_4} AuxVars[] AssignedVars[main_~b~0, main_~a~0] {1681#true} is VALID [2022-04-14 20:39:40,013 INFO L290 TraceCheckUtils]: 35: Hoare triple {1681#true} [134] L47-2-->L48: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:40,013 INFO L272 TraceCheckUtils]: 36: Hoare triple {1681#true} [136] L48-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_3| (ite (= (* v_main_~y~0_17 v_main_~a~0_11) v_main_~b~0_12) 1 0)) InVars {main_~y~0=v_main_~y~0_17, main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {1681#true} is VALID [2022-04-14 20:39:40,014 INFO L290 TraceCheckUtils]: 37: Hoare triple {1681#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1797#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-14 20:39:40,015 INFO L290 TraceCheckUtils]: 38: Hoare triple {1797#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1801#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 20:39:40,015 INFO L290 TraceCheckUtils]: 39: Hoare triple {1801#(not (= |__VERIFIER_assert_#in~cond| 0))} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1801#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 20:39:40,016 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {1801#(not (= |__VERIFIER_assert_#in~cond| 0))} {1681#true} [150] __VERIFIER_assertEXIT-->L48-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_3| (ite (= (* v_main_~y~0_17 v_main_~a~0_11) v_main_~b~0_12) 1 0)) InVars {main_~y~0=v_main_~y~0_17, main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {1808#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-14 20:39:40,016 INFO L272 TraceCheckUtils]: 41: Hoare triple {1808#(= main_~b~0 (* main_~a~0 main_~y~0))} [137] L48-1-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~x~0_11 (+ v_main_~r~0_15 (* v_main_~y~0_18 v_main_~q~0_9))) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~q~0=v_main_~q~0_9, main_~y~0=v_main_~y~0_18, main_~x~0=v_main_~x~0_11, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {1681#true} is VALID [2022-04-14 20:39:40,016 INFO L290 TraceCheckUtils]: 42: Hoare triple {1681#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1681#true} is VALID [2022-04-14 20:39:40,016 INFO L290 TraceCheckUtils]: 43: Hoare triple {1681#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:40,016 INFO L290 TraceCheckUtils]: 44: Hoare triple {1681#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:40,017 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {1681#true} {1808#(= main_~b~0 (* main_~a~0 main_~y~0))} [151] __VERIFIER_assertEXIT-->L49: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= v_main_~x~0_11 (+ v_main_~r~0_15 (* v_main_~y~0_18 v_main_~q~0_9))) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~q~0=v_main_~q~0_9, main_~y~0=v_main_~y~0_18, main_~x~0=v_main_~x~0_11, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {1808#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-14 20:39:40,017 INFO L272 TraceCheckUtils]: 46: Hoare triple {1808#(= main_~b~0 (* main_~a~0 main_~y~0))} [138] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_5| (ite (<= 0 v_main_~r~0_16) 1 0)) InVars {main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_5|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~r~0] {1681#true} is VALID [2022-04-14 20:39:40,017 INFO L290 TraceCheckUtils]: 47: Hoare triple {1681#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1681#true} is VALID [2022-04-14 20:39:40,017 INFO L290 TraceCheckUtils]: 48: Hoare triple {1681#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:40,017 INFO L290 TraceCheckUtils]: 49: Hoare triple {1681#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:40,022 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {1681#true} {1808#(= main_~b~0 (* main_~a~0 main_~y~0))} [152] __VERIFIER_assertEXIT-->L50: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_5| (ite (<= 0 v_main_~r~0_16) 1 0)) InVars {main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_5|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~r~0] {1808#(= main_~b~0 (* main_~a~0 main_~y~0))} is VALID [2022-04-14 20:39:40,023 INFO L290 TraceCheckUtils]: 51: Hoare triple {1808#(= main_~b~0 (* main_~a~0 main_~y~0))} [140] L50-->L55: Formula: (<= (* v_main_~b~0_7 2) v_main_~r~0_9) InVars {main_~b~0=v_main_~b~0_7, main_~r~0=v_main_~r~0_9} OutVars{main_~b~0=v_main_~b~0_7, main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[] {1842#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} is VALID [2022-04-14 20:39:40,024 INFO L272 TraceCheckUtils]: 52: Hoare triple {1842#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} [142] L55-->__VERIFIER_assertENTRY: Formula: (= (ite (<= (* (* v_main_~y~0_19 v_main_~a~0_12) 2) v_main_~r~0_17) 1 0) |v___VERIFIER_assert_#in~condInParam_6|) InVars {main_~y~0=v_main_~y~0_19, main_~r~0=v_main_~r~0_17, main_~a~0=v_main_~a~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_6|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~r~0, main_~a~0] {1846#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 20:39:40,024 INFO L290 TraceCheckUtils]: 53: Hoare triple {1846#(<= 1 |__VERIFIER_assert_#in~cond|)} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1850#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 20:39:40,024 INFO L290 TraceCheckUtils]: 54: Hoare triple {1850#(<= 1 __VERIFIER_assert_~cond)} [125] L15-->L16: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1682#false} is VALID [2022-04-14 20:39:40,024 INFO L290 TraceCheckUtils]: 55: Hoare triple {1682#false} [129] L16-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#false} is VALID [2022-04-14 20:39:40,025 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 15 proven. 7 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-04-14 20:39:40,025 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 20:39:44,484 INFO L290 TraceCheckUtils]: 55: Hoare triple {1682#false} [129] L16-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1682#false} is VALID [2022-04-14 20:39:44,485 INFO L290 TraceCheckUtils]: 54: Hoare triple {1850#(<= 1 __VERIFIER_assert_~cond)} [125] L15-->L16: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1682#false} is VALID [2022-04-14 20:39:44,486 INFO L290 TraceCheckUtils]: 53: Hoare triple {1846#(<= 1 |__VERIFIER_assert_#in~cond|)} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1850#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 20:39:44,488 INFO L272 TraceCheckUtils]: 52: Hoare triple {1842#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} [142] L55-->__VERIFIER_assertENTRY: Formula: (= (ite (<= (* (* v_main_~y~0_19 v_main_~a~0_12) 2) v_main_~r~0_17) 1 0) |v___VERIFIER_assert_#in~condInParam_6|) InVars {main_~y~0=v_main_~y~0_19, main_~r~0=v_main_~r~0_17, main_~a~0=v_main_~a~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_6|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~r~0, main_~a~0] {1846#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 20:39:44,489 INFO L290 TraceCheckUtils]: 51: Hoare triple {1869#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} [140] L50-->L55: Formula: (<= (* v_main_~b~0_7 2) v_main_~r~0_9) InVars {main_~b~0=v_main_~b~0_7, main_~r~0=v_main_~r~0_9} OutVars{main_~b~0=v_main_~b~0_7, main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[] {1842#(<= (* 2 (* main_~a~0 main_~y~0)) main_~r~0)} is VALID [2022-04-14 20:39:44,495 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {1681#true} {1869#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} [152] __VERIFIER_assertEXIT-->L50: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_5| (ite (<= 0 v_main_~r~0_16) 1 0)) InVars {main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_5|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~r~0] {1869#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} is VALID [2022-04-14 20:39:44,495 INFO L290 TraceCheckUtils]: 49: Hoare triple {1681#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:44,495 INFO L290 TraceCheckUtils]: 48: Hoare triple {1681#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:44,496 INFO L290 TraceCheckUtils]: 47: Hoare triple {1681#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1681#true} is VALID [2022-04-14 20:39:44,496 INFO L272 TraceCheckUtils]: 46: Hoare triple {1869#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} [138] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_5| (ite (<= 0 v_main_~r~0_16) 1 0)) InVars {main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_5|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~r~0] {1681#true} is VALID [2022-04-14 20:39:44,496 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {1681#true} {1869#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} [151] __VERIFIER_assertEXIT-->L49: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= v_main_~x~0_11 (+ v_main_~r~0_15 (* v_main_~y~0_18 v_main_~q~0_9))) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~q~0=v_main_~q~0_9, main_~y~0=v_main_~y~0_18, main_~x~0=v_main_~x~0_11, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {1869#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} is VALID [2022-04-14 20:39:44,497 INFO L290 TraceCheckUtils]: 44: Hoare triple {1681#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:44,497 INFO L290 TraceCheckUtils]: 43: Hoare triple {1681#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:44,497 INFO L290 TraceCheckUtils]: 42: Hoare triple {1681#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1681#true} is VALID [2022-04-14 20:39:44,497 INFO L272 TraceCheckUtils]: 41: Hoare triple {1869#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} [137] L48-1-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~x~0_11 (+ v_main_~r~0_15 (* v_main_~y~0_18 v_main_~q~0_9))) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~q~0=v_main_~q~0_9, main_~y~0=v_main_~y~0_18, main_~x~0=v_main_~x~0_11, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {1681#true} is VALID [2022-04-14 20:39:44,498 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {1801#(not (= |__VERIFIER_assert_#in~cond| 0))} {1681#true} [150] __VERIFIER_assertEXIT-->L48-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_3| (ite (= (* v_main_~y~0_17 v_main_~a~0_11) v_main_~b~0_12) 1 0)) InVars {main_~y~0=v_main_~y~0_17, main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {1869#(<= (* 2 (* main_~a~0 main_~y~0)) (* main_~b~0 2))} is VALID [2022-04-14 20:39:44,498 INFO L290 TraceCheckUtils]: 39: Hoare triple {1801#(not (= |__VERIFIER_assert_#in~cond| 0))} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1801#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 20:39:44,498 INFO L290 TraceCheckUtils]: 38: Hoare triple {1912#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1801#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 20:39:44,499 INFO L290 TraceCheckUtils]: 37: Hoare triple {1681#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1912#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-14 20:39:44,499 INFO L272 TraceCheckUtils]: 36: Hoare triple {1681#true} [136] L48-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_3| (ite (= (* v_main_~y~0_17 v_main_~a~0_11) v_main_~b~0_12) 1 0)) InVars {main_~y~0=v_main_~y~0_17, main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {1681#true} is VALID [2022-04-14 20:39:44,499 INFO L290 TraceCheckUtils]: 35: Hoare triple {1681#true} [134] L47-2-->L48: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:44,499 INFO L290 TraceCheckUtils]: 34: Hoare triple {1681#true} [128] L40-->L47-2: Formula: (and (= v_main_~b~0_4 v_main_~y~0_8) (<= v_main_~y~0_8 v_main_~r~0_5) (= v_main_~a~0_4 1)) InVars {main_~y~0=v_main_~y~0_8, main_~r~0=v_main_~r~0_5} OutVars{main_~y~0=v_main_~y~0_8, main_~b~0=v_main_~b~0_4, main_~r~0=v_main_~r~0_5, main_~a~0=v_main_~a~0_4} AuxVars[] AssignedVars[main_~b~0, main_~a~0] {1681#true} is VALID [2022-04-14 20:39:44,499 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {1681#true} {1681#true} [149] __VERIFIER_assertEXIT-->L40: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {1681#true} is VALID [2022-04-14 20:39:44,499 INFO L290 TraceCheckUtils]: 32: Hoare triple {1681#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:44,499 INFO L290 TraceCheckUtils]: 31: Hoare triple {1681#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:44,499 INFO L290 TraceCheckUtils]: 30: Hoare triple {1681#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1681#true} is VALID [2022-04-14 20:39:44,500 INFO L272 TraceCheckUtils]: 29: Hoare triple {1681#true} [123] L39-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {1681#true} is VALID [2022-04-14 20:39:44,500 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1681#true} {1681#true} [148] __VERIFIER_assertEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {1681#true} is VALID [2022-04-14 20:39:44,500 INFO L290 TraceCheckUtils]: 27: Hoare triple {1681#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:44,500 INFO L290 TraceCheckUtils]: 26: Hoare triple {1681#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:44,500 INFO L290 TraceCheckUtils]: 25: Hoare triple {1681#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1681#true} is VALID [2022-04-14 20:39:44,500 INFO L272 TraceCheckUtils]: 24: Hoare triple {1681#true} [120] L39-->__VERIFIER_assertENTRY: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {1681#true} is VALID [2022-04-14 20:39:44,500 INFO L290 TraceCheckUtils]: 23: Hoare triple {1681#true} [118] L38-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:44,500 INFO L290 TraceCheckUtils]: 22: Hoare triple {1681#true} [115] L31-->L38-2: Formula: (and (= v_main_~b~0_2 0) (= v_main_~q~0_2 0) (= v_main_~a~0_2 0) (= v_main_~r~0_2 v_main_~x~0_5)) InVars {main_~x~0=v_main_~x~0_5} OutVars{main_~q~0=v_main_~q~0_2, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0, main_~a~0] {1681#true} is VALID [2022-04-14 20:39:44,500 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1681#true} {1681#true} [146] assume_abort_if_notEXIT-->L31: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1681#true} is VALID [2022-04-14 20:39:44,500 INFO L290 TraceCheckUtils]: 20: Hoare triple {1681#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:44,500 INFO L290 TraceCheckUtils]: 19: Hoare triple {1681#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:44,501 INFO L290 TraceCheckUtils]: 18: Hoare triple {1681#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1681#true} is VALID [2022-04-14 20:39:44,501 INFO L272 TraceCheckUtils]: 17: Hoare triple {1681#true} [113] L29-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1681#true} is VALID [2022-04-14 20:39:44,501 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {1681#true} {1681#true} [145] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 20)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1681#true} is VALID [2022-04-14 20:39:44,501 INFO L290 TraceCheckUtils]: 15: Hoare triple {1681#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:44,501 INFO L290 TraceCheckUtils]: 14: Hoare triple {1681#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:44,501 INFO L290 TraceCheckUtils]: 13: Hoare triple {1681#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1681#true} is VALID [2022-04-14 20:39:44,501 INFO L272 TraceCheckUtils]: 12: Hoare triple {1681#true} [110] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 20)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1681#true} is VALID [2022-04-14 20:39:44,501 INFO L290 TraceCheckUtils]: 11: Hoare triple {1681#true} [108] L27-1-->L29: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~y~0] {1681#true} is VALID [2022-04-14 20:39:44,501 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1681#true} {1681#true} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 20)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {1681#true} is VALID [2022-04-14 20:39:44,501 INFO L290 TraceCheckUtils]: 9: Hoare triple {1681#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:44,501 INFO L290 TraceCheckUtils]: 8: Hoare triple {1681#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:44,502 INFO L290 TraceCheckUtils]: 7: Hoare triple {1681#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1681#true} is VALID [2022-04-14 20:39:44,502 INFO L272 TraceCheckUtils]: 6: Hoare triple {1681#true} [107] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 20)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {1681#true} is VALID [2022-04-14 20:39:44,502 INFO L290 TraceCheckUtils]: 5: Hoare triple {1681#true} [105] mainENTRY-->L27: Formula: (and (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_1, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1, main_~a~0=v_main_~a~0_1} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~r~0, main_~a~0] {1681#true} is VALID [2022-04-14 20:39:44,502 INFO L272 TraceCheckUtils]: 4: Hoare triple {1681#true} [102] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:44,502 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1681#true} {1681#true} [143] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:44,502 INFO L290 TraceCheckUtils]: 2: Hoare triple {1681#true} [106] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:44,502 INFO L290 TraceCheckUtils]: 1: Hoare triple {1681#true} [103] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select |v_#length_1| 2) 14) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1681#true} is VALID [2022-04-14 20:39:44,502 INFO L272 TraceCheckUtils]: 0: Hoare triple {1681#true} [101] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1681#true} is VALID [2022-04-14 20:39:44,502 INFO L134 CoverageAnalysis]: Checked inductivity of 62 backedges. 15 proven. 7 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-04-14 20:39:44,503 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 20:39:44,503 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [312160771] [2022-04-14 20:39:44,503 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 20:39:44,503 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [285372271] [2022-04-14 20:39:44,503 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [285372271] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-14 20:39:44,503 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-14 20:39:44,503 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-14 20:39:44,503 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1043409888] [2022-04-14 20:39:44,503 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-14 20:39:44,504 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) Word has length 56 [2022-04-14 20:39:44,504 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 20:39:44,504 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) [2022-04-14 20:39:44,543 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:39:44,543 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-14 20:39:44,543 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 20:39:44,544 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-14 20:39:44,544 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=68, Unknown=0, NotChecked=0, Total=90 [2022-04-14 20:39:44,544 INFO L87 Difference]: Start difference. First operand 74 states and 95 transitions. Second operand has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) [2022-04-14 20:39:44,822 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:44,822 INFO L93 Difference]: Finished difference Result 78 states and 98 transitions. [2022-04-14 20:39:44,822 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-14 20:39:44,823 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) Word has length 56 [2022-04-14 20:39:44,823 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 20:39:44,823 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) [2022-04-14 20:39:44,824 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-14 20:39:44,824 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) [2022-04-14 20:39:44,825 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-14 20:39:44,825 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 47 transitions. [2022-04-14 20:39:44,867 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:39:44,868 INFO L225 Difference]: With dead ends: 78 [2022-04-14 20:39:44,868 INFO L226 Difference]: Without dead ends: 78 [2022-04-14 20:39:44,868 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 114 GetRequests, 102 SyntacticMatches, 1 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=40, Invalid=116, Unknown=0, NotChecked=0, Total=156 [2022-04-14 20:39:44,869 INFO L913 BasicCegarLoop]: 28 mSDtfsCounter, 24 mSDsluCounter, 108 mSDsCounter, 0 mSdLazyCounter, 125 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 26 SdHoareTripleChecker+Valid, 136 SdHoareTripleChecker+Invalid, 135 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 125 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-14 20:39:44,869 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [26 Valid, 136 Invalid, 135 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 125 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-14 20:39:44,870 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 78 states. [2022-04-14 20:39:44,873 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 78 to 78. [2022-04-14 20:39:44,873 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 20:39:44,873 INFO L82 GeneralOperation]: Start isEquivalent. First operand 78 states. Second operand has 78 states, 44 states have (on average 1.1363636363636365) internal successors, (50), 46 states have internal predecessors, (50), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-14 20:39:44,874 INFO L74 IsIncluded]: Start isIncluded. First operand 78 states. Second operand has 78 states, 44 states have (on average 1.1363636363636365) internal successors, (50), 46 states have internal predecessors, (50), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-14 20:39:44,874 INFO L87 Difference]: Start difference. First operand 78 states. Second operand has 78 states, 44 states have (on average 1.1363636363636365) internal successors, (50), 46 states have internal predecessors, (50), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-14 20:39:44,876 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:44,876 INFO L93 Difference]: Finished difference Result 78 states and 98 transitions. [2022-04-14 20:39:44,876 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 98 transitions. [2022-04-14 20:39:44,877 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:39:44,877 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:39:44,877 INFO L74 IsIncluded]: Start isIncluded. First operand has 78 states, 44 states have (on average 1.1363636363636365) internal successors, (50), 46 states have internal predecessors, (50), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) Second operand 78 states. [2022-04-14 20:39:44,877 INFO L87 Difference]: Start difference. First operand has 78 states, 44 states have (on average 1.1363636363636365) internal successors, (50), 46 states have internal predecessors, (50), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) Second operand 78 states. [2022-04-14 20:39:44,880 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:44,880 INFO L93 Difference]: Finished difference Result 78 states and 98 transitions. [2022-04-14 20:39:44,880 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 98 transitions. [2022-04-14 20:39:44,880 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:39:44,880 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:39:44,880 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 20:39:44,880 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 20:39:44,881 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 78 states, 44 states have (on average 1.1363636363636365) internal successors, (50), 46 states have internal predecessors, (50), 25 states have call successors, (25), 9 states have call predecessors, (25), 8 states have return successors, (23), 22 states have call predecessors, (23), 23 states have call successors, (23) [2022-04-14 20:39:44,882 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 78 states to 78 states and 98 transitions. [2022-04-14 20:39:44,883 INFO L78 Accepts]: Start accepts. Automaton has 78 states and 98 transitions. Word has length 56 [2022-04-14 20:39:44,883 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 20:39:44,883 INFO L478 AbstractCegarLoop]: Abstraction has 78 states and 98 transitions. [2022-04-14 20:39:44,883 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 7 states have internal predecessors, (24), 4 states have call successors, (13), 2 states have call predecessors, (13), 2 states have return successors, (12), 3 states have call predecessors, (12), 3 states have call successors, (12) [2022-04-14 20:39:44,883 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 98 transitions. [2022-04-14 20:39:44,884 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-04-14 20:39:44,884 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 20:39:44,884 INFO L499 BasicCegarLoop]: trace histogram [7, 6, 6, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 20:39:44,900 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-14 20:39:45,084 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:39:45,084 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 20:39:45,085 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 20:39:45,085 INFO L85 PathProgramCache]: Analyzing trace with hash -1603019557, now seen corresponding path program 1 times [2022-04-14 20:39:45,085 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 20:39:45,085 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [819651253] [2022-04-14 20:39:45,085 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:39:45,085 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 20:39:45,097 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 20:39:45,098 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [399127817] [2022-04-14 20:39:45,098 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 20:39:45,098 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:39:45,098 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 20:39:45,099 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 20:39:45,100 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-14 20:39:45,140 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:39:45,141 INFO L263 TraceCheckSpWp]: Trace formula consists of 158 conjuncts, 19 conjunts are in the unsatisfiable core [2022-04-14 20:39:45,151 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 20:39:45,152 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 20:39:45,542 INFO L272 TraceCheckUtils]: 0: Hoare triple {2344#true} [101] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,542 INFO L290 TraceCheckUtils]: 1: Hoare triple {2344#true} [103] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select |v_#length_1| 2) 14) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {2344#true} is VALID [2022-04-14 20:39:45,542 INFO L290 TraceCheckUtils]: 2: Hoare triple {2344#true} [106] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,543 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2344#true} {2344#true} [143] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,543 INFO L272 TraceCheckUtils]: 4: Hoare triple {2344#true} [102] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,543 INFO L290 TraceCheckUtils]: 5: Hoare triple {2344#true} [105] mainENTRY-->L27: Formula: (and (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_1, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1, main_~a~0=v_main_~a~0_1} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~r~0, main_~a~0] {2344#true} is VALID [2022-04-14 20:39:45,543 INFO L272 TraceCheckUtils]: 6: Hoare triple {2344#true} [107] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 20)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {2344#true} is VALID [2022-04-14 20:39:45,543 INFO L290 TraceCheckUtils]: 7: Hoare triple {2344#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2344#true} is VALID [2022-04-14 20:39:45,543 INFO L290 TraceCheckUtils]: 8: Hoare triple {2344#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,543 INFO L290 TraceCheckUtils]: 9: Hoare triple {2344#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,543 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2344#true} {2344#true} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 20)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {2344#true} is VALID [2022-04-14 20:39:45,543 INFO L290 TraceCheckUtils]: 11: Hoare triple {2344#true} [108] L27-1-->L29: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~y~0] {2344#true} is VALID [2022-04-14 20:39:45,543 INFO L272 TraceCheckUtils]: 12: Hoare triple {2344#true} [110] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 20)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {2344#true} is VALID [2022-04-14 20:39:45,543 INFO L290 TraceCheckUtils]: 13: Hoare triple {2344#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2344#true} is VALID [2022-04-14 20:39:45,544 INFO L290 TraceCheckUtils]: 14: Hoare triple {2344#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,544 INFO L290 TraceCheckUtils]: 15: Hoare triple {2344#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,544 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2344#true} {2344#true} [145] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 20)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {2344#true} is VALID [2022-04-14 20:39:45,544 INFO L272 TraceCheckUtils]: 17: Hoare triple {2344#true} [113] L29-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {2344#true} is VALID [2022-04-14 20:39:45,544 INFO L290 TraceCheckUtils]: 18: Hoare triple {2344#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2344#true} is VALID [2022-04-14 20:39:45,544 INFO L290 TraceCheckUtils]: 19: Hoare triple {2344#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,544 INFO L290 TraceCheckUtils]: 20: Hoare triple {2344#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,544 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2344#true} {2344#true} [146] assume_abort_if_notEXIT-->L31: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {2344#true} is VALID [2022-04-14 20:39:45,545 INFO L290 TraceCheckUtils]: 22: Hoare triple {2344#true} [115] L31-->L38-2: Formula: (and (= v_main_~b~0_2 0) (= v_main_~q~0_2 0) (= v_main_~a~0_2 0) (= v_main_~r~0_2 v_main_~x~0_5)) InVars {main_~x~0=v_main_~x~0_5} OutVars{main_~q~0=v_main_~q~0_2, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0, main_~a~0] {2415#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-14 20:39:45,545 INFO L290 TraceCheckUtils]: 23: Hoare triple {2415#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} [118] L38-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2415#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-14 20:39:45,545 INFO L272 TraceCheckUtils]: 24: Hoare triple {2415#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} [120] L39-->__VERIFIER_assertENTRY: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {2344#true} is VALID [2022-04-14 20:39:45,545 INFO L290 TraceCheckUtils]: 25: Hoare triple {2344#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2344#true} is VALID [2022-04-14 20:39:45,545 INFO L290 TraceCheckUtils]: 26: Hoare triple {2344#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,545 INFO L290 TraceCheckUtils]: 27: Hoare triple {2344#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,546 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2344#true} {2415#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} [148] __VERIFIER_assertEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {2415#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-14 20:39:45,546 INFO L272 TraceCheckUtils]: 29: Hoare triple {2415#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} [123] L39-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {2344#true} is VALID [2022-04-14 20:39:45,546 INFO L290 TraceCheckUtils]: 30: Hoare triple {2344#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2344#true} is VALID [2022-04-14 20:39:45,546 INFO L290 TraceCheckUtils]: 31: Hoare triple {2344#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,546 INFO L290 TraceCheckUtils]: 32: Hoare triple {2344#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,547 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2344#true} {2415#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} [149] __VERIFIER_assertEXIT-->L40: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {2415#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} is VALID [2022-04-14 20:39:45,547 INFO L290 TraceCheckUtils]: 34: Hoare triple {2415#(and (= main_~x~0 main_~r~0) (= main_~q~0 0))} [128] L40-->L47-2: Formula: (and (= v_main_~b~0_4 v_main_~y~0_8) (<= v_main_~y~0_8 v_main_~r~0_5) (= v_main_~a~0_4 1)) InVars {main_~y~0=v_main_~y~0_8, main_~r~0=v_main_~r~0_5} OutVars{main_~y~0=v_main_~y~0_8, main_~b~0=v_main_~b~0_4, main_~r~0=v_main_~r~0_5, main_~a~0=v_main_~a~0_4} AuxVars[] AssignedVars[main_~b~0, main_~a~0] {2452#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 20:39:45,547 INFO L290 TraceCheckUtils]: 35: Hoare triple {2452#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} [134] L47-2-->L48: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2452#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 20:39:45,548 INFO L272 TraceCheckUtils]: 36: Hoare triple {2452#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} [136] L48-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_3| (ite (= (* v_main_~y~0_17 v_main_~a~0_11) v_main_~b~0_12) 1 0)) InVars {main_~y~0=v_main_~y~0_17, main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {2344#true} is VALID [2022-04-14 20:39:45,548 INFO L290 TraceCheckUtils]: 37: Hoare triple {2344#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2344#true} is VALID [2022-04-14 20:39:45,548 INFO L290 TraceCheckUtils]: 38: Hoare triple {2344#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,548 INFO L290 TraceCheckUtils]: 39: Hoare triple {2344#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,548 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {2344#true} {2452#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} [150] __VERIFIER_assertEXIT-->L48-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_3| (ite (= (* v_main_~y~0_17 v_main_~a~0_11) v_main_~b~0_12) 1 0)) InVars {main_~y~0=v_main_~y~0_17, main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {2452#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 20:39:45,548 INFO L272 TraceCheckUtils]: 41: Hoare triple {2452#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} [137] L48-1-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~x~0_11 (+ v_main_~r~0_15 (* v_main_~y~0_18 v_main_~q~0_9))) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~q~0=v_main_~q~0_9, main_~y~0=v_main_~y~0_18, main_~x~0=v_main_~x~0_11, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {2344#true} is VALID [2022-04-14 20:39:45,549 INFO L290 TraceCheckUtils]: 42: Hoare triple {2344#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2344#true} is VALID [2022-04-14 20:39:45,549 INFO L290 TraceCheckUtils]: 43: Hoare triple {2344#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,549 INFO L290 TraceCheckUtils]: 44: Hoare triple {2344#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,549 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2344#true} {2452#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} [151] __VERIFIER_assertEXIT-->L49: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= v_main_~x~0_11 (+ v_main_~r~0_15 (* v_main_~y~0_18 v_main_~q~0_9))) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~q~0=v_main_~q~0_9, main_~y~0=v_main_~y~0_18, main_~x~0=v_main_~x~0_11, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {2452#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 20:39:45,549 INFO L272 TraceCheckUtils]: 46: Hoare triple {2452#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} [138] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_5| (ite (<= 0 v_main_~r~0_16) 1 0)) InVars {main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_5|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~r~0] {2344#true} is VALID [2022-04-14 20:39:45,549 INFO L290 TraceCheckUtils]: 47: Hoare triple {2344#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2344#true} is VALID [2022-04-14 20:39:45,549 INFO L290 TraceCheckUtils]: 48: Hoare triple {2344#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,549 INFO L290 TraceCheckUtils]: 49: Hoare triple {2344#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,550 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2344#true} {2452#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} [152] __VERIFIER_assertEXIT-->L50: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_5| (ite (<= 0 v_main_~r~0_16) 1 0)) InVars {main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_5|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~r~0] {2452#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 20:39:45,550 INFO L290 TraceCheckUtils]: 51: Hoare triple {2452#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (= main_~b~0 main_~y~0) (= main_~q~0 0))} [139] L50-->L47-3: Formula: (not (<= (* v_main_~b~0_6 2) v_main_~r~0_8)) InVars {main_~b~0=v_main_~b~0_6, main_~r~0=v_main_~r~0_8} OutVars{main_~b~0=v_main_~b~0_6, main_~r~0=v_main_~r~0_8} AuxVars[] AssignedVars[] {2504#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (not (<= (* main_~b~0 2) main_~r~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0))} is VALID [2022-04-14 20:39:45,551 INFO L290 TraceCheckUtils]: 52: Hoare triple {2504#(and (= main_~a~0 1) (= main_~x~0 main_~r~0) (<= main_~y~0 main_~r~0) (not (<= (* main_~b~0 2) main_~r~0)) (= main_~b~0 main_~y~0) (= main_~q~0 0))} [135] L47-3-->L38-2: Formula: (and (= v_main_~q~0_5 (+ v_main_~a~0_9 v_main_~q~0_6)) (= v_main_~r~0_11 (+ v_main_~r~0_12 (* (- 1) v_main_~b~0_10)))) InVars {main_~q~0=v_main_~q~0_6, main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_12, main_~a~0=v_main_~a~0_9} OutVars{main_~q~0=v_main_~q~0_5, main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_11, main_~a~0=v_main_~a~0_9} AuxVars[] AssignedVars[main_~q~0, main_~r~0] {2508#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} is VALID [2022-04-14 20:39:45,551 INFO L290 TraceCheckUtils]: 53: Hoare triple {2508#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} [118] L38-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2508#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} is VALID [2022-04-14 20:39:45,552 INFO L272 TraceCheckUtils]: 54: Hoare triple {2508#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} [120] L39-->__VERIFIER_assertENTRY: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {2344#true} is VALID [2022-04-14 20:39:45,552 INFO L290 TraceCheckUtils]: 55: Hoare triple {2344#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2344#true} is VALID [2022-04-14 20:39:45,552 INFO L290 TraceCheckUtils]: 56: Hoare triple {2344#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,552 INFO L290 TraceCheckUtils]: 57: Hoare triple {2344#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,552 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {2344#true} {2508#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} [148] __VERIFIER_assertEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {2508#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} is VALID [2022-04-14 20:39:45,553 INFO L272 TraceCheckUtils]: 59: Hoare triple {2508#(and (not (<= main_~x~0 (* main_~r~0 2))) (= (+ main_~x~0 (* (- 1) main_~r~0)) main_~y~0) (= main_~q~0 1) (<= main_~y~0 main_~x~0))} [123] L39-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {2530#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 20:39:45,553 INFO L290 TraceCheckUtils]: 60: Hoare triple {2530#(<= 1 |__VERIFIER_assert_#in~cond|)} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2534#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 20:39:45,553 INFO L290 TraceCheckUtils]: 61: Hoare triple {2534#(<= 1 __VERIFIER_assert_~cond)} [125] L15-->L16: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2345#false} is VALID [2022-04-14 20:39:45,554 INFO L290 TraceCheckUtils]: 62: Hoare triple {2345#false} [129] L16-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2345#false} is VALID [2022-04-14 20:39:45,554 INFO L134 CoverageAnalysis]: Checked inductivity of 87 backedges. 12 proven. 3 refuted. 0 times theorem prover too weak. 72 trivial. 0 not checked. [2022-04-14 20:39:45,554 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 20:39:45,857 INFO L290 TraceCheckUtils]: 62: Hoare triple {2345#false} [129] L16-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2345#false} is VALID [2022-04-14 20:39:45,857 INFO L290 TraceCheckUtils]: 61: Hoare triple {2534#(<= 1 __VERIFIER_assert_~cond)} [125] L15-->L16: Formula: (= v___VERIFIER_assert_~cond_2 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2345#false} is VALID [2022-04-14 20:39:45,858 INFO L290 TraceCheckUtils]: 60: Hoare triple {2530#(<= 1 |__VERIFIER_assert_#in~cond|)} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2534#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 20:39:45,860 INFO L272 TraceCheckUtils]: 59: Hoare triple {2550#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} [123] L39-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {2530#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 20:39:45,860 INFO L284 TraceCheckUtils]: 58: Hoare quadruple {2344#true} {2550#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} [148] __VERIFIER_assertEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {2550#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 20:39:45,862 INFO L290 TraceCheckUtils]: 57: Hoare triple {2344#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,864 INFO L290 TraceCheckUtils]: 56: Hoare triple {2344#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,864 INFO L290 TraceCheckUtils]: 55: Hoare triple {2344#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2344#true} is VALID [2022-04-14 20:39:45,865 INFO L272 TraceCheckUtils]: 54: Hoare triple {2550#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} [120] L39-->__VERIFIER_assertENTRY: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {2344#true} is VALID [2022-04-14 20:39:45,865 INFO L290 TraceCheckUtils]: 53: Hoare triple {2550#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} [118] L38-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2550#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 20:39:45,873 INFO L290 TraceCheckUtils]: 52: Hoare triple {2572#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} [135] L47-3-->L38-2: Formula: (and (= v_main_~q~0_5 (+ v_main_~a~0_9 v_main_~q~0_6)) (= v_main_~r~0_11 (+ v_main_~r~0_12 (* (- 1) v_main_~b~0_10)))) InVars {main_~q~0=v_main_~q~0_6, main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_12, main_~a~0=v_main_~a~0_9} OutVars{main_~q~0=v_main_~q~0_5, main_~b~0=v_main_~b~0_10, main_~r~0=v_main_~r~0_11, main_~a~0=v_main_~a~0_9} AuxVars[] AssignedVars[main_~q~0, main_~r~0] {2550#(= (+ (* main_~q~0 main_~y~0) main_~r~0) main_~x~0)} is VALID [2022-04-14 20:39:45,873 INFO L290 TraceCheckUtils]: 51: Hoare triple {2576#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} [139] L50-->L47-3: Formula: (not (<= (* v_main_~b~0_6 2) v_main_~r~0_8)) InVars {main_~b~0=v_main_~b~0_6, main_~r~0=v_main_~r~0_8} OutVars{main_~b~0=v_main_~b~0_6, main_~r~0=v_main_~r~0_8} AuxVars[] AssignedVars[] {2572#(= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0))))} is VALID [2022-04-14 20:39:45,874 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {2344#true} {2576#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} [152] __VERIFIER_assertEXIT-->L50: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_5| (ite (<= 0 v_main_~r~0_16) 1 0)) InVars {main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_5|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~r~0] {2576#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} is VALID [2022-04-14 20:39:45,874 INFO L290 TraceCheckUtils]: 49: Hoare triple {2344#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,874 INFO L290 TraceCheckUtils]: 48: Hoare triple {2344#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,874 INFO L290 TraceCheckUtils]: 47: Hoare triple {2344#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2344#true} is VALID [2022-04-14 20:39:45,874 INFO L272 TraceCheckUtils]: 46: Hoare triple {2576#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} [138] L49-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_5| (ite (<= 0 v_main_~r~0_16) 1 0)) InVars {main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_5|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~r~0] {2344#true} is VALID [2022-04-14 20:39:45,875 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2344#true} {2576#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} [151] __VERIFIER_assertEXIT-->L49: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= v_main_~x~0_11 (+ v_main_~r~0_15 (* v_main_~y~0_18 v_main_~q~0_9))) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~q~0=v_main_~q~0_9, main_~y~0=v_main_~y~0_18, main_~x~0=v_main_~x~0_11, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {2576#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} is VALID [2022-04-14 20:39:45,875 INFO L290 TraceCheckUtils]: 44: Hoare triple {2344#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,875 INFO L290 TraceCheckUtils]: 43: Hoare triple {2344#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,875 INFO L290 TraceCheckUtils]: 42: Hoare triple {2344#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2344#true} is VALID [2022-04-14 20:39:45,875 INFO L272 TraceCheckUtils]: 41: Hoare triple {2576#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} [137] L48-1-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~x~0_11 (+ v_main_~r~0_15 (* v_main_~y~0_18 v_main_~q~0_9))) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~q~0=v_main_~q~0_9, main_~y~0=v_main_~y~0_18, main_~x~0=v_main_~x~0_11, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {2344#true} is VALID [2022-04-14 20:39:45,876 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {2344#true} {2576#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} [150] __VERIFIER_assertEXIT-->L48-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_3| (ite (= (* v_main_~y~0_17 v_main_~a~0_11) v_main_~b~0_12) 1 0)) InVars {main_~y~0=v_main_~y~0_17, main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {2576#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} is VALID [2022-04-14 20:39:45,876 INFO L290 TraceCheckUtils]: 39: Hoare triple {2344#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,876 INFO L290 TraceCheckUtils]: 38: Hoare triple {2344#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,876 INFO L290 TraceCheckUtils]: 37: Hoare triple {2344#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2344#true} is VALID [2022-04-14 20:39:45,876 INFO L272 TraceCheckUtils]: 36: Hoare triple {2576#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} [136] L48-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_3| (ite (= (* v_main_~y~0_17 v_main_~a~0_11) v_main_~b~0_12) 1 0)) InVars {main_~y~0=v_main_~y~0_17, main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {2344#true} is VALID [2022-04-14 20:39:45,876 INFO L290 TraceCheckUtils]: 35: Hoare triple {2576#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} [134] L47-2-->L48: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2576#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} is VALID [2022-04-14 20:39:45,877 INFO L290 TraceCheckUtils]: 34: Hoare triple {2628#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} [128] L40-->L47-2: Formula: (and (= v_main_~b~0_4 v_main_~y~0_8) (<= v_main_~y~0_8 v_main_~r~0_5) (= v_main_~a~0_4 1)) InVars {main_~y~0=v_main_~y~0_8, main_~r~0=v_main_~r~0_5} OutVars{main_~y~0=v_main_~y~0_8, main_~b~0=v_main_~b~0_4, main_~r~0=v_main_~r~0_5, main_~a~0=v_main_~a~0_4} AuxVars[] AssignedVars[main_~b~0, main_~a~0] {2576#(or (= main_~x~0 (+ main_~r~0 (* (- 1) main_~b~0) (* main_~y~0 (+ main_~a~0 main_~q~0)))) (<= (* main_~b~0 2) main_~r~0))} is VALID [2022-04-14 20:39:45,877 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {2344#true} {2628#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} [149] __VERIFIER_assertEXIT-->L40: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {2628#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} is VALID [2022-04-14 20:39:45,877 INFO L290 TraceCheckUtils]: 32: Hoare triple {2344#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,877 INFO L290 TraceCheckUtils]: 31: Hoare triple {2344#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,878 INFO L290 TraceCheckUtils]: 30: Hoare triple {2344#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2344#true} is VALID [2022-04-14 20:39:45,878 INFO L272 TraceCheckUtils]: 29: Hoare triple {2628#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} [123] L39-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~x~0_10 (+ v_main_~r~0_14 (* v_main_~y~0_16 v_main_~q~0_8))) 1 0)) InVars {main_~q~0=v_main_~q~0_8, main_~y~0=v_main_~y~0_16, main_~x~0=v_main_~x~0_10, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~r~0] {2344#true} is VALID [2022-04-14 20:39:45,878 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2344#true} {2628#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} [148] __VERIFIER_assertEXIT-->L39-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {2628#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} is VALID [2022-04-14 20:39:45,878 INFO L290 TraceCheckUtils]: 27: Hoare triple {2344#true} [131] L15-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,878 INFO L290 TraceCheckUtils]: 26: Hoare triple {2344#true} [126] L15-->L15-2: Formula: (not (= v___VERIFIER_assert_~cond_3 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,878 INFO L290 TraceCheckUtils]: 25: Hoare triple {2344#true} [122] __VERIFIER_assertENTRY-->L15: Formula: (= v___VERIFIER_assert_~cond_1 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2344#true} is VALID [2022-04-14 20:39:45,878 INFO L272 TraceCheckUtils]: 24: Hoare triple {2628#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} [120] L39-->__VERIFIER_assertENTRY: Formula: (= (ite (= (* v_main_~y~0_15 v_main_~a~0_10) v_main_~b~0_11) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_15, main_~b~0=v_main_~b~0_11, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~y~0, main_~b~0, main_~a~0] {2344#true} is VALID [2022-04-14 20:39:45,879 INFO L290 TraceCheckUtils]: 23: Hoare triple {2628#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} [118] L38-2-->L39: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2628#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} is VALID [2022-04-14 20:39:45,879 INFO L290 TraceCheckUtils]: 22: Hoare triple {2344#true} [115] L31-->L38-2: Formula: (and (= v_main_~b~0_2 0) (= v_main_~q~0_2 0) (= v_main_~a~0_2 0) (= v_main_~r~0_2 v_main_~x~0_5)) InVars {main_~x~0=v_main_~x~0_5} OutVars{main_~q~0=v_main_~q~0_2, main_~x~0=v_main_~x~0_5, main_~b~0=v_main_~b~0_2, main_~r~0=v_main_~r~0_2, main_~a~0=v_main_~a~0_2} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~r~0, main_~a~0] {2628#(or (not (<= main_~y~0 main_~r~0)) (<= (* main_~y~0 2) main_~r~0) (= main_~x~0 (+ main_~r~0 (* main_~y~0 (+ main_~q~0 1)) (* (- 1) main_~y~0))))} is VALID [2022-04-14 20:39:45,879 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {2344#true} {2344#true} [146] assume_abort_if_notEXIT-->L31: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {2344#true} is VALID [2022-04-14 20:39:45,879 INFO L290 TraceCheckUtils]: 20: Hoare triple {2344#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,879 INFO L290 TraceCheckUtils]: 19: Hoare triple {2344#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,879 INFO L290 TraceCheckUtils]: 18: Hoare triple {2344#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2344#true} is VALID [2022-04-14 20:39:45,880 INFO L272 TraceCheckUtils]: 17: Hoare triple {2344#true} [113] L29-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (<= 1 v_main_~y~0_14) 1 0)) InVars {main_~y~0=v_main_~y~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {2344#true} is VALID [2022-04-14 20:39:45,880 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {2344#true} {2344#true} [145] assume_abort_if_notEXIT-->L29-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 20)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {2344#true} is VALID [2022-04-14 20:39:45,880 INFO L290 TraceCheckUtils]: 15: Hoare triple {2344#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,880 INFO L290 TraceCheckUtils]: 14: Hoare triple {2344#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,880 INFO L290 TraceCheckUtils]: 13: Hoare triple {2344#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2344#true} is VALID [2022-04-14 20:39:45,880 INFO L272 TraceCheckUtils]: 12: Hoare triple {2344#true} [110] L29-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~y~0_13) (<= v_main_~y~0_13 20)) 1 0)) InVars {main_~y~0=v_main_~y~0_13} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {2344#true} is VALID [2022-04-14 20:39:45,880 INFO L290 TraceCheckUtils]: 11: Hoare triple {2344#true} [108] L27-1-->L29: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_2 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~y~0=v_main_~y~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~y~0] {2344#true} is VALID [2022-04-14 20:39:45,880 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2344#true} {2344#true} [144] assume_abort_if_notEXIT-->L27-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 20)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {2344#true} is VALID [2022-04-14 20:39:45,880 INFO L290 TraceCheckUtils]: 9: Hoare triple {2344#true} [114] L12-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,880 INFO L290 TraceCheckUtils]: 8: Hoare triple {2344#true} [112] L12-->L12-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,880 INFO L290 TraceCheckUtils]: 7: Hoare triple {2344#true} [109] assume_abort_if_notENTRY-->L12: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2344#true} is VALID [2022-04-14 20:39:45,880 INFO L272 TraceCheckUtils]: 6: Hoare triple {2344#true} [107] L27-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~x~0_9) (<= v_main_~x~0_9 20)) 1 0)) InVars {main_~x~0=v_main_~x~0_9} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~x~0, assume_abort_if_not_#in~cond] {2344#true} is VALID [2022-04-14 20:39:45,880 INFO L290 TraceCheckUtils]: 5: Hoare triple {2344#true} [105] mainENTRY-->L27: Formula: (and (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_1, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_1, main_~r~0=v_main_~r~0_1, main_~a~0=v_main_~a~0_1} AuxVars[] AssignedVars[main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~r~0, main_~a~0] {2344#true} is VALID [2022-04-14 20:39:45,881 INFO L272 TraceCheckUtils]: 4: Hoare triple {2344#true} [102] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,881 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2344#true} {2344#true} [143] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,881 INFO L290 TraceCheckUtils]: 2: Hoare triple {2344#true} [106] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,881 INFO L290 TraceCheckUtils]: 1: Hoare triple {2344#true} [103] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select |v_#length_1| 2) 14) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {2344#true} is VALID [2022-04-14 20:39:45,881 INFO L272 TraceCheckUtils]: 0: Hoare triple {2344#true} [101] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2344#true} is VALID [2022-04-14 20:39:45,881 INFO L134 CoverageAnalysis]: Checked inductivity of 87 backedges. 15 proven. 0 refuted. 0 times theorem prover too weak. 72 trivial. 0 not checked. [2022-04-14 20:39:45,881 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 20:39:45,881 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [819651253] [2022-04-14 20:39:45,881 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 20:39:45,881 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [399127817] [2022-04-14 20:39:45,882 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [399127817] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-14 20:39:45,882 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-14 20:39:45,882 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [8] total 12 [2022-04-14 20:39:45,882 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1375970253] [2022-04-14 20:39:45,882 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 20:39:45,882 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 63 [2022-04-14 20:39:45,883 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 20:39:45,883 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-14 20:39:45,918 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:39:45,918 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-14 20:39:45,918 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 20:39:45,918 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-14 20:39:45,918 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=38, Invalid=94, Unknown=0, NotChecked=0, Total=132 [2022-04-14 20:39:45,918 INFO L87 Difference]: Start difference. First operand 78 states and 98 transitions. Second operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-14 20:39:46,448 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:46,448 INFO L93 Difference]: Finished difference Result 80 states and 99 transitions. [2022-04-14 20:39:46,448 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-14 20:39:46,448 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 63 [2022-04-14 20:39:46,449 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 20:39:46,449 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-14 20:39:46,450 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 45 transitions. [2022-04-14 20:39:46,450 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-14 20:39:46,451 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 45 transitions. [2022-04-14 20:39:46,451 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 45 transitions. [2022-04-14 20:39:46,494 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 20:39:46,494 INFO L225 Difference]: With dead ends: 80 [2022-04-14 20:39:46,494 INFO L226 Difference]: Without dead ends: 0 [2022-04-14 20:39:46,494 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 127 GetRequests, 114 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 31 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=50, Invalid=132, Unknown=0, NotChecked=0, Total=182 [2022-04-14 20:39:46,495 INFO L913 BasicCegarLoop]: 29 mSDtfsCounter, 14 mSDsluCounter, 93 mSDsCounter, 0 mSdLazyCounter, 100 mSolverCounterSat, 23 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 122 SdHoareTripleChecker+Invalid, 123 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 23 IncrementalHoareTripleChecker+Valid, 100 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-14 20:39:46,495 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 122 Invalid, 123 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [23 Valid, 100 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-14 20:39:46,495 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-14 20:39:46,495 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-14 20:39:46,495 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 20:39:46,495 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-14 20:39:46,496 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-14 20:39:46,496 INFO L87 Difference]: Start difference. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-14 20:39:46,496 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:46,496 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-14 20:39:46,496 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-14 20:39:46,496 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:39:46,496 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:39:46,496 INFO L74 IsIncluded]: Start isIncluded. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-14 20:39:46,496 INFO L87 Difference]: Start difference. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-14 20:39:46,496 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 20:39:46,496 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-14 20:39:46,496 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-14 20:39:46,496 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:39:46,496 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 20:39:46,497 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 20:39:46,497 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 20:39:46,497 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-14 20:39:46,497 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-14 20:39:46,497 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 63 [2022-04-14 20:39:46,497 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 20:39:46,497 INFO L478 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-14 20:39:46,497 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 4 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-14 20:39:46,497 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-14 20:39:46,497 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 20:39:46,499 INFO L788 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-14 20:39:46,519 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 20:39:46,715 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 20:39:46,718 INFO L719 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1, 1, 1, 1] [2022-04-14 20:39:46,718 INFO L177 ceAbstractionStarter]: Computing trace abstraction results [2022-04-14 20:39:46,720 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 14.04 08:39:46 BasicIcfg [2022-04-14 20:39:46,720 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-14 20:39:46,721 INFO L158 Benchmark]: Toolchain (without parser) took 12104.37ms. Allocated memory was 172.0MB in the beginning and 259.0MB in the end (delta: 87.0MB). Free memory was 119.6MB in the beginning and 188.3MB in the end (delta: -68.7MB). Peak memory consumption was 19.8MB. Max. memory is 8.0GB. [2022-04-14 20:39:46,721 INFO L158 Benchmark]: CDTParser took 0.11ms. Allocated memory is still 172.0MB. Free memory was 136.3MB in the beginning and 136.2MB in the end (delta: 77.4kB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-14 20:39:46,721 INFO L158 Benchmark]: CACSL2BoogieTranslator took 241.65ms. Allocated memory is still 172.0MB. Free memory was 119.4MB in the beginning and 144.4MB in the end (delta: -25.0MB). Peak memory consumption was 11.4MB. Max. memory is 8.0GB. [2022-04-14 20:39:46,721 INFO L158 Benchmark]: Boogie Preprocessor took 35.50ms. Allocated memory is still 172.0MB. Free memory was 144.4MB in the beginning and 142.9MB in the end (delta: 1.6MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-14 20:39:46,722 INFO L158 Benchmark]: RCFGBuilder took 248.52ms. Allocated memory is still 172.0MB. Free memory was 142.9MB in the beginning and 130.8MB in the end (delta: 12.0MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2022-04-14 20:39:46,722 INFO L158 Benchmark]: IcfgTransformer took 56.96ms. Allocated memory is still 172.0MB. Free memory was 130.8MB in the beginning and 129.2MB in the end (delta: 1.6MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-14 20:39:46,722 INFO L158 Benchmark]: TraceAbstraction took 11515.98ms. Allocated memory was 172.0MB in the beginning and 259.0MB in the end (delta: 87.0MB). Free memory was 128.5MB in the beginning and 188.3MB in the end (delta: -59.8MB). Peak memory consumption was 28.3MB. Max. memory is 8.0GB. [2022-04-14 20:39:46,724 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.11ms. Allocated memory is still 172.0MB. Free memory was 136.3MB in the beginning and 136.2MB in the end (delta: 77.4kB). There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 241.65ms. Allocated memory is still 172.0MB. Free memory was 119.4MB in the beginning and 144.4MB in the end (delta: -25.0MB). Peak memory consumption was 11.4MB. Max. memory is 8.0GB. * Boogie Preprocessor took 35.50ms. Allocated memory is still 172.0MB. Free memory was 144.4MB in the beginning and 142.9MB in the end (delta: 1.6MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 248.52ms. Allocated memory is still 172.0MB. Free memory was 142.9MB in the beginning and 130.8MB in the end (delta: 12.0MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * IcfgTransformer took 56.96ms. Allocated memory is still 172.0MB. Free memory was 130.8MB in the beginning and 129.2MB in the end (delta: 1.6MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * TraceAbstraction took 11515.98ms. Allocated memory was 172.0MB in the beginning and 259.0MB in the end (delta: 87.0MB). Free memory was 128.5MB in the beginning and 188.3MB in the end (delta: -59.8MB). Peak memory consumption was 28.3MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - PositiveResult [Line: 17]: call to reach_error is unreachable For all program executions holds that call to reach_error is unreachable at this location - StatisticsResult: Ultimate Automizer benchmark data CFG has 5 procedures, 39 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 11.5s, OverallIterations: 7, TraceHistogramMax: 7, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 2.6s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 181 SdHoareTripleChecker+Valid, 0.7s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 142 mSDsluCounter, 950 SdHoareTripleChecker+Invalid, 0.7s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 700 mSDsCounter, 70 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 689 IncrementalHoareTripleChecker+Invalid, 759 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 70 mSolverCounterUnsat, 250 mSDtfsCounter, 689 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 406 GetRequests, 349 SyntacticMatches, 2 SemanticMatches, 55 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 62 ImplicationChecksByTransitivity, 0.3s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=78occurred in iteration=6, InterpolantAutomatonStates: 47, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.2s AutomataMinimizationTime, 7 MinimizatonAttempts, 11 StatesRemovedByMinimization, 3 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.2s SatisfiabilityAnalysisTime, 6.7s InterpolantComputationTime, 298 NumberOfCodeBlocks, 298 NumberOfCodeBlocksAsserted, 7 NumberOfCheckSat, 408 ConstructedInterpolants, 0 QuantifiedInterpolants, 1044 SizeOfPredicates, 20 NumberOfNonLiveVariables, 745 ConjunctsInSsa, 78 ConjunctsInUnsatCore, 9 InterpolantComputations, 6 PerfectInterpolantSequences, 383/400 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold RESULT: Ultimate proved your program to be correct! [2022-04-14 20:39:46,745 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...