/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/prod4br-ll_unwindbound2.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-27 19:47:15,943 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-27 19:47:15,964 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-27 19:47:15,993 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-27 19:47:15,993 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-27 19:47:15,995 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-27 19:47:15,999 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-27 19:47:16,004 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-27 19:47:16,005 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-27 19:47:16,012 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-27 19:47:16,013 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-27 19:47:16,014 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-27 19:47:16,014 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-27 19:47:16,016 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-27 19:47:16,016 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-27 19:47:16,017 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-27 19:47:16,018 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-27 19:47:16,018 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-27 19:47:16,022 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-27 19:47:16,025 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-27 19:47:16,026 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-27 19:47:16,028 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-27 19:47:16,028 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-27 19:47:16,029 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-27 19:47:16,030 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-27 19:47:16,033 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-27 19:47:16,033 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-27 19:47:16,033 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-27 19:47:16,034 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-27 19:47:16,034 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-27 19:47:16,035 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-27 19:47:16,035 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-27 19:47:16,036 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-27 19:47:16,037 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-27 19:47:16,037 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-27 19:47:16,038 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-27 19:47:16,038 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-27 19:47:16,038 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-27 19:47:16,038 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-27 19:47:16,038 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-27 19:47:16,039 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-27 19:47:16,040 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-27 19:47:16,040 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/LoopAccelerationJordanC.epf [2022-04-27 19:47:16,048 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-27 19:47:16,048 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-27 19:47:16,049 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-27 19:47:16,049 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-27 19:47:16,049 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-27 19:47:16,049 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-27 19:47:16,049 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-27 19:47:16,050 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-27 19:47:16,050 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-27 19:47:16,050 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-27 19:47:16,050 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-27 19:47:16,050 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-27 19:47:16,050 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-27 19:47:16,051 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-27 19:47:16,051 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-27 19:47:16,051 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-27 19:47:16,051 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-27 19:47:16,051 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-27 19:47:16,051 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 19:47:16,051 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-27 19:47:16,051 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-27 19:47:16,052 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-27 19:47:16,052 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-27 19:47:16,246 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-27 19:47:16,264 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-27 19:47:16,266 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-27 19:47:16,266 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-27 19:47:16,267 INFO L275 PluginConnector]: CDTParser initialized [2022-04-27 19:47:16,268 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/prod4br-ll_unwindbound2.c [2022-04-27 19:47:16,318 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/066a98f81/3b112dc339504e88ba6d81d42407b1a4/FLAG78bf7fa8b [2022-04-27 19:47:16,617 INFO L306 CDTParser]: Found 1 translation units. [2022-04-27 19:47:16,617 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prod4br-ll_unwindbound2.c [2022-04-27 19:47:16,623 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/066a98f81/3b112dc339504e88ba6d81d42407b1a4/FLAG78bf7fa8b [2022-04-27 19:47:17,059 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/066a98f81/3b112dc339504e88ba6d81d42407b1a4 [2022-04-27 19:47:17,061 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-27 19:47:17,062 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-27 19:47:17,063 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-27 19:47:17,063 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-27 19:47:17,065 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-27 19:47:17,066 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 07:47:17" (1/1) ... [2022-04-27 19:47:17,067 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@6029cdfe and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 07:47:17, skipping insertion in model container [2022-04-27 19:47:17,067 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 07:47:17" (1/1) ... [2022-04-27 19:47:17,071 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-27 19:47:17,080 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-27 19:47:17,209 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/prod4br-ll_unwindbound2.c[524,537] [2022-04-27 19:47:17,233 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 19:47:17,243 INFO L203 MainTranslator]: Completed pre-run [2022-04-27 19:47:17,253 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/prod4br-ll_unwindbound2.c[524,537] [2022-04-27 19:47:17,274 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 19:47:17,288 INFO L208 MainTranslator]: Completed translation [2022-04-27 19:47:17,288 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 07:47:17 WrapperNode [2022-04-27 19:47:17,289 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-27 19:47:17,289 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-27 19:47:17,289 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-27 19:47:17,289 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-27 19:47:17,298 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 07:47:17" (1/1) ... [2022-04-27 19:47:17,298 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 07:47:17" (1/1) ... [2022-04-27 19:47:17,310 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 07:47:17" (1/1) ... [2022-04-27 19:47:17,310 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 07:47:17" (1/1) ... [2022-04-27 19:47:17,325 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 07:47:17" (1/1) ... [2022-04-27 19:47:17,329 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 07:47:17" (1/1) ... [2022-04-27 19:47:17,333 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 07:47:17" (1/1) ... [2022-04-27 19:47:17,335 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-27 19:47:17,335 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-27 19:47:17,335 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-27 19:47:17,336 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-27 19:47:17,339 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 07:47:17" (1/1) ... [2022-04-27 19:47:17,344 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 19:47:17,350 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 19:47:17,359 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-27 19:47:17,365 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-27 19:47:17,384 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-27 19:47:17,384 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-27 19:47:17,385 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-27 19:47:17,385 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-27 19:47:17,385 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-27 19:47:17,385 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-27 19:47:17,386 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-27 19:47:17,386 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-27 19:47:17,386 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-27 19:47:17,386 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-27 19:47:17,386 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-27 19:47:17,386 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-27 19:47:17,387 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-27 19:47:17,387 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-27 19:47:17,387 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-27 19:47:17,388 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-27 19:47:17,388 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-27 19:47:17,388 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-27 19:47:17,388 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-27 19:47:17,388 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-27 19:47:17,433 INFO L234 CfgBuilder]: Building ICFG [2022-04-27 19:47:17,435 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-27 19:47:17,591 INFO L275 CfgBuilder]: Performing block encoding [2022-04-27 19:47:17,596 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-27 19:47:17,596 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-27 19:47:17,597 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 07:47:17 BoogieIcfgContainer [2022-04-27 19:47:17,597 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-27 19:47:17,598 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-27 19:47:17,598 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-27 19:47:17,599 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-27 19:47:17,600 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 07:47:17" (1/1) ... [2022-04-27 19:47:17,602 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_JORDAN [2022-04-27 19:47:17,659 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 27.04 07:47:17 BasicIcfg [2022-04-27 19:47:17,659 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-27 19:47:17,660 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-27 19:47:17,660 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-27 19:47:17,669 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-27 19:47:17,669 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 27.04 07:47:17" (1/4) ... [2022-04-27 19:47:17,670 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@2753cb7f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 07:47:17, skipping insertion in model container [2022-04-27 19:47:17,670 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 07:47:17" (2/4) ... [2022-04-27 19:47:17,670 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@2753cb7f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 07:47:17, skipping insertion in model container [2022-04-27 19:47:17,670 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 07:47:17" (3/4) ... [2022-04-27 19:47:17,670 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@2753cb7f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 27.04 07:47:17, skipping insertion in model container [2022-04-27 19:47:17,670 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 27.04 07:47:17" (4/4) ... [2022-04-27 19:47:17,671 INFO L111 eAbstractionObserver]: Analyzing ICFG prod4br-ll_unwindbound2.cJordan [2022-04-27 19:47:17,682 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:ForwardPredicates Determinization: PREDICATE_ABSTRACTION [2022-04-27 19:47:17,682 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-27 19:47:17,725 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-27 19:47:17,732 INFO L357 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, mPorIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@25600e3d, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@78928610 [2022-04-27 19:47:17,732 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-27 19:47:17,739 INFO L276 IsEmpty]: Start isEmpty. Operand has 32 states, 20 states have (on average 1.45) internal successors, (29), 21 states have internal predecessors, (29), 6 states have call successors, (6), 4 states have call predecessors, (6), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-27 19:47:17,746 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-04-27 19:47:17,746 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 19:47:17,746 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 19:47:17,747 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 19:47:17,752 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 19:47:17,753 INFO L85 PathProgramCache]: Analyzing trace with hash -1119019339, now seen corresponding path program 1 times [2022-04-27 19:47:17,760 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 19:47:17,760 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [822613168] [2022-04-27 19:47:17,760 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 19:47:17,761 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 19:47:17,849 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 19:47:17,905 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 19:47:17,908 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 19:47:17,929 INFO L290 TraceCheckUtils]: 0: Hoare triple {44#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [82] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #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[~counter~0, #NULL.offset, #NULL.base] {35#true} is VALID [2022-04-27 19:47:17,930 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} [85] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-27 19:47:17,930 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {35#true} {35#true} [115] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-27 19:47:17,931 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-27 19:47:17,936 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 19:47:17,941 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} [88] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {35#true} is VALID [2022-04-27 19:47:17,942 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} [91] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-27 19:47:17,942 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} [96] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-27 19:47:17,942 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {35#true} [116] assume_abort_if_notEXIT-->L26-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {36#false} is VALID [2022-04-27 19:47:17,943 INFO L272 TraceCheckUtils]: 0: Hoare triple {35#true} [80] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {44#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-27 19:47:17,944 INFO L290 TraceCheckUtils]: 1: Hoare triple {44#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [82] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #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[~counter~0, #NULL.offset, #NULL.base] {35#true} is VALID [2022-04-27 19:47:17,944 INFO L290 TraceCheckUtils]: 2: Hoare triple {35#true} [85] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-27 19:47:17,944 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {35#true} {35#true} [115] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-27 19:47:17,944 INFO L272 TraceCheckUtils]: 4: Hoare triple {35#true} [81] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {35#true} is VALID [2022-04-27 19:47:17,945 INFO L290 TraceCheckUtils]: 5: Hoare triple {35#true} [84] mainENTRY-->L26: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_1 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_5, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_6, main_~p~0=v_main_~p~0_3, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {35#true} is VALID [2022-04-27 19:47:17,945 INFO L272 TraceCheckUtils]: 6: Hoare triple {35#true} [86] L26-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {35#true} is VALID [2022-04-27 19:47:17,945 INFO L290 TraceCheckUtils]: 7: Hoare triple {35#true} [88] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {35#true} is VALID [2022-04-27 19:47:17,946 INFO L290 TraceCheckUtils]: 8: Hoare triple {35#true} [91] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-27 19:47:17,946 INFO L290 TraceCheckUtils]: 9: Hoare triple {36#false} [96] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-27 19:47:17,946 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {36#false} {35#true} [116] assume_abort_if_notEXIT-->L26-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {36#false} is VALID [2022-04-27 19:47:17,946 INFO L290 TraceCheckUtils]: 11: Hoare triple {36#false} [87] L26-1-->L46-2: Formula: (and (= v_main_~a~0_9 v_main_~x~0_4) (= v_main_~b~0_9 v_main_~y~0_5) (= v_main_~q~0_8 0) (= v_main_~p~0_5 1)) InVars {main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5} OutVars{main_~q~0=v_main_~q~0_8, main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5, main_~b~0=v_main_~b~0_9, main_~p~0=v_main_~p~0_5, main_~a~0=v_main_~a~0_9} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~p~0, main_~a~0] {36#false} is VALID [2022-04-27 19:47:17,946 INFO L290 TraceCheckUtils]: 12: Hoare triple {36#false} [89] L46-2-->L33-3: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-27 19:47:17,947 INFO L272 TraceCheckUtils]: 13: Hoare triple {36#false} [93] L33-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~q~0_12 (* v_main_~y~0_10 v_main_~x~0_8)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~q~0=v_main_~q~0_12, main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_8} 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] {36#false} is VALID [2022-04-27 19:47:17,947 INFO L290 TraceCheckUtils]: 14: Hoare triple {36#false} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |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_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {36#false} is VALID [2022-04-27 19:47:17,947 INFO L290 TraceCheckUtils]: 15: Hoare triple {36#false} [101] L12-->L13: Formula: (= 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[] {36#false} is VALID [2022-04-27 19:47:17,947 INFO L290 TraceCheckUtils]: 16: Hoare triple {36#false} [106] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36#false} is VALID [2022-04-27 19:47:17,948 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 19:47:17,948 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 19:47:17,948 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [822613168] [2022-04-27 19:47:17,949 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [822613168] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 19:47:17,949 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 19:47:17,949 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-27 19:47:17,950 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1679348735] [2022-04-27 19:47:17,950 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 19:47:17,954 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 17 [2022-04-27 19:47:17,955 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 19:47:17,957 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 19:47:17,982 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 17 edges. 17 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 19:47:17,982 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-27 19:47:17,982 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 19:47:17,997 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-27 19:47:17,998 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-27 19:47:18,001 INFO L87 Difference]: Start difference. First operand has 32 states, 20 states have (on average 1.45) internal successors, (29), 21 states have internal predecessors, (29), 6 states have call successors, (6), 4 states have call predecessors, (6), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 19:47:18,138 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 19:47:18,139 INFO L93 Difference]: Finished difference Result 33 states and 39 transitions. [2022-04-27 19:47:18,139 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-27 19:47:18,139 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 17 [2022-04-27 19:47:18,139 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 19:47:18,140 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 19:47:18,145 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 43 transitions. [2022-04-27 19:47:18,145 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 19:47:18,148 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 43 transitions. [2022-04-27 19:47:18,148 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 43 transitions. [2022-04-27 19:47:18,206 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 19:47:18,213 INFO L225 Difference]: With dead ends: 33 [2022-04-27 19:47:18,213 INFO L226 Difference]: Without dead ends: 28 [2022-04-27 19:47:18,214 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 6 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-27 19:47:18,216 INFO L413 NwaCegarLoop]: 36 mSDtfsCounter, 10 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 19 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 40 SdHoareTripleChecker+Invalid, 24 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 19 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 19:47:18,218 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [11 Valid, 40 Invalid, 24 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 19 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 19:47:18,246 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 28 states. [2022-04-27 19:47:18,262 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 28 to 27. [2022-04-27 19:47:18,262 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 19:47:18,263 INFO L82 GeneralOperation]: Start isEquivalent. First operand 28 states. Second operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-27 19:47:18,264 INFO L74 IsIncluded]: Start isIncluded. First operand 28 states. Second operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-27 19:47:18,265 INFO L87 Difference]: Start difference. First operand 28 states. Second operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-27 19:47:18,273 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 19:47:18,274 INFO L93 Difference]: Finished difference Result 28 states and 34 transitions. [2022-04-27 19:47:18,274 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 34 transitions. [2022-04-27 19:47:18,274 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 19:47:18,274 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 19:47:18,275 INFO L74 IsIncluded]: Start isIncluded. First operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 28 states. [2022-04-27 19:47:18,275 INFO L87 Difference]: Start difference. First operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 28 states. [2022-04-27 19:47:18,277 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 19:47:18,277 INFO L93 Difference]: Finished difference Result 28 states and 34 transitions. [2022-04-27 19:47:18,277 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 34 transitions. [2022-04-27 19:47:18,278 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 19:47:18,278 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 19:47:18,278 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 19:47:18,278 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 19:47:18,278 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-27 19:47:18,280 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 33 transitions. [2022-04-27 19:47:18,281 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 33 transitions. Word has length 17 [2022-04-27 19:47:18,281 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 19:47:18,281 INFO L495 AbstractCegarLoop]: Abstraction has 27 states and 33 transitions. [2022-04-27 19:47:18,281 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 19:47:18,281 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 33 transitions. [2022-04-27 19:47:18,281 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-27 19:47:18,282 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 19:47:18,282 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 19:47:18,282 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-27 19:47:18,282 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 19:47:18,282 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 19:47:18,283 INFO L85 PathProgramCache]: Analyzing trace with hash -496973861, now seen corresponding path program 1 times [2022-04-27 19:47:18,283 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 19:47:18,283 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [218855798] [2022-04-27 19:47:18,283 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 19:47:18,283 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 19:47:18,296 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 19:47:18,297 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [93244509] [2022-04-27 19:47:18,297 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 19:47:18,297 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 19:47:18,297 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 19:47:18,303 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-27 19:47:18,304 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-27 19:47:18,359 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 19:47:18,360 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-27 19:47:18,373 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 19:47:18,377 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 19:47:18,502 INFO L272 TraceCheckUtils]: 0: Hoare triple {163#true} [80] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {163#true} is VALID [2022-04-27 19:47:18,505 INFO L290 TraceCheckUtils]: 1: Hoare triple {163#true} [82] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #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[~counter~0, #NULL.offset, #NULL.base] {171#(<= ~counter~0 0)} is VALID [2022-04-27 19:47:18,505 INFO L290 TraceCheckUtils]: 2: Hoare triple {171#(<= ~counter~0 0)} [85] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {171#(<= ~counter~0 0)} is VALID [2022-04-27 19:47:18,506 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {171#(<= ~counter~0 0)} {163#true} [115] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {171#(<= ~counter~0 0)} is VALID [2022-04-27 19:47:18,506 INFO L272 TraceCheckUtils]: 4: Hoare triple {171#(<= ~counter~0 0)} [81] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {171#(<= ~counter~0 0)} is VALID [2022-04-27 19:47:18,507 INFO L290 TraceCheckUtils]: 5: Hoare triple {171#(<= ~counter~0 0)} [84] mainENTRY-->L26: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_1 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_5, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_6, main_~p~0=v_main_~p~0_3, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {171#(<= ~counter~0 0)} is VALID [2022-04-27 19:47:18,508 INFO L272 TraceCheckUtils]: 6: Hoare triple {171#(<= ~counter~0 0)} [86] L26-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {171#(<= ~counter~0 0)} is VALID [2022-04-27 19:47:18,508 INFO L290 TraceCheckUtils]: 7: Hoare triple {171#(<= ~counter~0 0)} [88] assume_abort_if_notENTRY-->L9: 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] {171#(<= ~counter~0 0)} is VALID [2022-04-27 19:47:18,508 INFO L290 TraceCheckUtils]: 8: Hoare triple {171#(<= ~counter~0 0)} [92] L9-->L9-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[] {171#(<= ~counter~0 0)} is VALID [2022-04-27 19:47:18,509 INFO L290 TraceCheckUtils]: 9: Hoare triple {171#(<= ~counter~0 0)} [96] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {171#(<= ~counter~0 0)} is VALID [2022-04-27 19:47:18,509 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {171#(<= ~counter~0 0)} {171#(<= ~counter~0 0)} [116] assume_abort_if_notEXIT-->L26-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {171#(<= ~counter~0 0)} is VALID [2022-04-27 19:47:18,510 INFO L290 TraceCheckUtils]: 11: Hoare triple {171#(<= ~counter~0 0)} [87] L26-1-->L46-2: Formula: (and (= v_main_~a~0_9 v_main_~x~0_4) (= v_main_~b~0_9 v_main_~y~0_5) (= v_main_~q~0_8 0) (= v_main_~p~0_5 1)) InVars {main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5} OutVars{main_~q~0=v_main_~q~0_8, main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5, main_~b~0=v_main_~b~0_9, main_~p~0=v_main_~p~0_5, main_~a~0=v_main_~a~0_9} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~p~0, main_~a~0] {171#(<= ~counter~0 0)} is VALID [2022-04-27 19:47:18,510 INFO L290 TraceCheckUtils]: 12: Hoare triple {171#(<= ~counter~0 0)} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {205#(<= |main_#t~post6| 0)} is VALID [2022-04-27 19:47:18,511 INFO L290 TraceCheckUtils]: 13: Hoare triple {205#(<= |main_#t~post6| 0)} [94] L33-1-->L33-3: Formula: (not (< |v_main_#t~post6_3| 2)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {164#false} is VALID [2022-04-27 19:47:18,511 INFO L272 TraceCheckUtils]: 14: Hoare triple {164#false} [93] L33-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~q~0_12 (* v_main_~y~0_10 v_main_~x~0_8)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~q~0=v_main_~q~0_12, main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_8} 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] {164#false} is VALID [2022-04-27 19:47:18,511 INFO L290 TraceCheckUtils]: 15: Hoare triple {164#false} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |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_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {164#false} is VALID [2022-04-27 19:47:18,511 INFO L290 TraceCheckUtils]: 16: Hoare triple {164#false} [101] L12-->L13: Formula: (= 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[] {164#false} is VALID [2022-04-27 19:47:18,512 INFO L290 TraceCheckUtils]: 17: Hoare triple {164#false} [106] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {164#false} is VALID [2022-04-27 19:47:18,512 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 19:47:18,512 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 19:47:18,513 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 19:47:18,513 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [218855798] [2022-04-27 19:47:18,513 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 19:47:18,515 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [93244509] [2022-04-27 19:47:18,516 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [93244509] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 19:47:18,516 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 19:47:18,516 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-27 19:47:18,517 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [748790041] [2022-04-27 19:47:18,517 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 19:47:18,518 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-04-27 19:47:18,518 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 19:47:18,519 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-27 19:47:18,532 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 19:47:18,533 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-27 19:47:18,533 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 19:47:18,534 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-27 19:47:18,534 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-27 19:47:18,535 INFO L87 Difference]: Start difference. First operand 27 states and 33 transitions. Second operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-27 19:47:18,591 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 19:47:18,592 INFO L93 Difference]: Finished difference Result 29 states and 35 transitions. [2022-04-27 19:47:18,592 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-27 19:47:18,592 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-04-27 19:47:18,592 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 19:47:18,592 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-27 19:47:18,600 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 36 transitions. [2022-04-27 19:47:18,600 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-27 19:47:18,603 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 36 transitions. [2022-04-27 19:47:18,603 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 36 transitions. [2022-04-27 19:47:18,629 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 19:47:18,630 INFO L225 Difference]: With dead ends: 29 [2022-04-27 19:47:18,630 INFO L226 Difference]: Without dead ends: 29 [2022-04-27 19:47:18,630 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-27 19:47:18,631 INFO L413 NwaCegarLoop]: 31 mSDtfsCounter, 0 mSDsluCounter, 50 mSDsCounter, 0 mSdLazyCounter, 7 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 81 SdHoareTripleChecker+Invalid, 7 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 7 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 19:47:18,632 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 81 Invalid, 7 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 7 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 19:47:18,632 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2022-04-27 19:47:18,634 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 29. [2022-04-27 19:47:18,634 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 19:47:18,634 INFO L82 GeneralOperation]: Start isEquivalent. First operand 29 states. Second operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-27 19:47:18,634 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-27 19:47:18,635 INFO L87 Difference]: Start difference. First operand 29 states. Second operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-27 19:47:18,636 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 19:47:18,636 INFO L93 Difference]: Finished difference Result 29 states and 35 transitions. [2022-04-27 19:47:18,636 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-27 19:47:18,637 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 19:47:18,637 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 19:47:18,637 INFO L74 IsIncluded]: Start isIncluded. First operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 29 states. [2022-04-27 19:47:18,637 INFO L87 Difference]: Start difference. First operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 29 states. [2022-04-27 19:47:18,639 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 19:47:18,639 INFO L93 Difference]: Finished difference Result 29 states and 35 transitions. [2022-04-27 19:47:18,639 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-27 19:47:18,639 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 19:47:18,639 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 19:47:18,639 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 19:47:18,639 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 19:47:18,640 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-27 19:47:18,641 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 35 transitions. [2022-04-27 19:47:18,641 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 35 transitions. Word has length 18 [2022-04-27 19:47:18,641 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 19:47:18,641 INFO L495 AbstractCegarLoop]: Abstraction has 29 states and 35 transitions. [2022-04-27 19:47:18,641 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-27 19:47:18,641 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-27 19:47:18,642 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-27 19:47:18,642 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 19:47:18,643 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 19:47:18,663 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-04-27 19:47:18,861 WARN L477 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-27 19:47:18,861 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 19:47:18,862 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 19:47:18,862 INFO L85 PathProgramCache]: Analyzing trace with hash -495871594, now seen corresponding path program 1 times [2022-04-27 19:47:18,862 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 19:47:18,862 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [696422934] [2022-04-27 19:47:18,862 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 19:47:18,863 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 19:47:18,881 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 19:47:18,882 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1282131824] [2022-04-27 19:47:18,882 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 19:47:18,882 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 19:47:18,882 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 19:47:18,886 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-27 19:47:18,889 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-27 19:47:18,922 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 19:47:18,923 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-27 19:47:18,932 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 19:47:18,933 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 19:47:19,073 INFO L272 TraceCheckUtils]: 0: Hoare triple {336#true} [80] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {336#true} is VALID [2022-04-27 19:47:19,073 INFO L290 TraceCheckUtils]: 1: Hoare triple {336#true} [82] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #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[~counter~0, #NULL.offset, #NULL.base] {336#true} is VALID [2022-04-27 19:47:19,074 INFO L290 TraceCheckUtils]: 2: Hoare triple {336#true} [85] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {336#true} is VALID [2022-04-27 19:47:19,075 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {336#true} {336#true} [115] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {336#true} is VALID [2022-04-27 19:47:19,075 INFO L272 TraceCheckUtils]: 4: Hoare triple {336#true} [81] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {336#true} is VALID [2022-04-27 19:47:19,075 INFO L290 TraceCheckUtils]: 5: Hoare triple {336#true} [84] mainENTRY-->L26: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_1 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_5, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_6, main_~p~0=v_main_~p~0_3, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {336#true} is VALID [2022-04-27 19:47:19,075 INFO L272 TraceCheckUtils]: 6: Hoare triple {336#true} [86] L26-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {336#true} is VALID [2022-04-27 19:47:19,078 INFO L290 TraceCheckUtils]: 7: Hoare triple {336#true} [88] assume_abort_if_notENTRY-->L9: 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] {336#true} is VALID [2022-04-27 19:47:19,078 INFO L290 TraceCheckUtils]: 8: Hoare triple {336#true} [92] L9-->L9-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[] {336#true} is VALID [2022-04-27 19:47:19,078 INFO L290 TraceCheckUtils]: 9: Hoare triple {336#true} [96] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {336#true} is VALID [2022-04-27 19:47:19,078 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {336#true} {336#true} [116] assume_abort_if_notEXIT-->L26-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {336#true} is VALID [2022-04-27 19:47:19,080 INFO L290 TraceCheckUtils]: 11: Hoare triple {336#true} [87] L26-1-->L46-2: Formula: (and (= v_main_~a~0_9 v_main_~x~0_4) (= v_main_~b~0_9 v_main_~y~0_5) (= v_main_~q~0_8 0) (= v_main_~p~0_5 1)) InVars {main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5} OutVars{main_~q~0=v_main_~q~0_8, main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5, main_~b~0=v_main_~b~0_9, main_~p~0=v_main_~p~0_5, main_~a~0=v_main_~a~0_9} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~p~0, main_~a~0] {374#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 19:47:19,081 INFO L290 TraceCheckUtils]: 12: Hoare triple {374#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {374#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 19:47:19,082 INFO L290 TraceCheckUtils]: 13: Hoare triple {374#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {374#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 19:47:19,083 INFO L272 TraceCheckUtils]: 14: Hoare triple {374#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} [99] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {384#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 19:47:19,083 INFO L290 TraceCheckUtils]: 15: Hoare triple {384#(<= 1 |__VERIFIER_assert_#in~cond|)} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |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_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {388#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 19:47:19,085 INFO L290 TraceCheckUtils]: 16: Hoare triple {388#(<= 1 __VERIFIER_assert_~cond)} [101] L12-->L13: Formula: (= 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[] {337#false} is VALID [2022-04-27 19:47:19,085 INFO L290 TraceCheckUtils]: 17: Hoare triple {337#false} [106] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {337#false} is VALID [2022-04-27 19:47:19,085 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 19:47:19,086 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 19:47:19,086 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 19:47:19,086 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [696422934] [2022-04-27 19:47:19,086 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 19:47:19,086 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1282131824] [2022-04-27 19:47:19,086 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1282131824] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 19:47:19,086 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 19:47:19,087 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 19:47:19,087 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [388943521] [2022-04-27 19:47:19,087 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 19:47:19,087 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-27 19:47:19,088 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 19:47:19,088 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 19:47:19,100 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 19:47:19,101 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 19:47:19,101 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 19:47:19,101 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 19:47:19,101 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-27 19:47:19,101 INFO L87 Difference]: Start difference. First operand 29 states and 35 transitions. Second operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 19:47:19,264 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 19:47:19,264 INFO L93 Difference]: Finished difference Result 40 states and 51 transitions. [2022-04-27 19:47:19,264 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 19:47:19,265 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-27 19:47:19,265 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 19:47:19,265 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 19:47:19,270 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 52 transitions. [2022-04-27 19:47:19,270 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 19:47:19,272 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 52 transitions. [2022-04-27 19:47:19,273 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 52 transitions. [2022-04-27 19:47:19,316 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 19:47:19,317 INFO L225 Difference]: With dead ends: 40 [2022-04-27 19:47:19,317 INFO L226 Difference]: Without dead ends: 40 [2022-04-27 19:47:19,318 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 14 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-27 19:47:19,320 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 9 mSDsluCounter, 59 mSDsCounter, 0 mSdLazyCounter, 54 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 83 SdHoareTripleChecker+Invalid, 54 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 54 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 19:47:19,321 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [11 Valid, 83 Invalid, 54 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 54 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 19:47:19,321 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 40 states. [2022-04-27 19:47:19,326 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 40 to 34. [2022-04-27 19:47:19,326 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 19:47:19,326 INFO L82 GeneralOperation]: Start isEquivalent. First operand 40 states. Second operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-27 19:47:19,326 INFO L74 IsIncluded]: Start isIncluded. First operand 40 states. Second operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-27 19:47:19,327 INFO L87 Difference]: Start difference. First operand 40 states. Second operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-27 19:47:19,332 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 19:47:19,332 INFO L93 Difference]: Finished difference Result 40 states and 51 transitions. [2022-04-27 19:47:19,332 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 51 transitions. [2022-04-27 19:47:19,337 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 19:47:19,337 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 19:47:19,338 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) Second operand 40 states. [2022-04-27 19:47:19,338 INFO L87 Difference]: Start difference. First operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) Second operand 40 states. [2022-04-27 19:47:19,341 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 19:47:19,341 INFO L93 Difference]: Finished difference Result 40 states and 51 transitions. [2022-04-27 19:47:19,341 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 51 transitions. [2022-04-27 19:47:19,342 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 19:47:19,342 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 19:47:19,343 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 19:47:19,343 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 19:47:19,343 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-27 19:47:19,346 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 40 transitions. [2022-04-27 19:47:19,346 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 40 transitions. Word has length 18 [2022-04-27 19:47:19,346 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 19:47:19,346 INFO L495 AbstractCegarLoop]: Abstraction has 34 states and 40 transitions. [2022-04-27 19:47:19,346 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 19:47:19,346 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 40 transitions. [2022-04-27 19:47:19,347 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-04-27 19:47:19,347 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 19:47:19,347 INFO L195 NwaCegarLoop]: trace histogram [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-27 19:47:19,363 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-27 19:47:19,559 WARN L477 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-27 19:47:19,560 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 19:47:19,560 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 19:47:19,560 INFO L85 PathProgramCache]: Analyzing trace with hash -1025358414, now seen corresponding path program 1 times [2022-04-27 19:47:19,560 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 19:47:19,560 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1585343328] [2022-04-27 19:47:19,561 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 19:47:19,561 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 19:47:19,572 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 19:47:19,573 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1457711664] [2022-04-27 19:47:19,573 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 19:47:19,573 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 19:47:19,573 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 19:47:19,574 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-27 19:47:19,575 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-27 19:47:19,605 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 19:47:19,606 INFO L263 TraceCheckSpWp]: Trace formula consists of 96 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-27 19:47:19,618 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 19:47:19,619 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 19:47:30,056 INFO L272 TraceCheckUtils]: 0: Hoare triple {550#true} [80] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {550#true} is VALID [2022-04-27 19:47:30,056 INFO L290 TraceCheckUtils]: 1: Hoare triple {550#true} [82] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #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[~counter~0, #NULL.offset, #NULL.base] {550#true} is VALID [2022-04-27 19:47:30,056 INFO L290 TraceCheckUtils]: 2: Hoare triple {550#true} [85] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {550#true} is VALID [2022-04-27 19:47:30,056 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {550#true} {550#true} [115] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {550#true} is VALID [2022-04-27 19:47:30,056 INFO L272 TraceCheckUtils]: 4: Hoare triple {550#true} [81] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {550#true} is VALID [2022-04-27 19:47:30,057 INFO L290 TraceCheckUtils]: 5: Hoare triple {550#true} [84] mainENTRY-->L26: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_1 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_5, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_6, main_~p~0=v_main_~p~0_3, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {550#true} is VALID [2022-04-27 19:47:30,057 INFO L272 TraceCheckUtils]: 6: Hoare triple {550#true} [86] L26-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {550#true} is VALID [2022-04-27 19:47:30,057 INFO L290 TraceCheckUtils]: 7: Hoare triple {550#true} [88] assume_abort_if_notENTRY-->L9: 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] {576#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 19:47:30,058 INFO L290 TraceCheckUtils]: 8: Hoare triple {576#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [92] L9-->L9-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[] {580#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 19:47:30,058 INFO L290 TraceCheckUtils]: 9: Hoare triple {580#(not (= |assume_abort_if_not_#in~cond| 0))} [96] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {580#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 19:47:30,059 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {580#(not (= |assume_abort_if_not_#in~cond| 0))} {550#true} [116] assume_abort_if_notEXIT-->L26-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {587#(<= 1 main_~y~0)} is VALID [2022-04-27 19:47:30,059 INFO L290 TraceCheckUtils]: 11: Hoare triple {587#(<= 1 main_~y~0)} [87] L26-1-->L46-2: Formula: (and (= v_main_~a~0_9 v_main_~x~0_4) (= v_main_~b~0_9 v_main_~y~0_5) (= v_main_~q~0_8 0) (= v_main_~p~0_5 1)) InVars {main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5} OutVars{main_~q~0=v_main_~q~0_8, main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5, main_~b~0=v_main_~b~0_9, main_~p~0=v_main_~p~0_5, main_~a~0=v_main_~a~0_9} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~p~0, main_~a~0] {591#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is VALID [2022-04-27 19:47:30,060 INFO L290 TraceCheckUtils]: 12: Hoare triple {591#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {591#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is VALID [2022-04-27 19:47:30,060 INFO L290 TraceCheckUtils]: 13: Hoare triple {591#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {591#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is VALID [2022-04-27 19:47:30,060 INFO L272 TraceCheckUtils]: 14: Hoare triple {591#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} [99] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {550#true} is VALID [2022-04-27 19:47:30,061 INFO L290 TraceCheckUtils]: 15: Hoare triple {550#true} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |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_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {604#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 19:47:30,061 INFO L290 TraceCheckUtils]: 16: Hoare triple {604#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [102] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_1 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {608#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 19:47:30,062 INFO L290 TraceCheckUtils]: 17: Hoare triple {608#(not (= |__VERIFIER_assert_#in~cond| 0))} [108] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {608#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 19:47:32,064 WARN L284 TraceCheckUtils]: 18: Hoare quadruple {608#(not (= |__VERIFIER_assert_#in~cond| 0))} {591#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} [118] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {615#(and (or (and (= (mod (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) (* main_~b~0 main_~a~0)) 0) (not (= main_~a~0 0))) (= (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) 0)) (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is UNKNOWN [2022-04-27 19:47:32,065 INFO L290 TraceCheckUtils]: 19: Hoare triple {615#(and (or (and (= (mod (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) (* main_~b~0 main_~a~0)) 0) (not (= main_~a~0 0))) (= (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) 0)) (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} [103] L34-1-->L33-3: Formula: (or (= 0 v_main_~a~0_12) (= 0 v_main_~b~0_12)) InVars {main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_12} OutVars{main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_12} AuxVars[] AssignedVars[] {619#(and (= main_~q~0 (* main_~y~0 main_~x~0)) (<= 1 main_~y~0))} is VALID [2022-04-27 19:47:32,066 INFO L272 TraceCheckUtils]: 20: Hoare triple {619#(and (= main_~q~0 (* main_~y~0 main_~x~0)) (<= 1 main_~y~0))} [93] L33-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~q~0_12 (* v_main_~y~0_10 v_main_~x~0_8)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~q~0=v_main_~q~0_12, main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_8} 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] {623#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 19:47:32,067 INFO L290 TraceCheckUtils]: 21: Hoare triple {623#(<= 1 |__VERIFIER_assert_#in~cond|)} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |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_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {627#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 19:47:32,067 INFO L290 TraceCheckUtils]: 22: Hoare triple {627#(<= 1 __VERIFIER_assert_~cond)} [101] L12-->L13: Formula: (= 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[] {551#false} is VALID [2022-04-27 19:47:32,067 INFO L290 TraceCheckUtils]: 23: Hoare triple {551#false} [106] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {551#false} is VALID [2022-04-27 19:47:32,068 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 19:47:32,068 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 19:48:08,405 INFO L290 TraceCheckUtils]: 23: Hoare triple {551#false} [106] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {551#false} is VALID [2022-04-27 19:48:08,406 INFO L290 TraceCheckUtils]: 22: Hoare triple {627#(<= 1 __VERIFIER_assert_~cond)} [101] L12-->L13: Formula: (= 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[] {551#false} is VALID [2022-04-27 19:48:08,408 INFO L290 TraceCheckUtils]: 21: Hoare triple {623#(<= 1 |__VERIFIER_assert_#in~cond|)} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |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_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {627#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 19:48:08,415 INFO L272 TraceCheckUtils]: 20: Hoare triple {643#(= main_~q~0 (* main_~y~0 main_~x~0))} [93] L33-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~q~0_12 (* v_main_~y~0_10 v_main_~x~0_8)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~q~0=v_main_~q~0_12, main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_8} 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] {623#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 19:48:08,415 INFO L290 TraceCheckUtils]: 19: Hoare triple {647#(or (= main_~q~0 (* main_~y~0 main_~x~0)) (and (not (= main_~b~0 0)) (not (= main_~a~0 0))))} [103] L34-1-->L33-3: Formula: (or (= 0 v_main_~a~0_12) (= 0 v_main_~b~0_12)) InVars {main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_12} OutVars{main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_12} AuxVars[] AssignedVars[] {643#(= main_~q~0 (* main_~y~0 main_~x~0))} is VALID [2022-04-27 19:48:08,417 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {608#(not (= |__VERIFIER_assert_#in~cond| 0))} {550#true} [118] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {647#(or (= main_~q~0 (* main_~y~0 main_~x~0)) (and (not (= main_~b~0 0)) (not (= main_~a~0 0))))} is VALID [2022-04-27 19:48:08,417 INFO L290 TraceCheckUtils]: 17: Hoare triple {608#(not (= |__VERIFIER_assert_#in~cond| 0))} [108] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {608#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 19:48:08,418 INFO L290 TraceCheckUtils]: 16: Hoare triple {660#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [102] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_1 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {608#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 19:48:08,418 INFO L290 TraceCheckUtils]: 15: Hoare triple {550#true} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |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_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {660#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 19:48:08,418 INFO L272 TraceCheckUtils]: 14: Hoare triple {550#true} [99] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {550#true} is VALID [2022-04-27 19:48:08,418 INFO L290 TraceCheckUtils]: 13: Hoare triple {550#true} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {550#true} is VALID [2022-04-27 19:48:08,418 INFO L290 TraceCheckUtils]: 12: Hoare triple {550#true} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {550#true} is VALID [2022-04-27 19:48:08,418 INFO L290 TraceCheckUtils]: 11: Hoare triple {550#true} [87] L26-1-->L46-2: Formula: (and (= v_main_~a~0_9 v_main_~x~0_4) (= v_main_~b~0_9 v_main_~y~0_5) (= v_main_~q~0_8 0) (= v_main_~p~0_5 1)) InVars {main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5} OutVars{main_~q~0=v_main_~q~0_8, main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5, main_~b~0=v_main_~b~0_9, main_~p~0=v_main_~p~0_5, main_~a~0=v_main_~a~0_9} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~p~0, main_~a~0] {550#true} is VALID [2022-04-27 19:48:08,419 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {550#true} {550#true} [116] assume_abort_if_notEXIT-->L26-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {550#true} is VALID [2022-04-27 19:48:08,419 INFO L290 TraceCheckUtils]: 9: Hoare triple {550#true} [96] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {550#true} is VALID [2022-04-27 19:48:08,419 INFO L290 TraceCheckUtils]: 8: Hoare triple {550#true} [92] L9-->L9-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[] {550#true} is VALID [2022-04-27 19:48:08,419 INFO L290 TraceCheckUtils]: 7: Hoare triple {550#true} [88] assume_abort_if_notENTRY-->L9: 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] {550#true} is VALID [2022-04-27 19:48:08,419 INFO L272 TraceCheckUtils]: 6: Hoare triple {550#true} [86] L26-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {550#true} is VALID [2022-04-27 19:48:08,419 INFO L290 TraceCheckUtils]: 5: Hoare triple {550#true} [84] mainENTRY-->L26: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_1 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_5, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_6, main_~p~0=v_main_~p~0_3, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {550#true} is VALID [2022-04-27 19:48:08,419 INFO L272 TraceCheckUtils]: 4: Hoare triple {550#true} [81] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {550#true} is VALID [2022-04-27 19:48:08,420 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {550#true} {550#true} [115] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {550#true} is VALID [2022-04-27 19:48:08,420 INFO L290 TraceCheckUtils]: 2: Hoare triple {550#true} [85] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {550#true} is VALID [2022-04-27 19:48:08,420 INFO L290 TraceCheckUtils]: 1: Hoare triple {550#true} [82] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #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[~counter~0, #NULL.offset, #NULL.base] {550#true} is VALID [2022-04-27 19:48:08,420 INFO L272 TraceCheckUtils]: 0: Hoare triple {550#true} [80] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {550#true} is VALID [2022-04-27 19:48:08,420 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 19:48:08,420 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 19:48:08,420 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1585343328] [2022-04-27 19:48:08,420 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 19:48:08,420 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1457711664] [2022-04-27 19:48:08,421 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1457711664] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 19:48:08,421 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 19:48:08,421 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 8] total 15 [2022-04-27 19:48:08,421 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1869254831] [2022-04-27 19:48:08,421 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 19:48:08,421 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 13 states have (on average 1.9230769230769231) internal successors, (25), 11 states have internal predecessors, (25), 4 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 2 states have call successors, (5) Word has length 24 [2022-04-27 19:48:08,422 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 19:48:08,422 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 13 states have (on average 1.9230769230769231) internal successors, (25), 11 states have internal predecessors, (25), 4 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 19:48:10,456 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 36 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-27 19:48:10,456 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-27 19:48:10,456 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 19:48:10,457 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-27 19:48:10,457 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=39, Invalid=171, Unknown=0, NotChecked=0, Total=210 [2022-04-27 19:48:10,457 INFO L87 Difference]: Start difference. First operand 34 states and 40 transitions. Second operand has 15 states, 13 states have (on average 1.9230769230769231) internal successors, (25), 11 states have internal predecessors, (25), 4 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 19:48:13,538 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 19:48:13,538 INFO L93 Difference]: Finished difference Result 53 states and 70 transitions. [2022-04-27 19:48:13,538 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-27 19:48:13,539 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 13 states have (on average 1.9230769230769231) internal successors, (25), 11 states have internal predecessors, (25), 4 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 2 states have call successors, (5) Word has length 24 [2022-04-27 19:48:13,539 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 19:48:13,539 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 13 states have (on average 1.9230769230769231) internal successors, (25), 11 states have internal predecessors, (25), 4 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 19:48:13,541 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 68 transitions. [2022-04-27 19:48:13,541 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 13 states have (on average 1.9230769230769231) internal successors, (25), 11 states have internal predecessors, (25), 4 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 19:48:13,543 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 68 transitions. [2022-04-27 19:48:13,543 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 68 transitions. [2022-04-27 19:48:15,618 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 67 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-27 19:48:15,619 INFO L225 Difference]: With dead ends: 53 [2022-04-27 19:48:15,619 INFO L226 Difference]: Without dead ends: 53 [2022-04-27 19:48:15,619 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 53 GetRequests, 34 SyntacticMatches, 1 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 52 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=71, Invalid=309, Unknown=0, NotChecked=0, Total=380 [2022-04-27 19:48:15,620 INFO L413 NwaCegarLoop]: 20 mSDtfsCounter, 53 mSDsluCounter, 121 mSDsCounter, 0 mSdLazyCounter, 232 mSolverCounterSat, 30 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 58 SdHoareTripleChecker+Valid, 141 SdHoareTripleChecker+Invalid, 262 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 30 IncrementalHoareTripleChecker+Valid, 232 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.5s IncrementalHoareTripleChecker+Time [2022-04-27 19:48:15,620 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [58 Valid, 141 Invalid, 262 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [30 Valid, 232 Invalid, 0 Unknown, 0 Unchecked, 1.5s Time] [2022-04-27 19:48:15,620 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 53 states. [2022-04-27 19:48:15,622 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 53 to 39. [2022-04-27 19:48:15,622 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 19:48:15,622 INFO L82 GeneralOperation]: Start isEquivalent. First operand 53 states. Second operand has 39 states, 25 states have (on average 1.24) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 5 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-27 19:48:15,623 INFO L74 IsIncluded]: Start isIncluded. First operand 53 states. Second operand has 39 states, 25 states have (on average 1.24) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 5 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-27 19:48:15,623 INFO L87 Difference]: Start difference. First operand 53 states. Second operand has 39 states, 25 states have (on average 1.24) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 5 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-27 19:48:15,624 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 19:48:15,624 INFO L93 Difference]: Finished difference Result 53 states and 70 transitions. [2022-04-27 19:48:15,625 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 70 transitions. [2022-04-27 19:48:15,625 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 19:48:15,625 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 19:48:15,625 INFO L74 IsIncluded]: Start isIncluded. First operand has 39 states, 25 states have (on average 1.24) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 5 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) Second operand 53 states. [2022-04-27 19:48:15,625 INFO L87 Difference]: Start difference. First operand has 39 states, 25 states have (on average 1.24) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 5 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) Second operand 53 states. [2022-04-27 19:48:15,627 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 19:48:15,627 INFO L93 Difference]: Finished difference Result 53 states and 70 transitions. [2022-04-27 19:48:15,627 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 70 transitions. [2022-04-27 19:48:15,628 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 19:48:15,628 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 19:48:15,628 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 19:48:15,628 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 19:48:15,628 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 39 states, 25 states have (on average 1.24) internal successors, (31), 28 states have internal predecessors, (31), 8 states have call successors, (8), 6 states have call predecessors, (8), 5 states have return successors, (6), 4 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-27 19:48:15,629 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 39 states to 39 states and 45 transitions. [2022-04-27 19:48:15,629 INFO L78 Accepts]: Start accepts. Automaton has 39 states and 45 transitions. Word has length 24 [2022-04-27 19:48:15,629 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 19:48:15,629 INFO L495 AbstractCegarLoop]: Abstraction has 39 states and 45 transitions. [2022-04-27 19:48:15,629 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 13 states have (on average 1.9230769230769231) internal successors, (25), 11 states have internal predecessors, (25), 4 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 4 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-27 19:48:15,629 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 45 transitions. [2022-04-27 19:48:15,630 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-04-27 19:48:15,630 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 19:48:15,630 INFO L195 NwaCegarLoop]: trace histogram [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] [2022-04-27 19:48:15,645 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-27 19:48:15,830 WARN L477 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-27 19:48:15,831 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 19:48:15,831 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 19:48:15,831 INFO L85 PathProgramCache]: Analyzing trace with hash -2117889998, now seen corresponding path program 1 times [2022-04-27 19:48:15,831 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 19:48:15,832 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1035536045] [2022-04-27 19:48:15,832 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 19:48:15,832 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 19:48:15,842 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 19:48:15,843 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2117838772] [2022-04-27 19:48:15,843 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 19:48:15,843 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 19:48:15,843 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 19:48:15,844 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-27 19:48:15,863 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-27 19:48:15,880 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 19:48:15,880 INFO L263 TraceCheckSpWp]: Trace formula consists of 112 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-27 19:48:15,887 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 19:48:15,887 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 19:48:16,026 INFO L272 TraceCheckUtils]: 0: Hoare triple {917#true} [80] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {917#true} is VALID [2022-04-27 19:48:16,027 INFO L290 TraceCheckUtils]: 1: Hoare triple {917#true} [82] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #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[~counter~0, #NULL.offset, #NULL.base] {925#(<= ~counter~0 0)} is VALID [2022-04-27 19:48:16,027 INFO L290 TraceCheckUtils]: 2: Hoare triple {925#(<= ~counter~0 0)} [85] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {925#(<= ~counter~0 0)} is VALID [2022-04-27 19:48:16,028 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {925#(<= ~counter~0 0)} {917#true} [115] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {925#(<= ~counter~0 0)} is VALID [2022-04-27 19:48:16,028 INFO L272 TraceCheckUtils]: 4: Hoare triple {925#(<= ~counter~0 0)} [81] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {925#(<= ~counter~0 0)} is VALID [2022-04-27 19:48:16,028 INFO L290 TraceCheckUtils]: 5: Hoare triple {925#(<= ~counter~0 0)} [84] mainENTRY-->L26: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_1 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_5, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_6, main_~p~0=v_main_~p~0_3, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {925#(<= ~counter~0 0)} is VALID [2022-04-27 19:48:16,029 INFO L272 TraceCheckUtils]: 6: Hoare triple {925#(<= ~counter~0 0)} [86] L26-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {925#(<= ~counter~0 0)} is VALID [2022-04-27 19:48:16,029 INFO L290 TraceCheckUtils]: 7: Hoare triple {925#(<= ~counter~0 0)} [88] assume_abort_if_notENTRY-->L9: 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] {925#(<= ~counter~0 0)} is VALID [2022-04-27 19:48:16,030 INFO L290 TraceCheckUtils]: 8: Hoare triple {925#(<= ~counter~0 0)} [92] L9-->L9-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[] {925#(<= ~counter~0 0)} is VALID [2022-04-27 19:48:16,030 INFO L290 TraceCheckUtils]: 9: Hoare triple {925#(<= ~counter~0 0)} [96] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {925#(<= ~counter~0 0)} is VALID [2022-04-27 19:48:16,030 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {925#(<= ~counter~0 0)} {925#(<= ~counter~0 0)} [116] assume_abort_if_notEXIT-->L26-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {925#(<= ~counter~0 0)} is VALID [2022-04-27 19:48:16,031 INFO L290 TraceCheckUtils]: 11: Hoare triple {925#(<= ~counter~0 0)} [87] L26-1-->L46-2: Formula: (and (= v_main_~a~0_9 v_main_~x~0_4) (= v_main_~b~0_9 v_main_~y~0_5) (= v_main_~q~0_8 0) (= v_main_~p~0_5 1)) InVars {main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5} OutVars{main_~q~0=v_main_~q~0_8, main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5, main_~b~0=v_main_~b~0_9, main_~p~0=v_main_~p~0_5, main_~a~0=v_main_~a~0_9} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~p~0, main_~a~0] {925#(<= ~counter~0 0)} is VALID [2022-04-27 19:48:16,031 INFO L290 TraceCheckUtils]: 12: Hoare triple {925#(<= ~counter~0 0)} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {959#(<= ~counter~0 1)} is VALID [2022-04-27 19:48:16,032 INFO L290 TraceCheckUtils]: 13: Hoare triple {959#(<= ~counter~0 1)} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {959#(<= ~counter~0 1)} is VALID [2022-04-27 19:48:16,032 INFO L272 TraceCheckUtils]: 14: Hoare triple {959#(<= ~counter~0 1)} [99] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {959#(<= ~counter~0 1)} is VALID [2022-04-27 19:48:16,033 INFO L290 TraceCheckUtils]: 15: Hoare triple {959#(<= ~counter~0 1)} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |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_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {959#(<= ~counter~0 1)} is VALID [2022-04-27 19:48:16,033 INFO L290 TraceCheckUtils]: 16: Hoare triple {959#(<= ~counter~0 1)} [102] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_1 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {959#(<= ~counter~0 1)} is VALID [2022-04-27 19:48:16,033 INFO L290 TraceCheckUtils]: 17: Hoare triple {959#(<= ~counter~0 1)} [108] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {959#(<= ~counter~0 1)} is VALID [2022-04-27 19:48:16,034 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {959#(<= ~counter~0 1)} {959#(<= ~counter~0 1)} [118] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {959#(<= ~counter~0 1)} is VALID [2022-04-27 19:48:16,034 INFO L290 TraceCheckUtils]: 19: Hoare triple {959#(<= ~counter~0 1)} [104] L34-1-->L39: Formula: (and (not (= 0 v_main_~b~0_13)) (not (= 0 v_main_~a~0_13))) InVars {main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} OutVars{main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} AuxVars[] AssignedVars[] {959#(<= ~counter~0 1)} is VALID [2022-04-27 19:48:16,035 INFO L290 TraceCheckUtils]: 20: Hoare triple {959#(<= ~counter~0 1)} [109] L39-->L46-2: Formula: (let ((.cse5 (mod v_main_~b~0_15 2)) (.cse3 (mod v_main_~a~0_15 2))) (let ((.cse2 (and (not (= .cse3 0)) (< v_main_~a~0_15 0))) (.cse0 (and (not (= .cse5 0)) (< v_main_~b~0_15 0)))) (and (= (let ((.cse1 (div v_main_~b~0_15 2))) (ite .cse0 (+ .cse1 1) .cse1)) v_main_~b~0_14) (= v_main_~p~0_7 (* v_main_~p~0_8 4)) (= (ite .cse2 (+ (- 2) .cse3) .cse3) 0) (= (let ((.cse4 (div v_main_~a~0_15 2))) (ite .cse2 (+ .cse4 1) .cse4)) v_main_~a~0_14) (= (ite .cse0 (+ (- 2) .cse5) .cse5) 0)))) InVars {main_~b~0=v_main_~b~0_15, main_~p~0=v_main_~p~0_8, main_~a~0=v_main_~a~0_15} OutVars{main_~b~0=v_main_~b~0_14, main_~p~0=v_main_~p~0_7, main_~a~0=v_main_~a~0_14} AuxVars[] AssignedVars[main_~b~0, main_~p~0, main_~a~0] {959#(<= ~counter~0 1)} is VALID [2022-04-27 19:48:16,035 INFO L290 TraceCheckUtils]: 21: Hoare triple {959#(<= ~counter~0 1)} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {987#(<= |main_#t~post6| 1)} is VALID [2022-04-27 19:48:16,036 INFO L290 TraceCheckUtils]: 22: Hoare triple {987#(<= |main_#t~post6| 1)} [94] L33-1-->L33-3: Formula: (not (< |v_main_#t~post6_3| 2)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {918#false} is VALID [2022-04-27 19:48:16,036 INFO L272 TraceCheckUtils]: 23: Hoare triple {918#false} [93] L33-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~q~0_12 (* v_main_~y~0_10 v_main_~x~0_8)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~q~0=v_main_~q~0_12, main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_8} 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] {918#false} is VALID [2022-04-27 19:48:16,036 INFO L290 TraceCheckUtils]: 24: Hoare triple {918#false} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |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_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {918#false} is VALID [2022-04-27 19:48:16,036 INFO L290 TraceCheckUtils]: 25: Hoare triple {918#false} [101] L12-->L13: Formula: (= 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[] {918#false} is VALID [2022-04-27 19:48:16,036 INFO L290 TraceCheckUtils]: 26: Hoare triple {918#false} [106] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {918#false} is VALID [2022-04-27 19:48:16,036 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 19:48:16,036 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 19:48:16,160 INFO L290 TraceCheckUtils]: 26: Hoare triple {918#false} [106] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {918#false} is VALID [2022-04-27 19:48:16,160 INFO L290 TraceCheckUtils]: 25: Hoare triple {918#false} [101] L12-->L13: Formula: (= 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[] {918#false} is VALID [2022-04-27 19:48:16,161 INFO L290 TraceCheckUtils]: 24: Hoare triple {918#false} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |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_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {918#false} is VALID [2022-04-27 19:48:16,161 INFO L272 TraceCheckUtils]: 23: Hoare triple {918#false} [93] L33-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~q~0_12 (* v_main_~y~0_10 v_main_~x~0_8)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~q~0=v_main_~q~0_12, main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_8} 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] {918#false} is VALID [2022-04-27 19:48:16,161 INFO L290 TraceCheckUtils]: 22: Hoare triple {987#(<= |main_#t~post6| 1)} [94] L33-1-->L33-3: Formula: (not (< |v_main_#t~post6_3| 2)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {918#false} is VALID [2022-04-27 19:48:16,161 INFO L290 TraceCheckUtils]: 21: Hoare triple {959#(<= ~counter~0 1)} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {987#(<= |main_#t~post6| 1)} is VALID [2022-04-27 19:48:16,162 INFO L290 TraceCheckUtils]: 20: Hoare triple {959#(<= ~counter~0 1)} [109] L39-->L46-2: Formula: (let ((.cse5 (mod v_main_~b~0_15 2)) (.cse3 (mod v_main_~a~0_15 2))) (let ((.cse2 (and (not (= .cse3 0)) (< v_main_~a~0_15 0))) (.cse0 (and (not (= .cse5 0)) (< v_main_~b~0_15 0)))) (and (= (let ((.cse1 (div v_main_~b~0_15 2))) (ite .cse0 (+ .cse1 1) .cse1)) v_main_~b~0_14) (= v_main_~p~0_7 (* v_main_~p~0_8 4)) (= (ite .cse2 (+ (- 2) .cse3) .cse3) 0) (= (let ((.cse4 (div v_main_~a~0_15 2))) (ite .cse2 (+ .cse4 1) .cse4)) v_main_~a~0_14) (= (ite .cse0 (+ (- 2) .cse5) .cse5) 0)))) InVars {main_~b~0=v_main_~b~0_15, main_~p~0=v_main_~p~0_8, main_~a~0=v_main_~a~0_15} OutVars{main_~b~0=v_main_~b~0_14, main_~p~0=v_main_~p~0_7, main_~a~0=v_main_~a~0_14} AuxVars[] AssignedVars[main_~b~0, main_~p~0, main_~a~0] {959#(<= ~counter~0 1)} is VALID [2022-04-27 19:48:16,162 INFO L290 TraceCheckUtils]: 19: Hoare triple {959#(<= ~counter~0 1)} [104] L34-1-->L39: Formula: (and (not (= 0 v_main_~b~0_13)) (not (= 0 v_main_~a~0_13))) InVars {main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} OutVars{main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} AuxVars[] AssignedVars[] {959#(<= ~counter~0 1)} is VALID [2022-04-27 19:48:16,163 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {917#true} {959#(<= ~counter~0 1)} [118] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {959#(<= ~counter~0 1)} is VALID [2022-04-27 19:48:16,163 INFO L290 TraceCheckUtils]: 17: Hoare triple {917#true} [108] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {917#true} is VALID [2022-04-27 19:48:16,163 INFO L290 TraceCheckUtils]: 16: Hoare triple {917#true} [102] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_1 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {917#true} is VALID [2022-04-27 19:48:16,163 INFO L290 TraceCheckUtils]: 15: Hoare triple {917#true} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |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_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {917#true} is VALID [2022-04-27 19:48:16,164 INFO L272 TraceCheckUtils]: 14: Hoare triple {959#(<= ~counter~0 1)} [99] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {917#true} is VALID [2022-04-27 19:48:16,164 INFO L290 TraceCheckUtils]: 13: Hoare triple {959#(<= ~counter~0 1)} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {959#(<= ~counter~0 1)} is VALID [2022-04-27 19:48:16,164 INFO L290 TraceCheckUtils]: 12: Hoare triple {925#(<= ~counter~0 0)} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {959#(<= ~counter~0 1)} is VALID [2022-04-27 19:48:16,165 INFO L290 TraceCheckUtils]: 11: Hoare triple {925#(<= ~counter~0 0)} [87] L26-1-->L46-2: Formula: (and (= v_main_~a~0_9 v_main_~x~0_4) (= v_main_~b~0_9 v_main_~y~0_5) (= v_main_~q~0_8 0) (= v_main_~p~0_5 1)) InVars {main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5} OutVars{main_~q~0=v_main_~q~0_8, main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5, main_~b~0=v_main_~b~0_9, main_~p~0=v_main_~p~0_5, main_~a~0=v_main_~a~0_9} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~p~0, main_~a~0] {925#(<= ~counter~0 0)} is VALID [2022-04-27 19:48:16,165 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {917#true} {925#(<= ~counter~0 0)} [116] assume_abort_if_notEXIT-->L26-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {925#(<= ~counter~0 0)} is VALID [2022-04-27 19:48:16,165 INFO L290 TraceCheckUtils]: 9: Hoare triple {917#true} [96] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {917#true} is VALID [2022-04-27 19:48:16,166 INFO L290 TraceCheckUtils]: 8: Hoare triple {917#true} [92] L9-->L9-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[] {917#true} is VALID [2022-04-27 19:48:16,166 INFO L290 TraceCheckUtils]: 7: Hoare triple {917#true} [88] assume_abort_if_notENTRY-->L9: 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] {917#true} is VALID [2022-04-27 19:48:16,166 INFO L272 TraceCheckUtils]: 6: Hoare triple {925#(<= ~counter~0 0)} [86] L26-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {917#true} is VALID [2022-04-27 19:48:16,166 INFO L290 TraceCheckUtils]: 5: Hoare triple {925#(<= ~counter~0 0)} [84] mainENTRY-->L26: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_1 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_5, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_6, main_~p~0=v_main_~p~0_3, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {925#(<= ~counter~0 0)} is VALID [2022-04-27 19:48:16,167 INFO L272 TraceCheckUtils]: 4: Hoare triple {925#(<= ~counter~0 0)} [81] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {925#(<= ~counter~0 0)} is VALID [2022-04-27 19:48:16,167 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {925#(<= ~counter~0 0)} {917#true} [115] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {925#(<= ~counter~0 0)} is VALID [2022-04-27 19:48:16,167 INFO L290 TraceCheckUtils]: 2: Hoare triple {925#(<= ~counter~0 0)} [85] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {925#(<= ~counter~0 0)} is VALID [2022-04-27 19:48:16,168 INFO L290 TraceCheckUtils]: 1: Hoare triple {917#true} [82] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #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[~counter~0, #NULL.offset, #NULL.base] {925#(<= ~counter~0 0)} is VALID [2022-04-27 19:48:16,168 INFO L272 TraceCheckUtils]: 0: Hoare triple {917#true} [80] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {917#true} is VALID [2022-04-27 19:48:16,168 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 19:48:16,168 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 19:48:16,168 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1035536045] [2022-04-27 19:48:16,168 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 19:48:16,168 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2117838772] [2022-04-27 19:48:16,169 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2117838772] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 19:48:16,169 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 19:48:16,169 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 5 [2022-04-27 19:48:16,169 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [394740743] [2022-04-27 19:48:16,169 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 19:48:16,169 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 4 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 2 states have call predecessors, (5), 3 states have call successors, (5) Word has length 27 [2022-04-27 19:48:16,169 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 19:48:16,170 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 4 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 2 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 19:48:16,197 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 37 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 19:48:16,197 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 19:48:16,197 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 19:48:16,197 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 19:48:16,198 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-27 19:48:16,198 INFO L87 Difference]: Start difference. First operand 39 states and 45 transitions. Second operand has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 4 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 2 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 19:48:16,287 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 19:48:16,288 INFO L93 Difference]: Finished difference Result 57 states and 66 transitions. [2022-04-27 19:48:16,288 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-27 19:48:16,288 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 4 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 2 states have call predecessors, (5), 3 states have call successors, (5) Word has length 27 [2022-04-27 19:48:16,288 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 19:48:16,288 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 4 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 2 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 19:48:16,289 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 56 transitions. [2022-04-27 19:48:16,289 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 4 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 2 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 19:48:16,290 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 56 transitions. [2022-04-27 19:48:16,290 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 56 transitions. [2022-04-27 19:48:16,327 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 19:48:16,328 INFO L225 Difference]: With dead ends: 57 [2022-04-27 19:48:16,328 INFO L226 Difference]: Without dead ends: 55 [2022-04-27 19:48:16,328 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 54 GetRequests, 49 SyntacticMatches, 1 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-04-27 19:48:16,328 INFO L413 NwaCegarLoop]: 35 mSDtfsCounter, 17 mSDsluCounter, 73 mSDsCounter, 0 mSdLazyCounter, 14 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 108 SdHoareTripleChecker+Invalid, 19 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 14 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-27 19:48:16,329 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [17 Valid, 108 Invalid, 19 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 14 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 19:48:16,329 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 55 states. [2022-04-27 19:48:16,332 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 55 to 53. [2022-04-27 19:48:16,332 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 19:48:16,333 INFO L82 GeneralOperation]: Start isEquivalent. First operand 55 states. Second operand has 53 states, 36 states have (on average 1.2777777777777777) internal successors, (46), 38 states have internal predecessors, (46), 10 states have call successors, (10), 8 states have call predecessors, (10), 6 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 19:48:16,333 INFO L74 IsIncluded]: Start isIncluded. First operand 55 states. Second operand has 53 states, 36 states have (on average 1.2777777777777777) internal successors, (46), 38 states have internal predecessors, (46), 10 states have call successors, (10), 8 states have call predecessors, (10), 6 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 19:48:16,333 INFO L87 Difference]: Start difference. First operand 55 states. Second operand has 53 states, 36 states have (on average 1.2777777777777777) internal successors, (46), 38 states have internal predecessors, (46), 10 states have call successors, (10), 8 states have call predecessors, (10), 6 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 19:48:16,335 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 19:48:16,335 INFO L93 Difference]: Finished difference Result 55 states and 64 transitions. [2022-04-27 19:48:16,335 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 64 transitions. [2022-04-27 19:48:16,335 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 19:48:16,335 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 19:48:16,335 INFO L74 IsIncluded]: Start isIncluded. First operand has 53 states, 36 states have (on average 1.2777777777777777) internal successors, (46), 38 states have internal predecessors, (46), 10 states have call successors, (10), 8 states have call predecessors, (10), 6 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 55 states. [2022-04-27 19:48:16,335 INFO L87 Difference]: Start difference. First operand has 53 states, 36 states have (on average 1.2777777777777777) internal successors, (46), 38 states have internal predecessors, (46), 10 states have call successors, (10), 8 states have call predecessors, (10), 6 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 55 states. [2022-04-27 19:48:16,337 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 19:48:16,337 INFO L93 Difference]: Finished difference Result 55 states and 64 transitions. [2022-04-27 19:48:16,337 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 64 transitions. [2022-04-27 19:48:16,337 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 19:48:16,337 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 19:48:16,337 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 19:48:16,337 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 19:48:16,338 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 53 states, 36 states have (on average 1.2777777777777777) internal successors, (46), 38 states have internal predecessors, (46), 10 states have call successors, (10), 8 states have call predecessors, (10), 6 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 19:48:16,339 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 53 states to 53 states and 63 transitions. [2022-04-27 19:48:16,339 INFO L78 Accepts]: Start accepts. Automaton has 53 states and 63 transitions. Word has length 27 [2022-04-27 19:48:16,340 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 19:48:16,340 INFO L495 AbstractCegarLoop]: Abstraction has 53 states and 63 transitions. [2022-04-27 19:48:16,340 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 5.0) internal successors, (25), 5 states have internal predecessors, (25), 4 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (5), 2 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 19:48:16,340 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 63 transitions. [2022-04-27 19:48:16,340 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-04-27 19:48:16,340 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 19:48:16,340 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 19:48:16,356 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-27 19:48:16,548 WARN L477 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-27 19:48:16,548 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 19:48:16,549 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 19:48:16,549 INFO L85 PathProgramCache]: Analyzing trace with hash -2116787731, now seen corresponding path program 1 times [2022-04-27 19:48:16,549 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 19:48:16,549 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1287381733] [2022-04-27 19:48:16,549 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 19:48:16,549 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 19:48:16,566 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 19:48:16,566 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1000792369] [2022-04-27 19:48:16,566 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 19:48:16,566 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 19:48:16,566 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 19:48:16,571 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-27 19:48:16,574 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-27 19:48:16,608 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 19:48:16,609 INFO L263 TraceCheckSpWp]: Trace formula consists of 112 conjuncts, 34 conjunts are in the unsatisfiable core [2022-04-27 19:48:16,619 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 19:48:16,619 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 19:48:18,874 INFO L272 TraceCheckUtils]: 0: Hoare triple {1305#true} [80] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1305#true} is VALID [2022-04-27 19:48:18,875 INFO L290 TraceCheckUtils]: 1: Hoare triple {1305#true} [82] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #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[~counter~0, #NULL.offset, #NULL.base] {1305#true} is VALID [2022-04-27 19:48:18,875 INFO L290 TraceCheckUtils]: 2: Hoare triple {1305#true} [85] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1305#true} is VALID [2022-04-27 19:48:18,875 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1305#true} {1305#true} [115] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1305#true} is VALID [2022-04-27 19:48:18,875 INFO L272 TraceCheckUtils]: 4: Hoare triple {1305#true} [81] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1305#true} is VALID [2022-04-27 19:48:18,875 INFO L290 TraceCheckUtils]: 5: Hoare triple {1305#true} [84] mainENTRY-->L26: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_1 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_5, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_6, main_~p~0=v_main_~p~0_3, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {1305#true} is VALID [2022-04-27 19:48:18,875 INFO L272 TraceCheckUtils]: 6: Hoare triple {1305#true} [86] L26-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1305#true} is VALID [2022-04-27 19:48:18,876 INFO L290 TraceCheckUtils]: 7: Hoare triple {1305#true} [88] assume_abort_if_notENTRY-->L9: 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] {1331#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 19:48:18,876 INFO L290 TraceCheckUtils]: 8: Hoare triple {1331#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [92] L9-->L9-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[] {1335#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 19:48:18,876 INFO L290 TraceCheckUtils]: 9: Hoare triple {1335#(not (= |assume_abort_if_not_#in~cond| 0))} [96] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1335#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 19:48:18,877 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1335#(not (= |assume_abort_if_not_#in~cond| 0))} {1305#true} [116] assume_abort_if_notEXIT-->L26-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1342#(<= 1 main_~y~0)} is VALID [2022-04-27 19:48:18,877 INFO L290 TraceCheckUtils]: 11: Hoare triple {1342#(<= 1 main_~y~0)} [87] L26-1-->L46-2: Formula: (and (= v_main_~a~0_9 v_main_~x~0_4) (= v_main_~b~0_9 v_main_~y~0_5) (= v_main_~q~0_8 0) (= v_main_~p~0_5 1)) InVars {main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5} OutVars{main_~q~0=v_main_~q~0_8, main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5, main_~b~0=v_main_~b~0_9, main_~p~0=v_main_~p~0_5, main_~a~0=v_main_~a~0_9} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~p~0, main_~a~0] {1346#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 19:48:18,878 INFO L290 TraceCheckUtils]: 12: Hoare triple {1346#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1346#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 19:48:18,878 INFO L290 TraceCheckUtils]: 13: Hoare triple {1346#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1346#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 19:48:18,879 INFO L272 TraceCheckUtils]: 14: Hoare triple {1346#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} [99] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {1305#true} is VALID [2022-04-27 19:48:18,879 INFO L290 TraceCheckUtils]: 15: Hoare triple {1305#true} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |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_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1359#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-27 19:48:18,879 INFO L290 TraceCheckUtils]: 16: Hoare triple {1359#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [102] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_1 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {1363#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 19:48:18,880 INFO L290 TraceCheckUtils]: 17: Hoare triple {1363#(not (= |__VERIFIER_assert_#in~cond| 0))} [108] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1363#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 19:48:18,880 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1363#(not (= |__VERIFIER_assert_#in~cond| 0))} {1346#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} [118] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {1346#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 19:48:18,881 INFO L290 TraceCheckUtils]: 19: Hoare triple {1346#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} [104] L34-1-->L39: Formula: (and (not (= 0 v_main_~b~0_13)) (not (= 0 v_main_~a~0_13))) InVars {main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} OutVars{main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} AuxVars[] AssignedVars[] {1346#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-27 19:48:18,882 INFO L290 TraceCheckUtils]: 20: Hoare triple {1346#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (<= 1 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} [109] L39-->L46-2: Formula: (let ((.cse5 (mod v_main_~b~0_15 2)) (.cse3 (mod v_main_~a~0_15 2))) (let ((.cse2 (and (not (= .cse3 0)) (< v_main_~a~0_15 0))) (.cse0 (and (not (= .cse5 0)) (< v_main_~b~0_15 0)))) (and (= (let ((.cse1 (div v_main_~b~0_15 2))) (ite .cse0 (+ .cse1 1) .cse1)) v_main_~b~0_14) (= v_main_~p~0_7 (* v_main_~p~0_8 4)) (= (ite .cse2 (+ (- 2) .cse3) .cse3) 0) (= (let ((.cse4 (div v_main_~a~0_15 2))) (ite .cse2 (+ .cse4 1) .cse4)) v_main_~a~0_14) (= (ite .cse0 (+ (- 2) .cse5) .cse5) 0)))) InVars {main_~b~0=v_main_~b~0_15, main_~p~0=v_main_~p~0_8, main_~a~0=v_main_~a~0_15} OutVars{main_~b~0=v_main_~b~0_14, main_~p~0=v_main_~p~0_7, main_~a~0=v_main_~a~0_14} AuxVars[] AssignedVars[main_~b~0, main_~p~0, main_~a~0] {1376#(and (= (div main_~y~0 2) main_~b~0) (<= (mod main_~y~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (<= 1 main_~y~0) (= (mod main_~x~0 2) 0))} is VALID [2022-04-27 19:48:18,883 INFO L290 TraceCheckUtils]: 21: Hoare triple {1376#(and (= (div main_~y~0 2) main_~b~0) (<= (mod main_~y~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (<= 1 main_~y~0) (= (mod main_~x~0 2) 0))} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1376#(and (= (div main_~y~0 2) main_~b~0) (<= (mod main_~y~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (<= 1 main_~y~0) (= (mod main_~x~0 2) 0))} is VALID [2022-04-27 19:48:18,883 INFO L290 TraceCheckUtils]: 22: Hoare triple {1376#(and (= (div main_~y~0 2) main_~b~0) (<= (mod main_~y~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (<= 1 main_~y~0) (= (mod main_~x~0 2) 0))} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1376#(and (= (div main_~y~0 2) main_~b~0) (<= (mod main_~y~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (<= 1 main_~y~0) (= (mod main_~x~0 2) 0))} is VALID [2022-04-27 19:48:18,887 INFO L272 TraceCheckUtils]: 23: Hoare triple {1376#(and (= (div main_~y~0 2) main_~b~0) (<= (mod main_~y~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (<= 1 main_~y~0) (= (mod main_~x~0 2) 0))} [99] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {1386#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 19:48:18,887 INFO L290 TraceCheckUtils]: 24: Hoare triple {1386#(<= 1 |__VERIFIER_assert_#in~cond|)} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |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_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1390#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 19:48:18,888 INFO L290 TraceCheckUtils]: 25: Hoare triple {1390#(<= 1 __VERIFIER_assert_~cond)} [101] L12-->L13: Formula: (= 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[] {1306#false} is VALID [2022-04-27 19:48:18,888 INFO L290 TraceCheckUtils]: 26: Hoare triple {1306#false} [106] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1306#false} is VALID [2022-04-27 19:48:18,888 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 1 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 19:48:18,888 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 19:49:28,239 INFO L290 TraceCheckUtils]: 26: Hoare triple {1306#false} [106] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1306#false} is VALID [2022-04-27 19:49:28,240 INFO L290 TraceCheckUtils]: 25: Hoare triple {1390#(<= 1 __VERIFIER_assert_~cond)} [101] L12-->L13: Formula: (= 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[] {1306#false} is VALID [2022-04-27 19:49:28,240 INFO L290 TraceCheckUtils]: 24: Hoare triple {1386#(<= 1 |__VERIFIER_assert_#in~cond|)} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |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_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1390#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 19:49:28,241 INFO L272 TraceCheckUtils]: 23: Hoare triple {1406#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} [99] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {1386#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 19:49:28,241 INFO L290 TraceCheckUtils]: 22: Hoare triple {1406#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1406#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-27 19:49:28,241 INFO L290 TraceCheckUtils]: 21: Hoare triple {1406#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1406#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-27 19:49:28,245 INFO L290 TraceCheckUtils]: 20: Hoare triple {1416#(or (and (or (not (= (mod main_~b~0 2) 0)) (= (+ (* (div main_~b~0 2) (* main_~p~0 4) (div main_~a~0 2)) main_~q~0) (* main_~y~0 main_~x~0))) (or (= (mod main_~b~0 2) 0) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))) (not (= (mod main_~a~0 2) 0)) (and (not (< main_~b~0 0)) (not (<= (mod main_~b~0 2) 0))))} [109] L39-->L46-2: Formula: (let ((.cse5 (mod v_main_~b~0_15 2)) (.cse3 (mod v_main_~a~0_15 2))) (let ((.cse2 (and (not (= .cse3 0)) (< v_main_~a~0_15 0))) (.cse0 (and (not (= .cse5 0)) (< v_main_~b~0_15 0)))) (and (= (let ((.cse1 (div v_main_~b~0_15 2))) (ite .cse0 (+ .cse1 1) .cse1)) v_main_~b~0_14) (= v_main_~p~0_7 (* v_main_~p~0_8 4)) (= (ite .cse2 (+ (- 2) .cse3) .cse3) 0) (= (let ((.cse4 (div v_main_~a~0_15 2))) (ite .cse2 (+ .cse4 1) .cse4)) v_main_~a~0_14) (= (ite .cse0 (+ (- 2) .cse5) .cse5) 0)))) InVars {main_~b~0=v_main_~b~0_15, main_~p~0=v_main_~p~0_8, main_~a~0=v_main_~a~0_15} OutVars{main_~b~0=v_main_~b~0_14, main_~p~0=v_main_~p~0_7, main_~a~0=v_main_~a~0_14} AuxVars[] AssignedVars[main_~b~0, main_~p~0, main_~a~0] {1406#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-27 19:49:28,246 INFO L290 TraceCheckUtils]: 19: Hoare triple {1416#(or (and (or (not (= (mod main_~b~0 2) 0)) (= (+ (* (div main_~b~0 2) (* main_~p~0 4) (div main_~a~0 2)) main_~q~0) (* main_~y~0 main_~x~0))) (or (= (mod main_~b~0 2) 0) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))) (not (= (mod main_~a~0 2) 0)) (and (not (< main_~b~0 0)) (not (<= (mod main_~b~0 2) 0))))} [104] L34-1-->L39: Formula: (and (not (= 0 v_main_~b~0_13)) (not (= 0 v_main_~a~0_13))) InVars {main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} OutVars{main_~b~0=v_main_~b~0_13, main_~a~0=v_main_~a~0_13} AuxVars[] AssignedVars[] {1416#(or (and (or (not (= (mod main_~b~0 2) 0)) (= (+ (* (div main_~b~0 2) (* main_~p~0 4) (div main_~a~0 2)) main_~q~0) (* main_~y~0 main_~x~0))) (or (= (mod main_~b~0 2) 0) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))) (not (= (mod main_~a~0 2) 0)) (and (not (< main_~b~0 0)) (not (<= (mod main_~b~0 2) 0))))} is VALID [2022-04-27 19:49:28,253 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1363#(not (= |__VERIFIER_assert_#in~cond| 0))} {1423#(or (not (= (mod main_~a~0 2) 0)) (= (mod main_~b~0 2) 0) (not (< main_~b~0 0)) (not (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))} [118] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {1416#(or (and (or (not (= (mod main_~b~0 2) 0)) (= (+ (* (div main_~b~0 2) (* main_~p~0 4) (div main_~a~0 2)) main_~q~0) (* main_~y~0 main_~x~0))) (or (= (mod main_~b~0 2) 0) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))) (not (= (mod main_~a~0 2) 0)) (and (not (< main_~b~0 0)) (not (<= (mod main_~b~0 2) 0))))} is VALID [2022-04-27 19:49:28,253 INFO L290 TraceCheckUtils]: 17: Hoare triple {1363#(not (= |__VERIFIER_assert_#in~cond| 0))} [108] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1363#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 19:49:28,254 INFO L290 TraceCheckUtils]: 16: Hoare triple {1433#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [102] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_1 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {1363#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-27 19:49:28,255 INFO L290 TraceCheckUtils]: 15: Hoare triple {1305#true} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |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_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1433#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-27 19:49:28,255 INFO L272 TraceCheckUtils]: 14: Hoare triple {1423#(or (not (= (mod main_~a~0 2) 0)) (= (mod main_~b~0 2) 0) (not (< main_~b~0 0)) (not (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))} [99] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {1305#true} is VALID [2022-04-27 19:49:28,256 INFO L290 TraceCheckUtils]: 13: Hoare triple {1423#(or (not (= (mod main_~a~0 2) 0)) (= (mod main_~b~0 2) 0) (not (< main_~b~0 0)) (not (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1423#(or (not (= (mod main_~a~0 2) 0)) (= (mod main_~b~0 2) 0) (not (< main_~b~0 0)) (not (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 19:49:28,256 INFO L290 TraceCheckUtils]: 12: Hoare triple {1423#(or (not (= (mod main_~a~0 2) 0)) (= (mod main_~b~0 2) 0) (not (< main_~b~0 0)) (not (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1423#(or (not (= (mod main_~a~0 2) 0)) (= (mod main_~b~0 2) 0) (not (< main_~b~0 0)) (not (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 19:49:28,257 INFO L290 TraceCheckUtils]: 11: Hoare triple {1446#(or (<= 0 main_~y~0) (= (mod main_~y~0 2) 0) (= (+ (* (div main_~x~0 2) 4) (* (* (div main_~x~0 2) (div main_~y~0 2)) 4)) (* main_~y~0 main_~x~0)) (not (= (mod main_~x~0 2) 0)))} [87] L26-1-->L46-2: Formula: (and (= v_main_~a~0_9 v_main_~x~0_4) (= v_main_~b~0_9 v_main_~y~0_5) (= v_main_~q~0_8 0) (= v_main_~p~0_5 1)) InVars {main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5} OutVars{main_~q~0=v_main_~q~0_8, main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5, main_~b~0=v_main_~b~0_9, main_~p~0=v_main_~p~0_5, main_~a~0=v_main_~a~0_9} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~p~0, main_~a~0] {1423#(or (not (= (mod main_~a~0 2) 0)) (= (mod main_~b~0 2) 0) (not (< main_~b~0 0)) (not (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))) (= (+ main_~q~0 (* (+ (div main_~b~0 2) 1) (* main_~p~0 4) (div main_~a~0 2))) (* main_~y~0 main_~x~0)))} is VALID [2022-04-27 19:49:28,258 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1335#(not (= |assume_abort_if_not_#in~cond| 0))} {1305#true} [116] assume_abort_if_notEXIT-->L26-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1446#(or (<= 0 main_~y~0) (= (mod main_~y~0 2) 0) (= (+ (* (div main_~x~0 2) 4) (* (* (div main_~x~0 2) (div main_~y~0 2)) 4)) (* main_~y~0 main_~x~0)) (not (= (mod main_~x~0 2) 0)))} is VALID [2022-04-27 19:49:28,258 INFO L290 TraceCheckUtils]: 9: Hoare triple {1335#(not (= |assume_abort_if_not_#in~cond| 0))} [96] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1335#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 19:49:28,258 INFO L290 TraceCheckUtils]: 8: Hoare triple {1459#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} [92] L9-->L9-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[] {1335#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 19:49:28,259 INFO L290 TraceCheckUtils]: 7: Hoare triple {1305#true} [88] assume_abort_if_notENTRY-->L9: 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] {1459#(or (not (= |assume_abort_if_not_#in~cond| 0)) (= assume_abort_if_not_~cond 0))} is VALID [2022-04-27 19:49:28,259 INFO L272 TraceCheckUtils]: 6: Hoare triple {1305#true} [86] L26-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1305#true} is VALID [2022-04-27 19:49:28,259 INFO L290 TraceCheckUtils]: 5: Hoare triple {1305#true} [84] mainENTRY-->L26: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_1 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_5, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_6, main_~p~0=v_main_~p~0_3, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {1305#true} is VALID [2022-04-27 19:49:28,259 INFO L272 TraceCheckUtils]: 4: Hoare triple {1305#true} [81] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1305#true} is VALID [2022-04-27 19:49:28,259 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1305#true} {1305#true} [115] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1305#true} is VALID [2022-04-27 19:49:28,259 INFO L290 TraceCheckUtils]: 2: Hoare triple {1305#true} [85] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1305#true} is VALID [2022-04-27 19:49:28,259 INFO L290 TraceCheckUtils]: 1: Hoare triple {1305#true} [82] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #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[~counter~0, #NULL.offset, #NULL.base] {1305#true} is VALID [2022-04-27 19:49:28,259 INFO L272 TraceCheckUtils]: 0: Hoare triple {1305#true} [80] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1305#true} is VALID [2022-04-27 19:49:28,260 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 1 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 19:49:28,260 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 19:49:28,260 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1287381733] [2022-04-27 19:49:28,260 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 19:49:28,260 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1000792369] [2022-04-27 19:49:28,260 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1000792369] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 19:49:28,260 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 19:49:28,260 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 12] total 17 [2022-04-27 19:49:28,260 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1729655388] [2022-04-27 19:49:28,260 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 19:49:28,261 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 1.7647058823529411) internal successors, (30), 14 states have internal predecessors, (30), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) Word has length 27 [2022-04-27 19:49:28,261 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 19:49:28,261 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 17 states, 17 states have (on average 1.7647058823529411) internal successors, (30), 14 states have internal predecessors, (30), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 19:49:28,299 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-27 19:49:28,299 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-04-27 19:49:28,299 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 19:49:28,300 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-04-27 19:49:28,300 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=49, Invalid=223, Unknown=0, NotChecked=0, Total=272 [2022-04-27 19:49:28,302 INFO L87 Difference]: Start difference. First operand 53 states and 63 transitions. Second operand has 17 states, 17 states have (on average 1.7647058823529411) internal successors, (30), 14 states have internal predecessors, (30), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 19:49:31,840 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 19:49:31,840 INFO L93 Difference]: Finished difference Result 74 states and 96 transitions. [2022-04-27 19:49:31,840 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-27 19:49:31,840 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 1.7647058823529411) internal successors, (30), 14 states have internal predecessors, (30), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) Word has length 27 [2022-04-27 19:49:31,840 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 19:49:31,840 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 1.7647058823529411) internal successors, (30), 14 states have internal predecessors, (30), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 19:49:31,842 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 82 transitions. [2022-04-27 19:49:31,842 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 1.7647058823529411) internal successors, (30), 14 states have internal predecessors, (30), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 19:49:31,843 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 82 transitions. [2022-04-27 19:49:31,844 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 82 transitions. [2022-04-27 19:49:32,040 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 82 edges. 82 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 19:49:32,041 INFO L225 Difference]: With dead ends: 74 [2022-04-27 19:49:32,041 INFO L226 Difference]: Without dead ends: 74 [2022-04-27 19:49:32,041 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 58 GetRequests, 37 SyntacticMatches, 1 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 60 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=84, Invalid=378, Unknown=0, NotChecked=0, Total=462 [2022-04-27 19:49:32,042 INFO L413 NwaCegarLoop]: 22 mSDtfsCounter, 105 mSDsluCounter, 134 mSDsCounter, 0 mSdLazyCounter, 334 mSolverCounterSat, 92 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 108 SdHoareTripleChecker+Valid, 156 SdHoareTripleChecker+Invalid, 426 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 92 IncrementalHoareTripleChecker+Valid, 334 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.9s IncrementalHoareTripleChecker+Time [2022-04-27 19:49:32,042 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [108 Valid, 156 Invalid, 426 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [92 Valid, 334 Invalid, 0 Unknown, 0 Unchecked, 1.9s Time] [2022-04-27 19:49:32,042 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 74 states. [2022-04-27 19:49:32,045 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 74 to 57. [2022-04-27 19:49:32,045 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 19:49:32,045 INFO L82 GeneralOperation]: Start isEquivalent. First operand 74 states. Second operand has 57 states, 39 states have (on average 1.2564102564102564) internal successors, (49), 41 states have internal predecessors, (49), 10 states have call successors, (10), 9 states have call predecessors, (10), 7 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 19:49:32,046 INFO L74 IsIncluded]: Start isIncluded. First operand 74 states. Second operand has 57 states, 39 states have (on average 1.2564102564102564) internal successors, (49), 41 states have internal predecessors, (49), 10 states have call successors, (10), 9 states have call predecessors, (10), 7 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 19:49:32,046 INFO L87 Difference]: Start difference. First operand 74 states. Second operand has 57 states, 39 states have (on average 1.2564102564102564) internal successors, (49), 41 states have internal predecessors, (49), 10 states have call successors, (10), 9 states have call predecessors, (10), 7 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 19:49:32,048 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 19:49:32,048 INFO L93 Difference]: Finished difference Result 74 states and 96 transitions. [2022-04-27 19:49:32,048 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 96 transitions. [2022-04-27 19:49:32,048 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 19:49:32,048 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 19:49:32,048 INFO L74 IsIncluded]: Start isIncluded. First operand has 57 states, 39 states have (on average 1.2564102564102564) internal successors, (49), 41 states have internal predecessors, (49), 10 states have call successors, (10), 9 states have call predecessors, (10), 7 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 74 states. [2022-04-27 19:49:32,049 INFO L87 Difference]: Start difference. First operand has 57 states, 39 states have (on average 1.2564102564102564) internal successors, (49), 41 states have internal predecessors, (49), 10 states have call successors, (10), 9 states have call predecessors, (10), 7 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 74 states. [2022-04-27 19:49:32,050 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 19:49:32,050 INFO L93 Difference]: Finished difference Result 74 states and 96 transitions. [2022-04-27 19:49:32,050 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 96 transitions. [2022-04-27 19:49:32,051 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 19:49:32,051 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 19:49:32,051 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 19:49:32,051 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 19:49:32,051 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 57 states, 39 states have (on average 1.2564102564102564) internal successors, (49), 41 states have internal predecessors, (49), 10 states have call successors, (10), 9 states have call predecessors, (10), 7 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 19:49:32,052 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 57 states to 57 states and 66 transitions. [2022-04-27 19:49:32,052 INFO L78 Accepts]: Start accepts. Automaton has 57 states and 66 transitions. Word has length 27 [2022-04-27 19:49:32,052 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 19:49:32,052 INFO L495 AbstractCegarLoop]: Abstraction has 57 states and 66 transitions. [2022-04-27 19:49:32,053 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 17 states, 17 states have (on average 1.7647058823529411) internal successors, (30), 14 states have internal predecessors, (30), 5 states have call successors, (7), 2 states have call predecessors, (7), 3 states have return successors, (5), 5 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-27 19:49:32,053 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 66 transitions. [2022-04-27 19:49:32,053 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-27 19:49:32,053 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 19:49:32,053 INFO L195 NwaCegarLoop]: trace histogram [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] [2022-04-27 19:49:32,073 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-27 19:49:32,269 WARN L477 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-27 19:49:32,269 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 19:49:32,270 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 19:49:32,270 INFO L85 PathProgramCache]: Analyzing trace with hash -410392694, now seen corresponding path program 1 times [2022-04-27 19:49:32,270 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 19:49:32,270 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [371549175] [2022-04-27 19:49:32,270 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 19:49:32,270 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 19:49:32,280 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 19:49:32,280 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [942829714] [2022-04-27 19:49:32,280 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 19:49:32,280 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 19:49:32,281 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 19:49:32,284 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-27 19:49:32,286 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-27 19:49:32,315 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 19:49:32,316 INFO L263 TraceCheckSpWp]: Trace formula consists of 105 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-27 19:49:32,324 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 19:49:32,324 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 19:49:32,431 INFO L272 TraceCheckUtils]: 0: Hoare triple {1772#true} [80] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1772#true} is VALID [2022-04-27 19:49:32,431 INFO L290 TraceCheckUtils]: 1: Hoare triple {1772#true} [82] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_3, #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[~counter~0, #NULL.offset, #NULL.base] {1772#true} is VALID [2022-04-27 19:49:32,431 INFO L290 TraceCheckUtils]: 2: Hoare triple {1772#true} [85] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1772#true} is VALID [2022-04-27 19:49:32,431 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1772#true} {1772#true} [115] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1772#true} is VALID [2022-04-27 19:49:32,431 INFO L272 TraceCheckUtils]: 4: Hoare triple {1772#true} [81] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1772#true} is VALID [2022-04-27 19:49:32,431 INFO L290 TraceCheckUtils]: 5: Hoare triple {1772#true} [84] mainENTRY-->L26: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~x~0_1 |v_main_#t~nondet4_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~y~0_1 |v_main_#t~nondet5_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~q~0=v_main_~q~0_5, main_~x~0=v_main_~x~0_1, main_~y~0=v_main_~y~0_1, main_~b~0=v_main_~b~0_6, main_~p~0=v_main_~p~0_3, main_~a~0=v_main_~a~0_6} AuxVars[] AssignedVars[main_#t~nondet5, main_~q~0, main_#t~nondet4, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {1772#true} is VALID [2022-04-27 19:49:32,432 INFO L272 TraceCheckUtils]: 6: Hoare triple {1772#true} [86] L26-->assume_abort_if_notENTRY: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1772#true} is VALID [2022-04-27 19:49:32,437 INFO L290 TraceCheckUtils]: 7: Hoare triple {1772#true} [88] assume_abort_if_notENTRY-->L9: 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] {1798#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-27 19:49:32,437 INFO L290 TraceCheckUtils]: 8: Hoare triple {1798#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [92] L9-->L9-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[] {1802#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 19:49:32,438 INFO L290 TraceCheckUtils]: 9: Hoare triple {1802#(not (= |assume_abort_if_not_#in~cond| 0))} [96] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1802#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-27 19:49:32,438 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1802#(not (= |assume_abort_if_not_#in~cond| 0))} {1772#true} [116] assume_abort_if_notEXIT-->L26-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (<= 1 v_main_~y~0_8) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~y~0=v_main_~y~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~y~0, assume_abort_if_not_#in~cond] {1809#(<= 1 main_~y~0)} is VALID [2022-04-27 19:49:32,440 INFO L290 TraceCheckUtils]: 11: Hoare triple {1809#(<= 1 main_~y~0)} [87] L26-1-->L46-2: Formula: (and (= v_main_~a~0_9 v_main_~x~0_4) (= v_main_~b~0_9 v_main_~y~0_5) (= v_main_~q~0_8 0) (= v_main_~p~0_5 1)) InVars {main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5} OutVars{main_~q~0=v_main_~q~0_8, main_~x~0=v_main_~x~0_4, main_~y~0=v_main_~y~0_5, main_~b~0=v_main_~b~0_9, main_~p~0=v_main_~p~0_5, main_~a~0=v_main_~a~0_9} AuxVars[] AssignedVars[main_~q~0, main_~b~0, main_~p~0, main_~a~0] {1813#(<= 1 main_~b~0)} is VALID [2022-04-27 19:49:32,440 INFO L290 TraceCheckUtils]: 12: Hoare triple {1813#(<= 1 main_~b~0)} [90] L46-2-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1813#(<= 1 main_~b~0)} is VALID [2022-04-27 19:49:32,440 INFO L290 TraceCheckUtils]: 13: Hoare triple {1813#(<= 1 main_~b~0)} [95] L33-1-->L34: Formula: (< |v_main_#t~post6_5| 2) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1813#(<= 1 main_~b~0)} is VALID [2022-04-27 19:49:32,440 INFO L272 TraceCheckUtils]: 14: Hoare triple {1813#(<= 1 main_~b~0)} [99] L34-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {1772#true} is VALID [2022-04-27 19:49:32,441 INFO L290 TraceCheckUtils]: 15: Hoare triple {1772#true} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |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_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1772#true} is VALID [2022-04-27 19:49:32,441 INFO L290 TraceCheckUtils]: 16: Hoare triple {1772#true} [102] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_1 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {1772#true} is VALID [2022-04-27 19:49:32,441 INFO L290 TraceCheckUtils]: 17: Hoare triple {1772#true} [108] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1772#true} is VALID [2022-04-27 19:49:32,441 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1772#true} {1813#(<= 1 main_~b~0)} [118] __VERIFIER_assertEXIT-->L34-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ v_main_~q~0_11 (* v_main_~p~0_9 (* v_main_~a~0_16 v_main_~b~0_16))) (* v_main_~x~0_7 v_main_~y~0_9)) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~q~0=v_main_~q~0_11, main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_9, main_~b~0=v_main_~b~0_16, main_~p~0=v_main_~p~0_9, main_~a~0=v_main_~a~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[main_~q~0, __VERIFIER_assert_#in~cond, main_~x~0, main_~y~0, main_~b~0, main_~p~0, main_~a~0] {1813#(<= 1 main_~b~0)} is VALID [2022-04-27 19:49:32,442 INFO L290 TraceCheckUtils]: 19: Hoare triple {1813#(<= 1 main_~b~0)} [103] L34-1-->L33-3: Formula: (or (= 0 v_main_~a~0_12) (= 0 v_main_~b~0_12)) InVars {main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_12} OutVars{main_~b~0=v_main_~b~0_12, main_~a~0=v_main_~a~0_12} AuxVars[] AssignedVars[] {1838#(and (= main_~a~0 0) (<= 1 main_~b~0))} is VALID [2022-04-27 19:49:32,442 INFO L272 TraceCheckUtils]: 20: Hoare triple {1838#(and (= main_~a~0 0) (<= 1 main_~b~0))} [93] L33-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~q~0_12 (* v_main_~y~0_10 v_main_~x~0_8)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~q~0=v_main_~q~0_12, main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_8} 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] {1772#true} is VALID [2022-04-27 19:49:32,442 INFO L290 TraceCheckUtils]: 21: Hoare triple {1772#true} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |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_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1772#true} is VALID [2022-04-27 19:49:32,442 INFO L290 TraceCheckUtils]: 22: Hoare triple {1772#true} [102] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_1 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {1772#true} is VALID [2022-04-27 19:49:32,442 INFO L290 TraceCheckUtils]: 23: Hoare triple {1772#true} [108] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1772#true} is VALID [2022-04-27 19:49:32,443 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {1772#true} {1838#(and (= main_~a~0 0) (<= 1 main_~b~0))} [119] __VERIFIER_assertEXIT-->L56: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= v_main_~q~0_12 (* v_main_~y~0_10 v_main_~x~0_8)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~q~0=v_main_~q~0_12, main_~y~0=v_main_~y~0_10, main_~x~0=v_main_~x~0_8} 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] {1838#(and (= main_~a~0 0) (<= 1 main_~b~0))} is VALID [2022-04-27 19:49:32,443 INFO L272 TraceCheckUtils]: 25: Hoare triple {1838#(and (= main_~a~0 0) (<= 1 main_~b~0))} [97] L56-->__VERIFIER_assertENTRY: Formula: (= (ite (= (* v_main_~a~0_17 v_main_~b~0_17) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_3|) InVars {main_~b~0=v_main_~b~0_17, main_~a~0=v_main_~a~0_17} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~b~0, main_~a~0] {1857#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-27 19:49:32,444 INFO L290 TraceCheckUtils]: 26: Hoare triple {1857#(<= 1 |__VERIFIER_assert_#in~cond|)} [98] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_2 |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_2} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1861#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-27 19:49:32,444 INFO L290 TraceCheckUtils]: 27: Hoare triple {1861#(<= 1 __VERIFIER_assert_~cond)} [101] L12-->L13: Formula: (= 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[] {1773#false} is VALID [2022-04-27 19:49:32,444 INFO L290 TraceCheckUtils]: 28: Hoare triple {1773#false} [106] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1773#false} is VALID [2022-04-27 19:49:32,444 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-27 19:49:32,444 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 19:49:32,445 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 19:49:32,445 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [371549175] [2022-04-27 19:49:32,445 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 19:49:32,445 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [942829714] [2022-04-27 19:49:32,445 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [942829714] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 19:49:32,445 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 19:49:32,445 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-27 19:49:32,445 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1262877235] [2022-04-27 19:49:32,445 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 19:49:32,446 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 29 [2022-04-27 19:49:32,446 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 19:49:32,446 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-27 19:49:32,463 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 19:49:32,463 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-27 19:49:32,463 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 19:49:32,463 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-27 19:49:32,463 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=56, Unknown=0, NotChecked=0, Total=72 [2022-04-27 19:49:32,463 INFO L87 Difference]: Start difference. First operand 57 states and 66 transitions. Second operand has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-27 19:49:32,736 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 19:49:32,736 INFO L93 Difference]: Finished difference Result 74 states and 89 transitions. [2022-04-27 19:49:32,736 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-27 19:49:32,736 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 29 [2022-04-27 19:49:32,737 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 19:49:32,737 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-27 19:49:32,738 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 56 transitions. [2022-04-27 19:49:32,738 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-27 19:49:32,738 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 56 transitions. [2022-04-27 19:49:32,739 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 56 transitions. [2022-04-27 19:49:32,781 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 19:49:32,782 INFO L225 Difference]: With dead ends: 74 [2022-04-27 19:49:32,782 INFO L226 Difference]: Without dead ends: 60 [2022-04-27 19:49:32,783 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 32 GetRequests, 21 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=34, Invalid=122, Unknown=0, NotChecked=0, Total=156 [2022-04-27 19:49:32,783 INFO L413 NwaCegarLoop]: 26 mSDtfsCounter, 33 mSDsluCounter, 131 mSDsCounter, 0 mSdLazyCounter, 121 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 35 SdHoareTripleChecker+Valid, 157 SdHoareTripleChecker+Invalid, 130 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 121 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 19:49:32,783 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [35 Valid, 157 Invalid, 130 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 121 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 19:49:32,783 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 60 states. [2022-04-27 19:49:32,786 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 60 to 57. [2022-04-27 19:49:32,786 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 19:49:32,786 INFO L82 GeneralOperation]: Start isEquivalent. First operand 60 states. Second operand has 57 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 43 states have internal predecessors, (53), 9 states have call successors, (9), 7 states have call predecessors, (9), 6 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 19:49:32,786 INFO L74 IsIncluded]: Start isIncluded. First operand 60 states. Second operand has 57 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 43 states have internal predecessors, (53), 9 states have call successors, (9), 7 states have call predecessors, (9), 6 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 19:49:32,786 INFO L87 Difference]: Start difference. First operand 60 states. Second operand has 57 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 43 states have internal predecessors, (53), 9 states have call successors, (9), 7 states have call predecessors, (9), 6 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 19:49:32,788 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 19:49:32,788 INFO L93 Difference]: Finished difference Result 60 states and 74 transitions. [2022-04-27 19:49:32,788 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 74 transitions. [2022-04-27 19:49:32,788 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 19:49:32,788 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 19:49:32,788 INFO L74 IsIncluded]: Start isIncluded. First operand has 57 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 43 states have internal predecessors, (53), 9 states have call successors, (9), 7 states have call predecessors, (9), 6 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 60 states. [2022-04-27 19:49:32,789 INFO L87 Difference]: Start difference. First operand has 57 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 43 states have internal predecessors, (53), 9 states have call successors, (9), 7 states have call predecessors, (9), 6 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) Second operand 60 states. [2022-04-27 19:49:32,790 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 19:49:32,790 INFO L93 Difference]: Finished difference Result 60 states and 74 transitions. [2022-04-27 19:49:32,790 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 74 transitions. [2022-04-27 19:49:32,790 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 19:49:32,790 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 19:49:32,790 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 19:49:32,790 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 19:49:32,791 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 57 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 43 states have internal predecessors, (53), 9 states have call successors, (9), 7 states have call predecessors, (9), 6 states have return successors, (7), 6 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-27 19:49:32,792 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 57 states to 57 states and 69 transitions. [2022-04-27 19:49:32,792 INFO L78 Accepts]: Start accepts. Automaton has 57 states and 69 transitions. Word has length 29 [2022-04-27 19:49:32,792 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 19:49:32,792 INFO L495 AbstractCegarLoop]: Abstraction has 57 states and 69 transitions. [2022-04-27 19:49:32,792 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-27 19:49:32,792 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 69 transitions. [2022-04-27 19:49:32,793 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-27 19:49:32,793 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 19:49:32,793 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 19:49:32,808 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-27 19:49:33,008 WARN L477 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-27 19:49:33,008 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 19:49:33,009 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 19:49:33,009 INFO L85 PathProgramCache]: Analyzing trace with hash 1979136443, now seen corresponding path program 2 times [2022-04-27 19:49:33,009 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 19:49:33,009 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1457597125] [2022-04-27 19:49:33,009 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 19:49:33,009 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 19:49:33,018 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 19:49:33,019 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [621087164] [2022-04-27 19:49:33,019 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 19:49:33,019 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 19:49:33,019 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 19:49:33,020 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 19:49:33,029 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-27 19:49:33,064 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 19:49:33,064 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-04-27 19:49:33,064 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-04-27 19:49:33,075 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-04-27 19:49:33,107 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-04-27 19:49:33,108 INFO L271 BasicCegarLoop]: Counterexample is feasible [2022-04-27 19:49:33,108 INFO L805 garLoopResultBuilder]: Registering result UNSAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-27 19:49:33,129 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-27 19:49:33,320 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 19:49:33,322 INFO L356 BasicCegarLoop]: Path program histogram: [2, 1, 1, 1, 1, 1, 1] [2022-04-27 19:49:33,325 INFO L176 ceAbstractionStarter]: Computing trace abstraction results [2022-04-27 19:49:33,348 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 27.04 07:49:33 BasicIcfg [2022-04-27 19:49:33,348 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-27 19:49:33,349 INFO L158 Benchmark]: Toolchain (without parser) took 136286.88ms. Allocated memory was 179.3MB in the beginning and 219.2MB in the end (delta: 39.8MB). Free memory was 130.5MB in the beginning and 90.6MB in the end (delta: 39.9MB). Peak memory consumption was 80.2MB. Max. memory is 8.0GB. [2022-04-27 19:49:33,349 INFO L158 Benchmark]: CDTParser took 0.11ms. Allocated memory is still 179.3MB. Free memory was 146.7MB in the beginning and 146.6MB in the end (delta: 139.9kB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-27 19:49:33,349 INFO L158 Benchmark]: CACSL2BoogieTranslator took 226.18ms. Allocated memory is still 179.3MB. Free memory was 130.4MB in the beginning and 154.2MB in the end (delta: -23.8MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2022-04-27 19:49:33,349 INFO L158 Benchmark]: Boogie Preprocessor took 45.79ms. Allocated memory is still 179.3MB. Free memory was 154.2MB in the beginning and 152.6MB in the end (delta: 1.6MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-27 19:49:33,349 INFO L158 Benchmark]: RCFGBuilder took 261.89ms. Allocated memory is still 179.3MB. Free memory was 152.6MB in the beginning and 140.0MB in the end (delta: 12.6MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2022-04-27 19:49:33,349 INFO L158 Benchmark]: IcfgTransformer took 61.38ms. Allocated memory is still 179.3MB. Free memory was 140.0MB in the beginning and 137.9MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-27 19:49:33,349 INFO L158 Benchmark]: TraceAbstraction took 135687.64ms. Allocated memory was 179.3MB in the beginning and 219.2MB in the end (delta: 39.8MB). Free memory was 137.2MB in the beginning and 90.6MB in the end (delta: 46.6MB). Peak memory consumption was 87.7MB. Max. memory is 8.0GB. [2022-04-27 19:49:33,350 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 179.3MB. Free memory was 146.7MB in the beginning and 146.6MB in the end (delta: 139.9kB). There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 226.18ms. Allocated memory is still 179.3MB. Free memory was 130.4MB in the beginning and 154.2MB in the end (delta: -23.8MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * Boogie Preprocessor took 45.79ms. Allocated memory is still 179.3MB. Free memory was 154.2MB in the beginning and 152.6MB in the end (delta: 1.6MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 261.89ms. Allocated memory is still 179.3MB. Free memory was 152.6MB in the beginning and 140.0MB in the end (delta: 12.6MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * IcfgTransformer took 61.38ms. Allocated memory is still 179.3MB. Free memory was 140.0MB in the beginning and 137.9MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * TraceAbstraction took 135687.64ms. Allocated memory was 179.3MB in the beginning and 219.2MB in the end (delta: 39.8MB). Free memory was 137.2MB in the beginning and 90.6MB in the end (delta: 46.6MB). Peak memory consumption was 87.7MB. 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 - CounterExampleResult [Line: 14]: a call to reach_error is reachable a call to reach_error is reachable We found a FailurePath: [L19] int counter = 0; VAL [\old(counter)=7, counter=0] [L21] int x, y; [L22] long long a, b, p, q; [L24] x = __VERIFIER_nondet_int() [L25] y = __VERIFIER_nondet_int() [L26] CALL assume_abort_if_not(y >= 1) VAL [\old(cond)=1, \old(counter)=0, counter=0] [L9] COND FALSE !(!cond) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=0] [L26] RET assume_abort_if_not(y >= 1) VAL [\old(counter)=0, counter=0, x=4, y=4] [L28] a = x [L29] b = y [L30] p = 1 [L31] q = 0 VAL [\old(counter)=0, a=4, b=4, counter=0, p=1, q=0, x=4, y=4] [L33] EXPR counter++ VAL [\old(counter)=0, a=4, b=4, counter=1, counter++=0, p=1, q=0, x=4, y=4] [L33] COND TRUE counter++<2 [L34] CALL __VERIFIER_assert(q + a * b * p == (long long) x * y) VAL [\old(cond)=1, \old(counter)=0, counter=1] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=1] [L34] RET __VERIFIER_assert(q + a * b * p == (long long) x * y) VAL [\old(counter)=0, a=4, b=4, counter=1, p=1, q=0, x=4, y=4] [L36] COND FALSE !(!(a != 0 && b != 0)) VAL [\old(counter)=0, a=4, b=4, counter=1, p=1, q=0, x=4, y=4] [L39] COND TRUE a % 2 == 0 && b % 2 == 0 [L40] a = a / 2 [L41] b = b / 2 [L42] p = 4 * p VAL [\old(counter)=0, a=2, b=2, counter=1, p=4, q=0, x=4, y=4] [L33] EXPR counter++ VAL [\old(counter)=0, a=2, b=2, counter=2, counter++=1, p=4, q=0, x=4, y=4] [L33] COND TRUE counter++<2 [L34] CALL __VERIFIER_assert(q + a * b * p == (long long) x * y) VAL [\old(cond)=1, \old(counter)=0, counter=2] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=2] [L34] RET __VERIFIER_assert(q + a * b * p == (long long) x * y) VAL [\old(counter)=0, a=2, b=2, counter=2, p=4, q=0, x=4, y=4] [L36] COND FALSE !(!(a != 0 && b != 0)) VAL [\old(counter)=0, a=2, b=2, counter=2, p=4, q=0, x=4, y=4] [L39] COND TRUE a % 2 == 0 && b % 2 == 0 [L40] a = a / 2 [L41] b = b / 2 [L42] p = 4 * p VAL [\old(counter)=0, a=1, b=1, counter=2, p=16, q=0, x=4, y=4] [L33] EXPR counter++ VAL [\old(counter)=0, a=1, b=1, counter=3, counter++=2, p=16, q=0, x=4, y=4] [L33] COND FALSE !(counter++<2) [L56] CALL __VERIFIER_assert(q == (long long) x * y) VAL [\old(cond)=0, \old(counter)=0, counter=3] [L12] COND TRUE !(cond) VAL [\old(cond)=0, \old(counter)=0, cond=0, counter=3] [L14] reach_error() VAL [\old(cond)=0, \old(counter)=0, cond=0, counter=3] - StatisticsResult: Ultimate Automizer benchmark data CFG has 5 procedures, 32 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 135.6s, OverallIterations: 8, TraceHistogramMax: 3, PathProgramHistogramMax: 2, EmptinessCheckTime: 0.0s, AutomataDifference: 9.9s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 240 SdHoareTripleChecker+Valid, 3.5s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 227 mSDsluCounter, 766 SdHoareTripleChecker+Invalid, 3.5s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 572 mSDsCounter, 141 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 781 IncrementalHoareTripleChecker+Invalid, 922 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 141 mSolverCounterUnsat, 194 mSDtfsCounter, 781 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 239 GetRequests, 176 SyntacticMatches, 3 SemanticMatches, 60 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 123 ImplicationChecksByTransitivity, 1.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=57occurred in iteration=6, InterpolantAutomatonStates: 54, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.1s AutomataMinimizationTime, 7 MinimizatonAttempts, 43 StatesRemovedByMinimization, 6 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.2s SatisfiabilityAnalysisTime, 121.3s InterpolantComputationTime, 196 NumberOfCodeBlocks, 196 NumberOfCodeBlocksAsserted, 9 NumberOfCheckSat, 228 ConstructedInterpolants, 0 QuantifiedInterpolants, 1056 SizeOfPredicates, 20 NumberOfNonLiveVariables, 597 ConjunctsInSsa, 86 ConjunctsInUnsatCore, 10 InterpolantComputations, 4 PerfectInterpolantSequences, 16/30 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 RESULT: Ultimate proved your program to be incorrect! [2022-04-27 19:49:33,381 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Ended with exit code 0 Received shutdown request...