/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/sqrt1-ll_unwindbound20.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-07 21:09:52,279 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-07 21:09:52,281 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-07 21:09:52,306 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-07 21:09:52,306 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-07 21:09:52,307 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-07 21:09:52,313 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-07 21:09:52,318 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-07 21:09:52,319 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-07 21:09:52,324 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-07 21:09:52,324 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-07 21:09:52,325 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-07 21:09:52,325 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-07 21:09:52,326 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-07 21:09:52,327 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-07 21:09:52,327 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-07 21:09:52,328 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-07 21:09:52,328 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-07 21:09:52,329 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-07 21:09:52,330 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-07 21:09:52,331 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-07 21:09:52,331 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-07 21:09:52,332 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-07 21:09:52,332 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-07 21:09:52,333 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-07 21:09:52,334 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-07 21:09:52,334 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-07 21:09:52,334 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-07 21:09:52,335 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-07 21:09:52,335 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-07 21:09:52,335 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-07 21:09:52,336 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-07 21:09:52,336 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-07 21:09:52,336 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-07 21:09:52,337 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-07 21:09:52,337 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-07 21:09:52,337 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-07 21:09:52,338 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-07 21:09:52,338 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-07 21:09:52,338 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-07 21:09:52,338 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-07 21:09:52,339 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-07 21:09:52,340 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/LoopAccelerationJordanC.epf [2022-04-07 21:09:52,350 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-07 21:09:52,350 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-07 21:09:52,351 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-07 21:09:52,351 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-07 21:09:52,351 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-07 21:09:52,351 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-07 21:09:52,351 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-07 21:09:52,351 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-07 21:09:52,351 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-07 21:09:52,351 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-07 21:09:52,351 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-07 21:09:52,351 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-07 21:09:52,352 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-07 21:09:52,352 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-07 21:09:52,352 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-07 21:09:52,352 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-07 21:09:52,352 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-07 21:09:52,352 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-07 21:09:52,352 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 21:09:52,352 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-07 21:09:52,352 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-07 21:09:52,353 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-07 21:09:52,353 INFO L138 SettingsManager]: * TransformationType=LOOP_ACCELERATION_JORDAN WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-07 21:09:52,504 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-07 21:09:52,516 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-07 21:09:52,518 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-07 21:09:52,519 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-07 21:09:52,519 INFO L275 PluginConnector]: CDTParser initialized [2022-04-07 21:09:52,520 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/sqrt1-ll_unwindbound20.c [2022-04-07 21:09:52,560 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/bcde73cb2/b18f3ae5e8764454bc047b68cbd9c77f/FLAG7187bfcc7 [2022-04-07 21:09:52,914 INFO L306 CDTParser]: Found 1 translation units. [2022-04-07 21:09:52,914 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/sqrt1-ll_unwindbound20.c [2022-04-07 21:09:52,918 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/bcde73cb2/b18f3ae5e8764454bc047b68cbd9c77f/FLAG7187bfcc7 [2022-04-07 21:09:52,931 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/bcde73cb2/b18f3ae5e8764454bc047b68cbd9c77f [2022-04-07 21:09:52,933 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-07 21:09:52,934 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-07 21:09:52,935 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-07 21:09:52,935 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-07 21:09:52,938 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-07 21:09:52,940 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 09:09:52" (1/1) ... [2022-04-07 21:09:52,941 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@17772879 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 09:09:52, skipping insertion in model container [2022-04-07 21:09:52,941 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 09:09:52" (1/1) ... [2022-04-07 21:09:52,946 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-07 21:09:52,956 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-07 21:09:53,073 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/sqrt1-ll_unwindbound20.c[520,533] [2022-04-07 21:09:53,085 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 21:09:53,091 INFO L203 MainTranslator]: Completed pre-run [2022-04-07 21:09:53,102 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/sqrt1-ll_unwindbound20.c[520,533] [2022-04-07 21:09:53,108 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 21:09:53,119 INFO L208 MainTranslator]: Completed translation [2022-04-07 21:09:53,119 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 09:09:53 WrapperNode [2022-04-07 21:09:53,120 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-07 21:09:53,121 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-07 21:09:53,121 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-07 21:09:53,121 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-07 21:09:53,128 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 09:09:53" (1/1) ... [2022-04-07 21:09:53,128 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 09:09:53" (1/1) ... [2022-04-07 21:09:53,132 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 09:09:53" (1/1) ... [2022-04-07 21:09:53,132 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 09:09:53" (1/1) ... [2022-04-07 21:09:53,136 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 09:09:53" (1/1) ... [2022-04-07 21:09:53,141 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 09:09:53" (1/1) ... [2022-04-07 21:09:53,141 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 09:09:53" (1/1) ... [2022-04-07 21:09:53,142 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-07 21:09:53,143 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-07 21:09:53,143 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-07 21:09:53,143 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-07 21:09:53,144 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 09:09:53" (1/1) ... [2022-04-07 21:09:53,148 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 21:09:53,154 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 21:09:53,175 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-07 21:09:53,180 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-07 21:09:53,199 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-07 21:09:53,199 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-07 21:09:53,199 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-07 21:09:53,199 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-07 21:09:53,200 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-07 21:09:53,200 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-07 21:09:53,200 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-07 21:09:53,200 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-07 21:09:53,200 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-07 21:09:53,200 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-07 21:09:53,200 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-07 21:09:53,201 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-07 21:09:53,201 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-07 21:09:53,201 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-07 21:09:53,201 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-07 21:09:53,203 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-07 21:09:53,203 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-07 21:09:53,203 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-07 21:09:53,203 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-07 21:09:53,203 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-07 21:09:53,245 INFO L234 CfgBuilder]: Building ICFG [2022-04-07 21:09:53,246 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-07 21:09:53,385 INFO L275 CfgBuilder]: Performing block encoding [2022-04-07 21:09:53,391 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-07 21:09:53,391 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-07 21:09:53,405 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 09:09:53 BoogieIcfgContainer [2022-04-07 21:09:53,405 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-07 21:09:53,405 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-07 21:09:53,405 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-07 21:09:53,406 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-07 21:09:53,408 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 09:09:53" (1/1) ... [2022-04-07 21:09:53,409 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_JORDAN [2022-04-07 21:09:53,433 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 07.04 09:09:53 BasicIcfg [2022-04-07 21:09:53,434 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-07 21:09:53,435 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-07 21:09:53,435 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-07 21:09:53,436 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-07 21:09:53,437 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 07.04 09:09:52" (1/4) ... [2022-04-07 21:09:53,437 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@8f922f9 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 09:09:53, skipping insertion in model container [2022-04-07 21:09:53,437 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 09:09:53" (2/4) ... [2022-04-07 21:09:53,437 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@8f922f9 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 09:09:53, skipping insertion in model container [2022-04-07 21:09:53,437 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 09:09:53" (3/4) ... [2022-04-07 21:09:53,438 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@8f922f9 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 07.04 09:09:53, skipping insertion in model container [2022-04-07 21:09:53,438 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 07.04 09:09:53" (4/4) ... [2022-04-07 21:09:53,438 INFO L111 eAbstractionObserver]: Analyzing ICFG sqrt1-ll_unwindbound20.cJordan [2022-04-07 21:09:53,441 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:ForwardPredicates Determinization: PREDICATE_ABSTRACTION [2022-04-07 21:09:53,442 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-07 21:09:53,493 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-07 21:09:53,498 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=ForwardPredicates, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=false, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP [2022-04-07 21:09:53,498 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-07 21:09:53,527 INFO L276 IsEmpty]: Start isEmpty. Operand has 26 states, 13 states have (on average 1.3846153846153846) internal successors, (18), 14 states have internal predecessors, (18), 8 states have call successors, (8), 3 states have call predecessors, (8), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-07 21:09:53,533 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 12 [2022-04-07 21:09:53,533 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 21:09:53,533 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 21:09:53,534 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 21:09:53,540 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 21:09:53,540 INFO L85 PathProgramCache]: Analyzing trace with hash 1238828824, now seen corresponding path program 1 times [2022-04-07 21:09:53,550 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 21:09:53,551 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [871833404] [2022-04-07 21:09:53,551 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 21:09:53,552 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 21:09:53,637 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 21:09:53,699 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-07 21:09:53,708 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 21:09:53,721 INFO L290 TraceCheckUtils]: 0: Hoare triple {34#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [71] 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) (= (select |v_#length_1| 2) 11) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .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] {29#true} is VALID [2022-04-07 21:09:53,722 INFO L290 TraceCheckUtils]: 1: Hoare triple {29#true} [74] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {29#true} is VALID [2022-04-07 21:09:53,722 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {29#true} {29#true} [95] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {29#true} is VALID [2022-04-07 21:09:53,723 INFO L272 TraceCheckUtils]: 0: Hoare triple {29#true} [69] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-07 21:09:53,725 INFO L290 TraceCheckUtils]: 1: Hoare triple {34#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [71] 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) (= (select |v_#length_1| 2) 11) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .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] {29#true} is VALID [2022-04-07 21:09:53,725 INFO L290 TraceCheckUtils]: 2: Hoare triple {29#true} [74] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {29#true} is VALID [2022-04-07 21:09:53,725 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {29#true} {29#true} [95] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {29#true} is VALID [2022-04-07 21:09:53,725 INFO L272 TraceCheckUtils]: 4: Hoare triple {29#true} [70] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {29#true} is VALID [2022-04-07 21:09:53,726 INFO L290 TraceCheckUtils]: 5: Hoare triple {29#true} [73] mainENTRY-->L30-3: Formula: (and (= v_main_~s~0_3 1) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (= v_main_~n~0_1 |v_main_#t~nondet4_2|) (= v_main_~t~0_3 1) (= v_main_~a~0_3 0)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~t~0=v_main_~t~0_3, main_~n~0=v_main_~n~0_1, main_~s~0=v_main_~s~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[main_#t~nondet4, main_~t~0, main_~n~0, main_~s~0, main_~a~0] {29#true} is VALID [2022-04-07 21:09:53,727 INFO L290 TraceCheckUtils]: 6: Hoare triple {29#true} [75] L30-3-->L30-4: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {30#false} is VALID [2022-04-07 21:09:53,727 INFO L272 TraceCheckUtils]: 7: Hoare triple {30#false} [77] L30-4-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~t~0_12 (+ (* 2 v_main_~a~0_12) 1)) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~t~0=v_main_~t~0_12, main_~a~0=v_main_~a~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~a~0] {30#false} is VALID [2022-04-07 21:09:53,728 INFO L290 TraceCheckUtils]: 8: Hoare triple {30#false} [81] __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] {30#false} is VALID [2022-04-07 21:09:53,728 INFO L290 TraceCheckUtils]: 9: Hoare triple {30#false} [84] 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[] {30#false} is VALID [2022-04-07 21:09:53,728 INFO L290 TraceCheckUtils]: 10: Hoare triple {30#false} [88] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {30#false} is VALID [2022-04-07 21:09:53,728 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-07 21:09:53,729 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 21:09:53,729 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [871833404] [2022-04-07 21:09:53,730 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [871833404] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 21:09:53,730 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 21:09:53,730 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-07 21:09:53,732 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1514395373] [2022-04-07 21:09:53,732 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 21:09:53,736 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 2 states have internal predecessors, (7), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 11 [2022-04-07 21:09:53,737 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 21:09:53,739 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 2 states have internal predecessors, (7), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-07 21:09:53,755 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 11 edges. 11 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 21:09:53,756 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-07 21:09:53,756 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 21:09:53,772 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-07 21:09:53,773 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-07 21:09:53,775 INFO L87 Difference]: Start difference. First operand has 26 states, 13 states have (on average 1.3846153846153846) internal successors, (18), 14 states have internal predecessors, (18), 8 states have call successors, (8), 3 states have call predecessors, (8), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand has 3 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 2 states have internal predecessors, (7), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-07 21:09:53,897 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 21:09:53,898 INFO L93 Difference]: Finished difference Result 27 states and 33 transitions. [2022-04-07 21:09:53,898 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-07 21:09:53,898 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 2 states have internal predecessors, (7), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 11 [2022-04-07 21:09:53,898 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 21:09:53,899 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 2 states have internal predecessors, (7), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-07 21:09:53,915 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 36 transitions. [2022-04-07 21:09:53,916 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 2 states have internal predecessors, (7), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-07 21:09:53,918 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 36 transitions. [2022-04-07 21:09:53,919 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 36 transitions. [2022-04-07 21:09:53,965 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-07 21:09:53,970 INFO L225 Difference]: With dead ends: 27 [2022-04-07 21:09:53,970 INFO L226 Difference]: Without dead ends: 22 [2022-04-07 21:09:53,972 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 4 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-07 21:09:53,977 INFO L913 BasicCegarLoop]: 31 mSDtfsCounter, 6 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 15 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 6 SdHoareTripleChecker+Valid, 35 SdHoareTripleChecker+Invalid, 22 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 15 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-07 21:09:53,978 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [6 Valid, 35 Invalid, 22 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 15 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-07 21:09:53,990 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 22 states. [2022-04-07 21:09:54,002 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 22 to 21. [2022-04-07 21:09:54,002 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 21:09:54,003 INFO L82 GeneralOperation]: Start isEquivalent. First operand 22 states. Second operand has 21 states, 10 states have (on average 1.3) internal successors, (13), 11 states have internal predecessors, (13), 8 states have call successors, (8), 3 states have call predecessors, (8), 2 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 21:09:54,003 INFO L74 IsIncluded]: Start isIncluded. First operand 22 states. Second operand has 21 states, 10 states have (on average 1.3) internal successors, (13), 11 states have internal predecessors, (13), 8 states have call successors, (8), 3 states have call predecessors, (8), 2 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 21:09:54,004 INFO L87 Difference]: Start difference. First operand 22 states. Second operand has 21 states, 10 states have (on average 1.3) internal successors, (13), 11 states have internal predecessors, (13), 8 states have call successors, (8), 3 states have call predecessors, (8), 2 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 21:09:54,014 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 21:09:54,014 INFO L93 Difference]: Finished difference Result 22 states and 28 transitions. [2022-04-07 21:09:54,014 INFO L276 IsEmpty]: Start isEmpty. Operand 22 states and 28 transitions. [2022-04-07 21:09:54,015 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 21:09:54,015 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 21:09:54,016 INFO L74 IsIncluded]: Start isIncluded. First operand has 21 states, 10 states have (on average 1.3) internal successors, (13), 11 states have internal predecessors, (13), 8 states have call successors, (8), 3 states have call predecessors, (8), 2 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 22 states. [2022-04-07 21:09:54,016 INFO L87 Difference]: Start difference. First operand has 21 states, 10 states have (on average 1.3) internal successors, (13), 11 states have internal predecessors, (13), 8 states have call successors, (8), 3 states have call predecessors, (8), 2 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 22 states. [2022-04-07 21:09:54,021 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 21:09:54,021 INFO L93 Difference]: Finished difference Result 22 states and 28 transitions. [2022-04-07 21:09:54,022 INFO L276 IsEmpty]: Start isEmpty. Operand 22 states and 28 transitions. [2022-04-07 21:09:54,022 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 21:09:54,022 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 21:09:54,022 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 21:09:54,023 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 21:09:54,023 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 10 states have (on average 1.3) internal successors, (13), 11 states have internal predecessors, (13), 8 states have call successors, (8), 3 states have call predecessors, (8), 2 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 21:09:54,026 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 27 transitions. [2022-04-07 21:09:54,026 INFO L78 Accepts]: Start accepts. Automaton has 21 states and 27 transitions. Word has length 11 [2022-04-07 21:09:54,027 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 21:09:54,027 INFO L478 AbstractCegarLoop]: Abstraction has 21 states and 27 transitions. [2022-04-07 21:09:54,027 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 2 states have internal predecessors, (7), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-07 21:09:54,028 INFO L276 IsEmpty]: Start isEmpty. Operand 21 states and 27 transitions. [2022-04-07 21:09:54,028 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 13 [2022-04-07 21:09:54,029 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 21:09:54,030 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 21:09:54,032 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-07 21:09:54,033 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 21:09:54,040 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 21:09:54,040 INFO L85 PathProgramCache]: Analyzing trace with hash -221581531, now seen corresponding path program 1 times [2022-04-07 21:09:54,040 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 21:09:54,040 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1247708333] [2022-04-07 21:09:54,041 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 21:09:54,041 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 21:09:54,082 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 21:09:54,152 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-07 21:09:54,167 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 21:09:54,182 INFO L290 TraceCheckUtils]: 0: Hoare triple {136#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [71] 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) (= (select |v_#length_1| 2) 11) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .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] {134#(= ~counter~0 0)} is VALID [2022-04-07 21:09:54,183 INFO L290 TraceCheckUtils]: 1: Hoare triple {134#(= ~counter~0 0)} [74] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {134#(= ~counter~0 0)} is VALID [2022-04-07 21:09:54,184 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {134#(= ~counter~0 0)} {129#true} [95] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {134#(= ~counter~0 0)} is VALID [2022-04-07 21:09:54,185 INFO L272 TraceCheckUtils]: 0: Hoare triple {129#true} [69] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {136#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-07 21:09:54,186 INFO L290 TraceCheckUtils]: 1: Hoare triple {136#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [71] 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) (= (select |v_#length_1| 2) 11) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .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] {134#(= ~counter~0 0)} is VALID [2022-04-07 21:09:54,186 INFO L290 TraceCheckUtils]: 2: Hoare triple {134#(= ~counter~0 0)} [74] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {134#(= ~counter~0 0)} is VALID [2022-04-07 21:09:54,187 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {134#(= ~counter~0 0)} {129#true} [95] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {134#(= ~counter~0 0)} is VALID [2022-04-07 21:09:54,188 INFO L272 TraceCheckUtils]: 4: Hoare triple {134#(= ~counter~0 0)} [70] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {134#(= ~counter~0 0)} is VALID [2022-04-07 21:09:54,188 INFO L290 TraceCheckUtils]: 5: Hoare triple {134#(= ~counter~0 0)} [73] mainENTRY-->L30-3: Formula: (and (= v_main_~s~0_3 1) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (= v_main_~n~0_1 |v_main_#t~nondet4_2|) (= v_main_~t~0_3 1) (= v_main_~a~0_3 0)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~t~0=v_main_~t~0_3, main_~n~0=v_main_~n~0_1, main_~s~0=v_main_~s~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[main_#t~nondet4, main_~t~0, main_~n~0, main_~s~0, main_~a~0] {134#(= ~counter~0 0)} is VALID [2022-04-07 21:09:54,188 INFO L290 TraceCheckUtils]: 6: Hoare triple {134#(= ~counter~0 0)} [76] L30-3-->L30-1: Formula: (and (= |v_main_#t~post5_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post5_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post5=|v_main_#t~post5_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post5] {135#(= |main_#t~post5| 0)} is VALID [2022-04-07 21:09:54,189 INFO L290 TraceCheckUtils]: 7: Hoare triple {135#(= |main_#t~post5| 0)} [78] L30-1-->L30-4: Formula: (not (< |v_main_#t~post5_3| 20)) InVars {main_#t~post5=|v_main_#t~post5_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post5] {130#false} is VALID [2022-04-07 21:09:54,189 INFO L272 TraceCheckUtils]: 8: Hoare triple {130#false} [77] L30-4-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~t~0_12 (+ (* 2 v_main_~a~0_12) 1)) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~t~0=v_main_~t~0_12, main_~a~0=v_main_~a~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~a~0] {130#false} is VALID [2022-04-07 21:09:54,189 INFO L290 TraceCheckUtils]: 9: Hoare triple {130#false} [81] __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] {130#false} is VALID [2022-04-07 21:09:54,189 INFO L290 TraceCheckUtils]: 10: Hoare triple {130#false} [84] 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[] {130#false} is VALID [2022-04-07 21:09:54,190 INFO L290 TraceCheckUtils]: 11: Hoare triple {130#false} [88] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {130#false} is VALID [2022-04-07 21:09:54,190 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-07 21:09:54,190 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 21:09:54,190 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1247708333] [2022-04-07 21:09:54,191 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1247708333] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 21:09:54,191 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 21:09:54,191 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-07 21:09:54,191 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1237476626] [2022-04-07 21:09:54,192 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 21:09:54,193 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 2.0) internal successors, (8), 3 states have internal predecessors, (8), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 12 [2022-04-07 21:09:54,194 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 21:09:54,194 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 2.0) internal successors, (8), 3 states have internal predecessors, (8), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-07 21:09:54,204 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 12 edges. 12 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 21:09:54,205 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-07 21:09:54,205 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 21:09:54,205 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-07 21:09:54,206 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-07 21:09:54,206 INFO L87 Difference]: Start difference. First operand 21 states and 27 transitions. Second operand has 5 states, 4 states have (on average 2.0) internal successors, (8), 3 states have internal predecessors, (8), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-07 21:09:54,357 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 21:09:54,357 INFO L93 Difference]: Finished difference Result 23 states and 29 transitions. [2022-04-07 21:09:54,357 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-07 21:09:54,357 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 2.0) internal successors, (8), 3 states have internal predecessors, (8), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 12 [2022-04-07 21:09:54,358 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 21:09:54,358 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 2.0) internal successors, (8), 3 states have internal predecessors, (8), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-07 21:09:54,367 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 30 transitions. [2022-04-07 21:09:54,367 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 2.0) internal successors, (8), 3 states have internal predecessors, (8), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-07 21:09:54,371 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 30 transitions. [2022-04-07 21:09:54,372 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 30 transitions. [2022-04-07 21:09:54,394 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 21:09:54,396 INFO L225 Difference]: With dead ends: 23 [2022-04-07 21:09:54,396 INFO L226 Difference]: Without dead ends: 23 [2022-04-07 21:09:54,399 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-07 21:09:54,403 INFO L913 BasicCegarLoop]: 25 mSDtfsCounter, 6 mSDsluCounter, 24 mSDsCounter, 0 mSdLazyCounter, 40 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 6 SdHoareTripleChecker+Valid, 49 SdHoareTripleChecker+Invalid, 47 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 40 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-07 21:09:54,404 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [6 Valid, 49 Invalid, 47 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 40 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-07 21:09:54,405 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 23 states. [2022-04-07 21:09:54,408 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 23 to 23. [2022-04-07 21:09:54,408 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 21:09:54,408 INFO L82 GeneralOperation]: Start isEquivalent. First operand 23 states. Second operand has 23 states, 12 states have (on average 1.25) internal successors, (15), 13 states have internal predecessors, (15), 8 states have call successors, (8), 3 states have call predecessors, (8), 2 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 21:09:54,409 INFO L74 IsIncluded]: Start isIncluded. First operand 23 states. Second operand has 23 states, 12 states have (on average 1.25) internal successors, (15), 13 states have internal predecessors, (15), 8 states have call successors, (8), 3 states have call predecessors, (8), 2 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 21:09:54,409 INFO L87 Difference]: Start difference. First operand 23 states. Second operand has 23 states, 12 states have (on average 1.25) internal successors, (15), 13 states have internal predecessors, (15), 8 states have call successors, (8), 3 states have call predecessors, (8), 2 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 21:09:54,413 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 21:09:54,413 INFO L93 Difference]: Finished difference Result 23 states and 29 transitions. [2022-04-07 21:09:54,413 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 29 transitions. [2022-04-07 21:09:54,414 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 21:09:54,414 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 21:09:54,415 INFO L74 IsIncluded]: Start isIncluded. First operand has 23 states, 12 states have (on average 1.25) internal successors, (15), 13 states have internal predecessors, (15), 8 states have call successors, (8), 3 states have call predecessors, (8), 2 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 23 states. [2022-04-07 21:09:54,415 INFO L87 Difference]: Start difference. First operand has 23 states, 12 states have (on average 1.25) internal successors, (15), 13 states have internal predecessors, (15), 8 states have call successors, (8), 3 states have call predecessors, (8), 2 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 23 states. [2022-04-07 21:09:54,418 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 21:09:54,418 INFO L93 Difference]: Finished difference Result 23 states and 29 transitions. [2022-04-07 21:09:54,418 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 29 transitions. [2022-04-07 21:09:54,420 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 21:09:54,420 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 21:09:54,420 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 21:09:54,420 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 21:09:54,420 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 12 states have (on average 1.25) internal successors, (15), 13 states have internal predecessors, (15), 8 states have call successors, (8), 3 states have call predecessors, (8), 2 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-07 21:09:54,422 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 29 transitions. [2022-04-07 21:09:54,423 INFO L78 Accepts]: Start accepts. Automaton has 23 states and 29 transitions. Word has length 12 [2022-04-07 21:09:54,423 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 21:09:54,423 INFO L478 AbstractCegarLoop]: Abstraction has 23 states and 29 transitions. [2022-04-07 21:09:54,423 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 2.0) internal successors, (8), 3 states have internal predecessors, (8), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-07 21:09:54,424 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 29 transitions. [2022-04-07 21:09:54,425 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 13 [2022-04-07 21:09:54,425 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 21:09:54,425 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 21:09:54,425 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-04-07 21:09:54,425 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 21:09:54,426 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 21:09:54,426 INFO L85 PathProgramCache]: Analyzing trace with hash -220509055, now seen corresponding path program 1 times [2022-04-07 21:09:54,426 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 21:09:54,427 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1028362406] [2022-04-07 21:09:54,427 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 21:09:54,427 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 21:09:54,436 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 21:09:54,479 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-07 21:09:54,481 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 21:09:54,485 INFO L290 TraceCheckUtils]: 0: Hoare triple {241#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [71] 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) (= (select |v_#length_1| 2) 11) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .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] {233#true} is VALID [2022-04-07 21:09:54,485 INFO L290 TraceCheckUtils]: 1: Hoare triple {233#true} [74] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {233#true} is VALID [2022-04-07 21:09:54,485 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {233#true} {233#true} [95] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {233#true} is VALID [2022-04-07 21:09:54,486 INFO L272 TraceCheckUtils]: 0: Hoare triple {233#true} [69] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {241#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-07 21:09:54,486 INFO L290 TraceCheckUtils]: 1: Hoare triple {241#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [71] 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) (= (select |v_#length_1| 2) 11) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .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] {233#true} is VALID [2022-04-07 21:09:54,486 INFO L290 TraceCheckUtils]: 2: Hoare triple {233#true} [74] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {233#true} is VALID [2022-04-07 21:09:54,486 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {233#true} {233#true} [95] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {233#true} is VALID [2022-04-07 21:09:54,487 INFO L272 TraceCheckUtils]: 4: Hoare triple {233#true} [70] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {233#true} is VALID [2022-04-07 21:09:54,487 INFO L290 TraceCheckUtils]: 5: Hoare triple {233#true} [73] mainENTRY-->L30-3: Formula: (and (= v_main_~s~0_3 1) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (= v_main_~n~0_1 |v_main_#t~nondet4_2|) (= v_main_~t~0_3 1) (= v_main_~a~0_3 0)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~t~0=v_main_~t~0_3, main_~n~0=v_main_~n~0_1, main_~s~0=v_main_~s~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[main_#t~nondet4, main_~t~0, main_~n~0, main_~s~0, main_~a~0] {238#(and (= (* main_~a~0 2) 0) (= main_~t~0 (+ (* main_~a~0 2) 1)))} is VALID [2022-04-07 21:09:54,488 INFO L290 TraceCheckUtils]: 6: Hoare triple {238#(and (= (* main_~a~0 2) 0) (= main_~t~0 (+ (* main_~a~0 2) 1)))} [76] L30-3-->L30-1: Formula: (and (= |v_main_#t~post5_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post5_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post5=|v_main_#t~post5_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post5] {238#(and (= (* main_~a~0 2) 0) (= main_~t~0 (+ (* main_~a~0 2) 1)))} is VALID [2022-04-07 21:09:54,488 INFO L290 TraceCheckUtils]: 7: Hoare triple {238#(and (= (* main_~a~0 2) 0) (= main_~t~0 (+ (* main_~a~0 2) 1)))} [79] L30-1-->L31: Formula: (< |v_main_#t~post5_5| 20) InVars {main_#t~post5=|v_main_#t~post5_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post5] {238#(and (= (* main_~a~0 2) 0) (= main_~t~0 (+ (* main_~a~0 2) 1)))} is VALID [2022-04-07 21:09:54,489 INFO L272 TraceCheckUtils]: 8: Hoare triple {238#(and (= (* main_~a~0 2) 0) (= main_~t~0 (+ (* main_~a~0 2) 1)))} [82] L31-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~t~0_10 (+ (* 2 v_main_~a~0_10) 1)) 1 0)) InVars {main_~t~0=v_main_~t~0_10, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~a~0] {239#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 21:09:54,489 INFO L290 TraceCheckUtils]: 9: Hoare triple {239#(not (= |__VERIFIER_assert_#in~cond| 0))} [81] __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] {240#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-07 21:09:54,490 INFO L290 TraceCheckUtils]: 10: Hoare triple {240#(not (= __VERIFIER_assert_~cond 0))} [84] 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[] {234#false} is VALID [2022-04-07 21:09:54,490 INFO L290 TraceCheckUtils]: 11: Hoare triple {234#false} [88] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {234#false} is VALID [2022-04-07 21:09:54,490 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-07 21:09:54,490 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 21:09:54,491 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1028362406] [2022-04-07 21:09:54,491 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1028362406] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 21:09:54,491 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 21:09:54,491 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-07 21:09:54,491 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1522105513] [2022-04-07 21:09:54,491 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 21:09:54,491 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 1.3333333333333333) internal successors, (8), 4 states have internal predecessors, (8), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 12 [2022-04-07 21:09:54,492 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 21:09:54,492 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 1.3333333333333333) internal successors, (8), 4 states have internal predecessors, (8), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-07 21:09:54,500 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 12 edges. 12 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 21:09:54,501 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-07 21:09:54,501 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 21:09:54,501 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-07 21:09:54,501 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-07 21:09:54,502 INFO L87 Difference]: Start difference. First operand 23 states and 29 transitions. Second operand has 6 states, 6 states have (on average 1.3333333333333333) internal successors, (8), 4 states have internal predecessors, (8), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-07 21:09:54,751 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 21:09:54,751 INFO L93 Difference]: Finished difference Result 34 states and 45 transitions. [2022-04-07 21:09:54,751 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-07 21:09:54,751 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 1.3333333333333333) internal successors, (8), 4 states have internal predecessors, (8), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 12 [2022-04-07 21:09:54,752 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 21:09:54,752 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 1.3333333333333333) internal successors, (8), 4 states have internal predecessors, (8), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-07 21:09:54,753 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 46 transitions. [2022-04-07 21:09:54,753 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 1.3333333333333333) internal successors, (8), 4 states have internal predecessors, (8), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-07 21:09:54,755 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 46 transitions. [2022-04-07 21:09:54,755 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 46 transitions. [2022-04-07 21:09:54,797 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 21:09:54,798 INFO L225 Difference]: With dead ends: 34 [2022-04-07 21:09:54,798 INFO L226 Difference]: Without dead ends: 34 [2022-04-07 21:09:54,798 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 11 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=28, Invalid=62, Unknown=0, NotChecked=0, Total=90 [2022-04-07 21:09:54,799 INFO L913 BasicCegarLoop]: 26 mSDtfsCounter, 16 mSDsluCounter, 27 mSDsCounter, 0 mSdLazyCounter, 85 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 21 SdHoareTripleChecker+Valid, 53 SdHoareTripleChecker+Invalid, 100 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 85 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-07 21:09:54,799 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [21 Valid, 53 Invalid, 100 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 85 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-07 21:09:54,800 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-07 21:09:54,802 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 32. [2022-04-07 21:09:54,802 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 21:09:54,803 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand has 32 states, 16 states have (on average 1.25) internal successors, (20), 18 states have internal predecessors, (20), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 21:09:54,803 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand has 32 states, 16 states have (on average 1.25) internal successors, (20), 18 states have internal predecessors, (20), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 21:09:54,803 INFO L87 Difference]: Start difference. First operand 34 states. Second operand has 32 states, 16 states have (on average 1.25) internal successors, (20), 18 states have internal predecessors, (20), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 21:09:54,805 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 21:09:54,805 INFO L93 Difference]: Finished difference Result 34 states and 45 transitions. [2022-04-07 21:09:54,805 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 45 transitions. [2022-04-07 21:09:54,805 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 21:09:54,805 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 21:09:54,806 INFO L74 IsIncluded]: Start isIncluded. First operand has 32 states, 16 states have (on average 1.25) internal successors, (20), 18 states have internal predecessors, (20), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) Second operand 34 states. [2022-04-07 21:09:54,806 INFO L87 Difference]: Start difference. First operand has 32 states, 16 states have (on average 1.25) internal successors, (20), 18 states have internal predecessors, (20), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) Second operand 34 states. [2022-04-07 21:09:54,808 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 21:09:54,808 INFO L93 Difference]: Finished difference Result 34 states and 45 transitions. [2022-04-07 21:09:54,808 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 45 transitions. [2022-04-07 21:09:54,808 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 21:09:54,808 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 21:09:54,808 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 21:09:54,808 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 21:09:54,809 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 16 states have (on average 1.25) internal successors, (20), 18 states have internal predecessors, (20), 12 states have call successors, (12), 4 states have call predecessors, (12), 3 states have return successors, (10), 9 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 21:09:54,810 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 42 transitions. [2022-04-07 21:09:54,810 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 42 transitions. Word has length 12 [2022-04-07 21:09:54,810 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 21:09:54,810 INFO L478 AbstractCegarLoop]: Abstraction has 32 states and 42 transitions. [2022-04-07 21:09:54,810 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 1.3333333333333333) internal successors, (8), 4 states have internal predecessors, (8), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-07 21:09:54,810 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 42 transitions. [2022-04-07 21:09:54,811 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-04-07 21:09:54,811 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 21:09:54,811 INFO L499 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 21:09:54,811 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-04-07 21:09:54,811 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 21:09:54,811 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 21:09:54,811 INFO L85 PathProgramCache]: Analyzing trace with hash 1748396925, now seen corresponding path program 1 times [2022-04-07 21:09:54,811 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 21:09:54,811 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [648112078] [2022-04-07 21:09:54,812 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 21:09:54,812 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 21:09:54,820 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 21:09:54,820 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1613353103] [2022-04-07 21:09:54,820 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 21:09:54,821 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 21:09:54,821 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 21:09:54,822 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 21:09:54,823 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-07 21:09:54,857 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 21:09:54,859 INFO L263 TraceCheckSpWp]: Trace formula consists of 80 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-07 21:09:54,865 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 21:09:54,868 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 21:09:55,020 INFO L272 TraceCheckUtils]: 0: Hoare triple {386#true} [69] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {386#true} is VALID [2022-04-07 21:09:55,021 INFO L290 TraceCheckUtils]: 1: Hoare triple {386#true} [71] 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) (= (select |v_#length_1| 2) 11) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .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] {386#true} is VALID [2022-04-07 21:09:55,021 INFO L290 TraceCheckUtils]: 2: Hoare triple {386#true} [74] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {386#true} is VALID [2022-04-07 21:09:55,021 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {386#true} {386#true} [95] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {386#true} is VALID [2022-04-07 21:09:55,021 INFO L272 TraceCheckUtils]: 4: Hoare triple {386#true} [70] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {386#true} is VALID [2022-04-07 21:09:55,021 INFO L290 TraceCheckUtils]: 5: Hoare triple {386#true} [73] mainENTRY-->L30-3: Formula: (and (= v_main_~s~0_3 1) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (= v_main_~n~0_1 |v_main_#t~nondet4_2|) (= v_main_~t~0_3 1) (= v_main_~a~0_3 0)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~t~0=v_main_~t~0_3, main_~n~0=v_main_~n~0_1, main_~s~0=v_main_~s~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[main_#t~nondet4, main_~t~0, main_~n~0, main_~s~0, main_~a~0] {406#(and (= main_~a~0 0) (= main_~s~0 1))} is VALID [2022-04-07 21:09:55,022 INFO L290 TraceCheckUtils]: 6: Hoare triple {406#(and (= main_~a~0 0) (= main_~s~0 1))} [76] L30-3-->L30-1: Formula: (and (= |v_main_#t~post5_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post5_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post5=|v_main_#t~post5_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post5] {406#(and (= main_~a~0 0) (= main_~s~0 1))} is VALID [2022-04-07 21:09:55,022 INFO L290 TraceCheckUtils]: 7: Hoare triple {406#(and (= main_~a~0 0) (= main_~s~0 1))} [79] L30-1-->L31: Formula: (< |v_main_#t~post5_5| 20) InVars {main_#t~post5=|v_main_#t~post5_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post5] {406#(and (= main_~a~0 0) (= main_~s~0 1))} is VALID [2022-04-07 21:09:55,022 INFO L272 TraceCheckUtils]: 8: Hoare triple {406#(and (= main_~a~0 0) (= main_~s~0 1))} [82] L31-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~t~0_10 (+ (* 2 v_main_~a~0_10) 1)) 1 0)) InVars {main_~t~0=v_main_~t~0_10, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~a~0] {386#true} is VALID [2022-04-07 21:09:55,023 INFO L290 TraceCheckUtils]: 9: Hoare triple {386#true} [81] __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] {386#true} is VALID [2022-04-07 21:09:55,023 INFO L290 TraceCheckUtils]: 10: Hoare triple {386#true} [85] 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[] {386#true} is VALID [2022-04-07 21:09:55,023 INFO L290 TraceCheckUtils]: 11: Hoare triple {386#true} [90] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {386#true} is VALID [2022-04-07 21:09:55,024 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {386#true} {406#(and (= main_~a~0 0) (= main_~s~0 1))} [96] __VERIFIER_assertEXIT-->L31-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~t~0_10 (+ (* 2 v_main_~a~0_10) 1)) 1 0)) InVars {main_~t~0=v_main_~t~0_10, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~a~0] {406#(and (= main_~a~0 0) (= main_~s~0 1))} is VALID [2022-04-07 21:09:55,024 INFO L272 TraceCheckUtils]: 13: Hoare triple {406#(and (= main_~a~0 0) (= main_~s~0 1))} [86] L31-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~s~0_11 (let ((.cse0 (+ 1 v_main_~a~0_11))) (* .cse0 .cse0))) 1 0)) InVars {main_~s~0=v_main_~s~0_11, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~s~0, main_~a~0] {431#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 21:09:55,025 INFO L290 TraceCheckUtils]: 14: Hoare triple {431#(<= 1 |__VERIFIER_assert_#in~cond|)} [81] __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] {435#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 21:09:55,025 INFO L290 TraceCheckUtils]: 15: Hoare triple {435#(<= 1 __VERIFIER_assert_~cond)} [84] 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[] {387#false} is VALID [2022-04-07 21:09:55,025 INFO L290 TraceCheckUtils]: 16: Hoare triple {387#false} [88] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {387#false} is VALID [2022-04-07 21:09:55,025 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-07 21:09:55,026 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 21:09:55,026 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 21:09:55,026 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [648112078] [2022-04-07 21:09:55,026 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 21:09:55,026 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1613353103] [2022-04-07 21:09:55,026 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1613353103] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 21:09:55,026 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 21:09:55,026 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-07 21:09:55,026 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [888134214] [2022-04-07 21:09:55,026 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 21:09:55,027 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Word has length 17 [2022-04-07 21:09:55,027 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 21:09:55,027 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-07 21:09:55,096 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-07 21:09:55,096 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-07 21:09:55,096 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 21:09:55,098 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-07 21:09:55,098 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-07 21:09:55,098 INFO L87 Difference]: Start difference. First operand 32 states and 42 transitions. Second operand has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-07 21:09:55,218 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 21:09:55,219 INFO L93 Difference]: Finished difference Result 38 states and 48 transitions. [2022-04-07 21:09:55,219 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-07 21:09:55,219 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) Word has length 17 [2022-04-07 21:09:55,219 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 21:09:55,219 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-07 21:09:55,222 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 46 transitions. [2022-04-07 21:09:55,223 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-07 21:09:55,225 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 46 transitions. [2022-04-07 21:09:55,225 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 46 transitions. [2022-04-07 21:09:55,264 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 21:09:55,266 INFO L225 Difference]: With dead ends: 38 [2022-04-07 21:09:55,266 INFO L226 Difference]: Without dead ends: 38 [2022-04-07 21:09:55,267 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 13 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-07 21:09:55,271 INFO L913 BasicCegarLoop]: 29 mSDtfsCounter, 6 mSDsluCounter, 59 mSDsCounter, 0 mSdLazyCounter, 40 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 88 SdHoareTripleChecker+Invalid, 41 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 40 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-07 21:09:55,272 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [10 Valid, 88 Invalid, 41 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 40 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-07 21:09:55,274 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 38 states. [2022-04-07 21:09:55,280 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 38 to 37. [2022-04-07 21:09:55,280 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 21:09:55,282 INFO L82 GeneralOperation]: Start isEquivalent. First operand 38 states. Second operand has 37 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 21 states have internal predecessors, (23), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-07 21:09:55,283 INFO L74 IsIncluded]: Start isIncluded. First operand 38 states. Second operand has 37 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 21 states have internal predecessors, (23), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-07 21:09:55,283 INFO L87 Difference]: Start difference. First operand 38 states. Second operand has 37 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 21 states have internal predecessors, (23), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-07 21:09:55,287 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 21:09:55,288 INFO L93 Difference]: Finished difference Result 38 states and 48 transitions. [2022-04-07 21:09:55,288 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 48 transitions. [2022-04-07 21:09:55,288 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 21:09:55,288 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 21:09:55,289 INFO L74 IsIncluded]: Start isIncluded. First operand has 37 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 21 states have internal predecessors, (23), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) Second operand 38 states. [2022-04-07 21:09:55,289 INFO L87 Difference]: Start difference. First operand has 37 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 21 states have internal predecessors, (23), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) Second operand 38 states. [2022-04-07 21:09:55,291 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 21:09:55,291 INFO L93 Difference]: Finished difference Result 38 states and 48 transitions. [2022-04-07 21:09:55,291 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 48 transitions. [2022-04-07 21:09:55,291 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 21:09:55,291 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 21:09:55,291 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 21:09:55,291 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 21:09:55,292 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 19 states have (on average 1.2105263157894737) internal successors, (23), 21 states have internal predecessors, (23), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 10 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-07 21:09:55,293 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 47 transitions. [2022-04-07 21:09:55,293 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 47 transitions. Word has length 17 [2022-04-07 21:09:55,293 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 21:09:55,293 INFO L478 AbstractCegarLoop]: Abstraction has 37 states and 47 transitions. [2022-04-07 21:09:55,293 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 2 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-07 21:09:55,294 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 47 transitions. [2022-04-07 21:09:55,294 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-04-07 21:09:55,294 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 21:09:55,294 INFO L499 BasicCegarLoop]: trace histogram [3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 21:09:55,318 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-04-07 21:09:55,509 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 21:09:55,510 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 21:09:55,510 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 21:09:55,510 INFO L85 PathProgramCache]: Analyzing trace with hash -214718627, now seen corresponding path program 1 times [2022-04-07 21:09:55,510 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 21:09:55,511 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1112155583] [2022-04-07 21:09:55,511 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 21:09:55,511 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 21:09:55,522 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 21:09:55,522 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [36881416] [2022-04-07 21:09:55,522 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 21:09:55,522 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 21:09:55,522 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 21:09:55,536 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 21:09:55,543 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-07 21:09:55,575 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 21:09:55,576 INFO L263 TraceCheckSpWp]: Trace formula consists of 89 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-07 21:09:55,586 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 21:09:55,587 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 21:09:55,709 INFO L272 TraceCheckUtils]: 0: Hoare triple {594#true} [69] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {594#true} is VALID [2022-04-07 21:09:55,709 INFO L290 TraceCheckUtils]: 1: Hoare triple {594#true} [71] 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) (= (select |v_#length_1| 2) 11) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .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] {594#true} is VALID [2022-04-07 21:09:55,709 INFO L290 TraceCheckUtils]: 2: Hoare triple {594#true} [74] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {594#true} is VALID [2022-04-07 21:09:55,709 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {594#true} {594#true} [95] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {594#true} is VALID [2022-04-07 21:09:55,710 INFO L272 TraceCheckUtils]: 4: Hoare triple {594#true} [70] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {594#true} is VALID [2022-04-07 21:09:55,710 INFO L290 TraceCheckUtils]: 5: Hoare triple {594#true} [73] mainENTRY-->L30-3: Formula: (and (= v_main_~s~0_3 1) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (= v_main_~n~0_1 |v_main_#t~nondet4_2|) (= v_main_~t~0_3 1) (= v_main_~a~0_3 0)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~t~0=v_main_~t~0_3, main_~n~0=v_main_~n~0_1, main_~s~0=v_main_~s~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[main_#t~nondet4, main_~t~0, main_~n~0, main_~s~0, main_~a~0] {614#(and (= main_~t~0 1) (= main_~s~0 1))} is VALID [2022-04-07 21:09:55,711 INFO L290 TraceCheckUtils]: 6: Hoare triple {614#(and (= main_~t~0 1) (= main_~s~0 1))} [76] L30-3-->L30-1: Formula: (and (= |v_main_#t~post5_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post5_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post5=|v_main_#t~post5_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post5] {614#(and (= main_~t~0 1) (= main_~s~0 1))} is VALID [2022-04-07 21:09:55,711 INFO L290 TraceCheckUtils]: 7: Hoare triple {614#(and (= main_~t~0 1) (= main_~s~0 1))} [79] L30-1-->L31: Formula: (< |v_main_#t~post5_5| 20) InVars {main_#t~post5=|v_main_#t~post5_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post5] {614#(and (= main_~t~0 1) (= main_~s~0 1))} is VALID [2022-04-07 21:09:55,712 INFO L272 TraceCheckUtils]: 8: Hoare triple {614#(and (= main_~t~0 1) (= main_~s~0 1))} [82] L31-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~t~0_10 (+ (* 2 v_main_~a~0_10) 1)) 1 0)) InVars {main_~t~0=v_main_~t~0_10, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~a~0] {594#true} is VALID [2022-04-07 21:09:55,712 INFO L290 TraceCheckUtils]: 9: Hoare triple {594#true} [81] __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] {594#true} is VALID [2022-04-07 21:09:55,712 INFO L290 TraceCheckUtils]: 10: Hoare triple {594#true} [85] 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[] {594#true} is VALID [2022-04-07 21:09:55,712 INFO L290 TraceCheckUtils]: 11: Hoare triple {594#true} [90] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {594#true} is VALID [2022-04-07 21:09:55,713 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {594#true} {614#(and (= main_~t~0 1) (= main_~s~0 1))} [96] __VERIFIER_assertEXIT-->L31-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~t~0_10 (+ (* 2 v_main_~a~0_10) 1)) 1 0)) InVars {main_~t~0=v_main_~t~0_10, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~a~0] {614#(and (= main_~t~0 1) (= main_~s~0 1))} is VALID [2022-04-07 21:09:55,715 INFO L272 TraceCheckUtils]: 13: Hoare triple {614#(and (= main_~t~0 1) (= main_~s~0 1))} [86] L31-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~s~0_11 (let ((.cse0 (+ 1 v_main_~a~0_11))) (* .cse0 .cse0))) 1 0)) InVars {main_~s~0=v_main_~s~0_11, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~s~0, main_~a~0] {594#true} is VALID [2022-04-07 21:09:55,716 INFO L290 TraceCheckUtils]: 14: Hoare triple {594#true} [81] __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] {594#true} is VALID [2022-04-07 21:09:55,716 INFO L290 TraceCheckUtils]: 15: Hoare triple {594#true} [85] 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[] {594#true} is VALID [2022-04-07 21:09:55,716 INFO L290 TraceCheckUtils]: 16: Hoare triple {594#true} [90] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {594#true} is VALID [2022-04-07 21:09:55,717 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {594#true} {614#(and (= main_~t~0 1) (= main_~s~0 1))} [97] __VERIFIER_assertEXIT-->L32: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~s~0_11 (let ((.cse0 (+ 1 v_main_~a~0_11))) (* .cse0 .cse0))) 1 0)) InVars {main_~s~0=v_main_~s~0_11, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~s~0, main_~a~0] {614#(and (= main_~t~0 1) (= main_~s~0 1))} is VALID [2022-04-07 21:09:55,718 INFO L272 TraceCheckUtils]: 18: Hoare triple {614#(and (= main_~t~0 1) (= main_~s~0 1))} [91] L32-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~t~0_11 v_main_~t~0_11) (* v_main_~t~0_11 2) (* v_main_~s~0_12 (- 4)) 1) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_3|) InVars {main_~t~0=v_main_~t~0_11, main_~s~0=v_main_~s~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~s~0] {654#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 21:09:55,718 INFO L290 TraceCheckUtils]: 19: Hoare triple {654#(<= 1 |__VERIFIER_assert_#in~cond|)} [81] __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] {658#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 21:09:55,718 INFO L290 TraceCheckUtils]: 20: Hoare triple {658#(<= 1 __VERIFIER_assert_~cond)} [84] 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[] {595#false} is VALID [2022-04-07 21:09:55,719 INFO L290 TraceCheckUtils]: 21: Hoare triple {595#false} [88] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {595#false} is VALID [2022-04-07 21:09:55,719 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-07 21:09:55,719 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 21:09:55,719 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 21:09:55,720 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1112155583] [2022-04-07 21:09:55,720 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 21:09:55,721 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [36881416] [2022-04-07 21:09:55,721 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [36881416] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 21:09:55,721 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 21:09:55,721 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-07 21:09:55,721 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [108454900] [2022-04-07 21:09:55,721 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 21:09:55,721 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 22 [2022-04-07 21:09:55,722 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 21:09:55,722 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-07 21:09:55,734 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 19 edges. 19 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 21:09:55,735 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-07 21:09:55,735 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 21:09:55,735 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-07 21:09:55,735 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-07 21:09:55,736 INFO L87 Difference]: Start difference. First operand 37 states and 47 transitions. Second operand has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-07 21:09:55,858 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 21:09:55,858 INFO L93 Difference]: Finished difference Result 42 states and 51 transitions. [2022-04-07 21:09:55,858 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-07 21:09:55,859 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 22 [2022-04-07 21:09:55,860 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 21:09:55,860 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-07 21:09:55,862 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 46 transitions. [2022-04-07 21:09:55,862 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-07 21:09:55,864 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 46 transitions. [2022-04-07 21:09:55,864 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 46 transitions. [2022-04-07 21:09:55,896 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 21:09:55,897 INFO L225 Difference]: With dead ends: 42 [2022-04-07 21:09:55,897 INFO L226 Difference]: Without dead ends: 39 [2022-04-07 21:09:55,898 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 22 GetRequests, 18 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-07 21:09:55,900 INFO L913 BasicCegarLoop]: 32 mSDtfsCounter, 6 mSDsluCounter, 63 mSDsCounter, 0 mSdLazyCounter, 40 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 95 SdHoareTripleChecker+Invalid, 41 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 40 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-07 21:09:55,900 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [9 Valid, 95 Invalid, 41 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 40 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-07 21:09:55,900 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 39 states. [2022-04-07 21:09:55,904 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 39 to 39. [2022-04-07 21:09:55,905 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 21:09:55,906 INFO L82 GeneralOperation]: Start isEquivalent. First operand 39 states. Second operand has 39 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 23 states have internal predecessors, (25), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-07 21:09:55,906 INFO L74 IsIncluded]: Start isIncluded. First operand 39 states. Second operand has 39 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 23 states have internal predecessors, (25), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-07 21:09:55,907 INFO L87 Difference]: Start difference. First operand 39 states. Second operand has 39 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 23 states have internal predecessors, (25), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-07 21:09:55,909 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 21:09:55,909 INFO L93 Difference]: Finished difference Result 39 states and 45 transitions. [2022-04-07 21:09:55,909 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 45 transitions. [2022-04-07 21:09:55,909 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 21:09:55,909 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 21:09:55,909 INFO L74 IsIncluded]: Start isIncluded. First operand has 39 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 23 states have internal predecessors, (25), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 39 states. [2022-04-07 21:09:55,910 INFO L87 Difference]: Start difference. First operand has 39 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 23 states have internal predecessors, (25), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 39 states. [2022-04-07 21:09:55,912 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 21:09:55,912 INFO L93 Difference]: Finished difference Result 39 states and 45 transitions. [2022-04-07 21:09:55,912 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 45 transitions. [2022-04-07 21:09:55,912 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 21:09:55,912 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 21:09:55,912 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 21:09:55,912 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 21:09:55,912 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 39 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 23 states have internal predecessors, (25), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-07 21:09:55,913 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 39 states to 39 states and 45 transitions. [2022-04-07 21:09:55,913 INFO L78 Accepts]: Start accepts. Automaton has 39 states and 45 transitions. Word has length 22 [2022-04-07 21:09:55,914 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 21:09:55,914 INFO L478 AbstractCegarLoop]: Abstraction has 39 states and 45 transitions. [2022-04-07 21:09:55,914 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-07 21:09:55,914 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 45 transitions. [2022-04-07 21:09:55,914 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 31 [2022-04-07 21:09:55,914 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 21:09:55,914 INFO L499 BasicCegarLoop]: trace histogram [4, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 21:09:55,935 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-07 21:09:56,131 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 21:09:56,132 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 21:09:56,132 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 21:09:56,132 INFO L85 PathProgramCache]: Analyzing trace with hash 1697115236, now seen corresponding path program 1 times [2022-04-07 21:09:56,132 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 21:09:56,132 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [125269351] [2022-04-07 21:09:56,132 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 21:09:56,132 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 21:09:56,141 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 21:09:56,141 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [866553131] [2022-04-07 21:09:56,141 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 21:09:56,142 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 21:09:56,142 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 21:09:56,142 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 21:09:56,143 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-07 21:09:56,174 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 21:09:56,175 INFO L263 TraceCheckSpWp]: Trace formula consists of 110 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-07 21:09:56,182 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 21:09:56,183 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 21:09:56,319 INFO L272 TraceCheckUtils]: 0: Hoare triple {825#true} [69] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {825#true} is VALID [2022-04-07 21:09:56,319 INFO L290 TraceCheckUtils]: 1: Hoare triple {825#true} [71] 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) (= (select |v_#length_1| 2) 11) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .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] {833#(<= ~counter~0 0)} is VALID [2022-04-07 21:09:56,320 INFO L290 TraceCheckUtils]: 2: Hoare triple {833#(<= ~counter~0 0)} [74] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {833#(<= ~counter~0 0)} is VALID [2022-04-07 21:09:56,320 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {833#(<= ~counter~0 0)} {825#true} [95] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {833#(<= ~counter~0 0)} is VALID [2022-04-07 21:09:56,321 INFO L272 TraceCheckUtils]: 4: Hoare triple {833#(<= ~counter~0 0)} [70] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {833#(<= ~counter~0 0)} is VALID [2022-04-07 21:09:56,322 INFO L290 TraceCheckUtils]: 5: Hoare triple {833#(<= ~counter~0 0)} [73] mainENTRY-->L30-3: Formula: (and (= v_main_~s~0_3 1) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (= v_main_~n~0_1 |v_main_#t~nondet4_2|) (= v_main_~t~0_3 1) (= v_main_~a~0_3 0)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~t~0=v_main_~t~0_3, main_~n~0=v_main_~n~0_1, main_~s~0=v_main_~s~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[main_#t~nondet4, main_~t~0, main_~n~0, main_~s~0, main_~a~0] {833#(<= ~counter~0 0)} is VALID [2022-04-07 21:09:56,323 INFO L290 TraceCheckUtils]: 6: Hoare triple {833#(<= ~counter~0 0)} [76] L30-3-->L30-1: Formula: (and (= |v_main_#t~post5_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post5_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post5=|v_main_#t~post5_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post5] {849#(<= ~counter~0 1)} is VALID [2022-04-07 21:09:56,323 INFO L290 TraceCheckUtils]: 7: Hoare triple {849#(<= ~counter~0 1)} [79] L30-1-->L31: Formula: (< |v_main_#t~post5_5| 20) InVars {main_#t~post5=|v_main_#t~post5_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post5] {849#(<= ~counter~0 1)} is VALID [2022-04-07 21:09:56,323 INFO L272 TraceCheckUtils]: 8: Hoare triple {849#(<= ~counter~0 1)} [82] L31-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~t~0_10 (+ (* 2 v_main_~a~0_10) 1)) 1 0)) InVars {main_~t~0=v_main_~t~0_10, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~a~0] {849#(<= ~counter~0 1)} is VALID [2022-04-07 21:09:56,324 INFO L290 TraceCheckUtils]: 9: Hoare triple {849#(<= ~counter~0 1)} [81] __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] {849#(<= ~counter~0 1)} is VALID [2022-04-07 21:09:56,324 INFO L290 TraceCheckUtils]: 10: Hoare triple {849#(<= ~counter~0 1)} [85] 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[] {849#(<= ~counter~0 1)} is VALID [2022-04-07 21:09:56,324 INFO L290 TraceCheckUtils]: 11: Hoare triple {849#(<= ~counter~0 1)} [90] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {849#(<= ~counter~0 1)} is VALID [2022-04-07 21:09:56,325 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {849#(<= ~counter~0 1)} {849#(<= ~counter~0 1)} [96] __VERIFIER_assertEXIT-->L31-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~t~0_10 (+ (* 2 v_main_~a~0_10) 1)) 1 0)) InVars {main_~t~0=v_main_~t~0_10, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~a~0] {849#(<= ~counter~0 1)} is VALID [2022-04-07 21:09:56,325 INFO L272 TraceCheckUtils]: 13: Hoare triple {849#(<= ~counter~0 1)} [86] L31-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~s~0_11 (let ((.cse0 (+ 1 v_main_~a~0_11))) (* .cse0 .cse0))) 1 0)) InVars {main_~s~0=v_main_~s~0_11, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~s~0, main_~a~0] {849#(<= ~counter~0 1)} is VALID [2022-04-07 21:09:56,326 INFO L290 TraceCheckUtils]: 14: Hoare triple {849#(<= ~counter~0 1)} [81] __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] {849#(<= ~counter~0 1)} is VALID [2022-04-07 21:09:56,326 INFO L290 TraceCheckUtils]: 15: Hoare triple {849#(<= ~counter~0 1)} [85] 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[] {849#(<= ~counter~0 1)} is VALID [2022-04-07 21:09:56,327 INFO L290 TraceCheckUtils]: 16: Hoare triple {849#(<= ~counter~0 1)} [90] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {849#(<= ~counter~0 1)} is VALID [2022-04-07 21:09:56,327 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {849#(<= ~counter~0 1)} {849#(<= ~counter~0 1)} [97] __VERIFIER_assertEXIT-->L32: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~s~0_11 (let ((.cse0 (+ 1 v_main_~a~0_11))) (* .cse0 .cse0))) 1 0)) InVars {main_~s~0=v_main_~s~0_11, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~s~0, main_~a~0] {849#(<= ~counter~0 1)} is VALID [2022-04-07 21:09:56,328 INFO L272 TraceCheckUtils]: 18: Hoare triple {849#(<= ~counter~0 1)} [91] L32-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~t~0_11 v_main_~t~0_11) (* v_main_~t~0_11 2) (* v_main_~s~0_12 (- 4)) 1) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_3|) InVars {main_~t~0=v_main_~t~0_11, main_~s~0=v_main_~s~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~s~0] {849#(<= ~counter~0 1)} is VALID [2022-04-07 21:09:56,328 INFO L290 TraceCheckUtils]: 19: Hoare triple {849#(<= ~counter~0 1)} [81] __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] {849#(<= ~counter~0 1)} is VALID [2022-04-07 21:09:56,330 INFO L290 TraceCheckUtils]: 20: Hoare triple {849#(<= ~counter~0 1)} [85] 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[] {849#(<= ~counter~0 1)} is VALID [2022-04-07 21:09:56,331 INFO L290 TraceCheckUtils]: 21: Hoare triple {849#(<= ~counter~0 1)} [90] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {849#(<= ~counter~0 1)} is VALID [2022-04-07 21:09:56,331 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {849#(<= ~counter~0 1)} {849#(<= ~counter~0 1)} [98] __VERIFIER_assertEXIT-->L33: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* v_main_~t~0_11 v_main_~t~0_11) (* v_main_~t~0_11 2) (* v_main_~s~0_12 (- 4)) 1) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_3|) InVars {main_~t~0=v_main_~t~0_11, main_~s~0=v_main_~s~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~s~0] {849#(<= ~counter~0 1)} is VALID [2022-04-07 21:09:56,331 INFO L290 TraceCheckUtils]: 23: Hoare triple {849#(<= ~counter~0 1)} [94] L33-->L30-3: Formula: (and (= v_main_~t~0_8 (+ v_main_~t~0_9 2)) (<= v_main_~s~0_10 v_main_~n~0_5) (= v_main_~s~0_9 (+ v_main_~s~0_10 v_main_~t~0_8)) (= v_main_~a~0_8 (+ v_main_~a~0_9 1))) InVars {main_~t~0=v_main_~t~0_9, main_~n~0=v_main_~n~0_5, main_~s~0=v_main_~s~0_10, main_~a~0=v_main_~a~0_9} OutVars{main_~t~0=v_main_~t~0_8, main_~n~0=v_main_~n~0_5, main_~s~0=v_main_~s~0_9, main_~a~0=v_main_~a~0_8} AuxVars[] AssignedVars[main_~t~0, main_~s~0, main_~a~0] {849#(<= ~counter~0 1)} is VALID [2022-04-07 21:09:56,332 INFO L290 TraceCheckUtils]: 24: Hoare triple {849#(<= ~counter~0 1)} [76] L30-3-->L30-1: Formula: (and (= |v_main_#t~post5_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post5_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post5=|v_main_#t~post5_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post5] {904#(<= |main_#t~post5| 1)} is VALID [2022-04-07 21:09:56,333 INFO L290 TraceCheckUtils]: 25: Hoare triple {904#(<= |main_#t~post5| 1)} [78] L30-1-->L30-4: Formula: (not (< |v_main_#t~post5_3| 20)) InVars {main_#t~post5=|v_main_#t~post5_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post5] {826#false} is VALID [2022-04-07 21:09:56,333 INFO L272 TraceCheckUtils]: 26: Hoare triple {826#false} [77] L30-4-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~t~0_12 (+ (* 2 v_main_~a~0_12) 1)) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~t~0=v_main_~t~0_12, main_~a~0=v_main_~a~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~a~0] {826#false} is VALID [2022-04-07 21:09:56,333 INFO L290 TraceCheckUtils]: 27: Hoare triple {826#false} [81] __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] {826#false} is VALID [2022-04-07 21:09:56,333 INFO L290 TraceCheckUtils]: 28: Hoare triple {826#false} [84] 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[] {826#false} is VALID [2022-04-07 21:09:56,333 INFO L290 TraceCheckUtils]: 29: Hoare triple {826#false} [88] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {826#false} is VALID [2022-04-07 21:09:56,333 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 6 proven. 2 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-07 21:09:56,333 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 21:09:56,485 INFO L290 TraceCheckUtils]: 29: Hoare triple {826#false} [88] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {826#false} is VALID [2022-04-07 21:09:56,485 INFO L290 TraceCheckUtils]: 28: Hoare triple {826#false} [84] 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[] {826#false} is VALID [2022-04-07 21:09:56,485 INFO L290 TraceCheckUtils]: 27: Hoare triple {826#false} [81] __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] {826#false} is VALID [2022-04-07 21:09:56,486 INFO L272 TraceCheckUtils]: 26: Hoare triple {826#false} [77] L30-4-->__VERIFIER_assertENTRY: Formula: (= (ite (= v_main_~t~0_12 (+ (* 2 v_main_~a~0_12) 1)) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~t~0=v_main_~t~0_12, main_~a~0=v_main_~a~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~a~0] {826#false} is VALID [2022-04-07 21:09:56,486 INFO L290 TraceCheckUtils]: 25: Hoare triple {932#(< |main_#t~post5| 20)} [78] L30-1-->L30-4: Formula: (not (< |v_main_#t~post5_3| 20)) InVars {main_#t~post5=|v_main_#t~post5_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post5] {826#false} is VALID [2022-04-07 21:09:56,488 INFO L290 TraceCheckUtils]: 24: Hoare triple {936#(< ~counter~0 20)} [76] L30-3-->L30-1: Formula: (and (= |v_main_#t~post5_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post5_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post5=|v_main_#t~post5_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post5] {932#(< |main_#t~post5| 20)} is VALID [2022-04-07 21:09:56,488 INFO L290 TraceCheckUtils]: 23: Hoare triple {936#(< ~counter~0 20)} [94] L33-->L30-3: Formula: (and (= v_main_~t~0_8 (+ v_main_~t~0_9 2)) (<= v_main_~s~0_10 v_main_~n~0_5) (= v_main_~s~0_9 (+ v_main_~s~0_10 v_main_~t~0_8)) (= v_main_~a~0_8 (+ v_main_~a~0_9 1))) InVars {main_~t~0=v_main_~t~0_9, main_~n~0=v_main_~n~0_5, main_~s~0=v_main_~s~0_10, main_~a~0=v_main_~a~0_9} OutVars{main_~t~0=v_main_~t~0_8, main_~n~0=v_main_~n~0_5, main_~s~0=v_main_~s~0_9, main_~a~0=v_main_~a~0_8} AuxVars[] AssignedVars[main_~t~0, main_~s~0, main_~a~0] {936#(< ~counter~0 20)} is VALID [2022-04-07 21:09:56,500 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {825#true} {936#(< ~counter~0 20)} [98] __VERIFIER_assertEXIT-->L33: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* v_main_~t~0_11 v_main_~t~0_11) (* v_main_~t~0_11 2) (* v_main_~s~0_12 (- 4)) 1) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_3|) InVars {main_~t~0=v_main_~t~0_11, main_~s~0=v_main_~s~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~s~0] {936#(< ~counter~0 20)} is VALID [2022-04-07 21:09:56,500 INFO L290 TraceCheckUtils]: 21: Hoare triple {825#true} [90] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {825#true} is VALID [2022-04-07 21:09:56,500 INFO L290 TraceCheckUtils]: 20: Hoare triple {825#true} [85] 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[] {825#true} is VALID [2022-04-07 21:09:56,500 INFO L290 TraceCheckUtils]: 19: Hoare triple {825#true} [81] __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] {825#true} is VALID [2022-04-07 21:09:56,500 INFO L272 TraceCheckUtils]: 18: Hoare triple {936#(< ~counter~0 20)} [91] L32-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~t~0_11 v_main_~t~0_11) (* v_main_~t~0_11 2) (* v_main_~s~0_12 (- 4)) 1) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_3|) InVars {main_~t~0=v_main_~t~0_11, main_~s~0=v_main_~s~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~s~0] {825#true} is VALID [2022-04-07 21:09:56,503 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {825#true} {936#(< ~counter~0 20)} [97] __VERIFIER_assertEXIT-->L32: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~s~0_11 (let ((.cse0 (+ 1 v_main_~a~0_11))) (* .cse0 .cse0))) 1 0)) InVars {main_~s~0=v_main_~s~0_11, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~s~0, main_~a~0] {936#(< ~counter~0 20)} is VALID [2022-04-07 21:09:56,503 INFO L290 TraceCheckUtils]: 16: Hoare triple {825#true} [90] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {825#true} is VALID [2022-04-07 21:09:56,503 INFO L290 TraceCheckUtils]: 15: Hoare triple {825#true} [85] 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[] {825#true} is VALID [2022-04-07 21:09:56,503 INFO L290 TraceCheckUtils]: 14: Hoare triple {825#true} [81] __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] {825#true} is VALID [2022-04-07 21:09:56,503 INFO L272 TraceCheckUtils]: 13: Hoare triple {936#(< ~counter~0 20)} [86] L31-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~s~0_11 (let ((.cse0 (+ 1 v_main_~a~0_11))) (* .cse0 .cse0))) 1 0)) InVars {main_~s~0=v_main_~s~0_11, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~s~0, main_~a~0] {825#true} is VALID [2022-04-07 21:09:56,504 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {825#true} {936#(< ~counter~0 20)} [96] __VERIFIER_assertEXIT-->L31-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~t~0_10 (+ (* 2 v_main_~a~0_10) 1)) 1 0)) InVars {main_~t~0=v_main_~t~0_10, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~a~0] {936#(< ~counter~0 20)} is VALID [2022-04-07 21:09:56,504 INFO L290 TraceCheckUtils]: 11: Hoare triple {825#true} [90] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {825#true} is VALID [2022-04-07 21:09:56,504 INFO L290 TraceCheckUtils]: 10: Hoare triple {825#true} [85] 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[] {825#true} is VALID [2022-04-07 21:09:56,504 INFO L290 TraceCheckUtils]: 9: Hoare triple {825#true} [81] __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] {825#true} is VALID [2022-04-07 21:09:56,504 INFO L272 TraceCheckUtils]: 8: Hoare triple {936#(< ~counter~0 20)} [82] L31-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~t~0_10 (+ (* 2 v_main_~a~0_10) 1)) 1 0)) InVars {main_~t~0=v_main_~t~0_10, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~a~0] {825#true} is VALID [2022-04-07 21:09:56,504 INFO L290 TraceCheckUtils]: 7: Hoare triple {936#(< ~counter~0 20)} [79] L30-1-->L31: Formula: (< |v_main_#t~post5_5| 20) InVars {main_#t~post5=|v_main_#t~post5_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post5] {936#(< ~counter~0 20)} is VALID [2022-04-07 21:09:56,505 INFO L290 TraceCheckUtils]: 6: Hoare triple {991#(< ~counter~0 19)} [76] L30-3-->L30-1: Formula: (and (= |v_main_#t~post5_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post5_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post5=|v_main_#t~post5_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post5] {936#(< ~counter~0 20)} is VALID [2022-04-07 21:09:56,505 INFO L290 TraceCheckUtils]: 5: Hoare triple {991#(< ~counter~0 19)} [73] mainENTRY-->L30-3: Formula: (and (= v_main_~s~0_3 1) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (= v_main_~n~0_1 |v_main_#t~nondet4_2|) (= v_main_~t~0_3 1) (= v_main_~a~0_3 0)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~t~0=v_main_~t~0_3, main_~n~0=v_main_~n~0_1, main_~s~0=v_main_~s~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[main_#t~nondet4, main_~t~0, main_~n~0, main_~s~0, main_~a~0] {991#(< ~counter~0 19)} is VALID [2022-04-07 21:09:56,505 INFO L272 TraceCheckUtils]: 4: Hoare triple {991#(< ~counter~0 19)} [70] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {991#(< ~counter~0 19)} is VALID [2022-04-07 21:09:56,506 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {991#(< ~counter~0 19)} {825#true} [95] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {991#(< ~counter~0 19)} is VALID [2022-04-07 21:09:56,506 INFO L290 TraceCheckUtils]: 2: Hoare triple {991#(< ~counter~0 19)} [74] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {991#(< ~counter~0 19)} is VALID [2022-04-07 21:09:56,507 INFO L290 TraceCheckUtils]: 1: Hoare triple {825#true} [71] 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) (= (select |v_#length_1| 2) 11) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .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] {991#(< ~counter~0 19)} is VALID [2022-04-07 21:09:56,507 INFO L272 TraceCheckUtils]: 0: Hoare triple {825#true} [69] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {825#true} is VALID [2022-04-07 21:09:56,507 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 6 proven. 2 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-07 21:09:56,507 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 21:09:56,507 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [125269351] [2022-04-07 21:09:56,507 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 21:09:56,507 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [866553131] [2022-04-07 21:09:56,507 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [866553131] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 21:09:56,507 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 21:09:56,507 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 8 [2022-04-07 21:09:56,507 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [361231276] [2022-04-07 21:09:56,507 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 21:09:56,508 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.125) internal successors, (25), 8 states have internal predecessors, (25), 6 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 4 states have call predecessors, (8), 3 states have call successors, (8) Word has length 30 [2022-04-07 21:09:56,508 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 21:09:56,508 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.125) internal successors, (25), 8 states have internal predecessors, (25), 6 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 4 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-07 21:09:56,544 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-07 21:09:56,544 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-07 21:09:56,544 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 21:09:56,545 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-07 21:09:56,545 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2022-04-07 21:09:56,545 INFO L87 Difference]: Start difference. First operand 39 states and 45 transitions. Second operand has 8 states, 8 states have (on average 3.125) internal successors, (25), 8 states have internal predecessors, (25), 6 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 4 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-07 21:09:56,796 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 21:09:56,796 INFO L93 Difference]: Finished difference Result 71 states and 87 transitions. [2022-04-07 21:09:56,796 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-07 21:09:56,797 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.125) internal successors, (25), 8 states have internal predecessors, (25), 6 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 4 states have call predecessors, (8), 3 states have call successors, (8) Word has length 30 [2022-04-07 21:09:56,797 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 21:09:56,797 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.125) internal successors, (25), 8 states have internal predecessors, (25), 6 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 4 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-07 21:09:56,799 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 84 transitions. [2022-04-07 21:09:56,799 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.125) internal successors, (25), 8 states have internal predecessors, (25), 6 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 4 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-07 21:09:56,800 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 84 transitions. [2022-04-07 21:09:56,800 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 84 transitions. [2022-04-07 21:09:56,870 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 84 edges. 84 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 21:09:56,872 INFO L225 Difference]: With dead ends: 71 [2022-04-07 21:09:56,872 INFO L226 Difference]: Without dead ends: 71 [2022-04-07 21:09:56,872 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 62 GetRequests, 53 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=40, Invalid=70, Unknown=0, NotChecked=0, Total=110 [2022-04-07 21:09:56,872 INFO L913 BasicCegarLoop]: 38 mSDtfsCounter, 49 mSDsluCounter, 75 mSDsCounter, 0 mSdLazyCounter, 47 mSolverCounterSat, 27 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 49 SdHoareTripleChecker+Valid, 113 SdHoareTripleChecker+Invalid, 74 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 27 IncrementalHoareTripleChecker+Valid, 47 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-07 21:09:56,873 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [49 Valid, 113 Invalid, 74 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [27 Valid, 47 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-07 21:09:56,873 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 71 states. [2022-04-07 21:09:56,876 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 71 to 67. [2022-04-07 21:09:56,876 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 21:09:56,877 INFO L82 GeneralOperation]: Start isEquivalent. First operand 71 states. Second operand has 67 states, 36 states have (on average 1.1944444444444444) internal successors, (43), 39 states have internal predecessors, (43), 23 states have call successors, (23), 8 states have call predecessors, (23), 7 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-07 21:09:56,877 INFO L74 IsIncluded]: Start isIncluded. First operand 71 states. Second operand has 67 states, 36 states have (on average 1.1944444444444444) internal successors, (43), 39 states have internal predecessors, (43), 23 states have call successors, (23), 8 states have call predecessors, (23), 7 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-07 21:09:56,877 INFO L87 Difference]: Start difference. First operand 71 states. Second operand has 67 states, 36 states have (on average 1.1944444444444444) internal successors, (43), 39 states have internal predecessors, (43), 23 states have call successors, (23), 8 states have call predecessors, (23), 7 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-07 21:09:56,879 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 21:09:56,879 INFO L93 Difference]: Finished difference Result 71 states and 87 transitions. [2022-04-07 21:09:56,879 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 87 transitions. [2022-04-07 21:09:56,880 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 21:09:56,880 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 21:09:56,880 INFO L74 IsIncluded]: Start isIncluded. First operand has 67 states, 36 states have (on average 1.1944444444444444) internal successors, (43), 39 states have internal predecessors, (43), 23 states have call successors, (23), 8 states have call predecessors, (23), 7 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) Second operand 71 states. [2022-04-07 21:09:56,880 INFO L87 Difference]: Start difference. First operand has 67 states, 36 states have (on average 1.1944444444444444) internal successors, (43), 39 states have internal predecessors, (43), 23 states have call successors, (23), 8 states have call predecessors, (23), 7 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) Second operand 71 states. [2022-04-07 21:09:56,882 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 21:09:56,882 INFO L93 Difference]: Finished difference Result 71 states and 87 transitions. [2022-04-07 21:09:56,882 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 87 transitions. [2022-04-07 21:09:56,882 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 21:09:56,883 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 21:09:56,883 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 21:09:56,883 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 21:09:56,883 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 67 states, 36 states have (on average 1.1944444444444444) internal successors, (43), 39 states have internal predecessors, (43), 23 states have call successors, (23), 8 states have call predecessors, (23), 7 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-07 21:09:56,885 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 67 states to 67 states and 85 transitions. [2022-04-07 21:09:56,885 INFO L78 Accepts]: Start accepts. Automaton has 67 states and 85 transitions. Word has length 30 [2022-04-07 21:09:56,885 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 21:09:56,885 INFO L478 AbstractCegarLoop]: Abstraction has 67 states and 85 transitions. [2022-04-07 21:09:56,885 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.125) internal successors, (25), 8 states have internal predecessors, (25), 6 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 4 states have call predecessors, (8), 3 states have call successors, (8) [2022-04-07 21:09:56,885 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 85 transitions. [2022-04-07 21:09:56,885 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 31 [2022-04-07 21:09:56,885 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 21:09:56,886 INFO L499 BasicCegarLoop]: trace histogram [4, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 21:09:56,904 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-07 21:09:57,102 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 21:09:57,102 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 21:09:57,103 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 21:09:57,103 INFO L85 PathProgramCache]: Analyzing trace with hash 1698187712, now seen corresponding path program 1 times [2022-04-07 21:09:57,103 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 21:09:57,103 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1997282050] [2022-04-07 21:09:57,103 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 21:09:57,103 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 21:09:57,117 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 21:09:57,117 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [435178754] [2022-04-07 21:09:57,117 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 21:09:57,117 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 21:09:57,117 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 21:09:57,122 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 21:09:57,123 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-07 21:09:57,154 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 21:09:57,155 INFO L263 TraceCheckSpWp]: Trace formula consists of 110 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-07 21:09:57,161 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 21:09:57,162 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 21:09:57,299 INFO L272 TraceCheckUtils]: 0: Hoare triple {1298#true} [69] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1298#true} is VALID [2022-04-07 21:09:57,300 INFO L290 TraceCheckUtils]: 1: Hoare triple {1298#true} [71] 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) (= (select |v_#length_1| 2) 11) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .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] {1298#true} is VALID [2022-04-07 21:09:57,300 INFO L290 TraceCheckUtils]: 2: Hoare triple {1298#true} [74] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1298#true} is VALID [2022-04-07 21:09:57,300 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1298#true} {1298#true} [95] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1298#true} is VALID [2022-04-07 21:09:57,300 INFO L272 TraceCheckUtils]: 4: Hoare triple {1298#true} [70] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1298#true} is VALID [2022-04-07 21:09:57,300 INFO L290 TraceCheckUtils]: 5: Hoare triple {1298#true} [73] mainENTRY-->L30-3: Formula: (and (= v_main_~s~0_3 1) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (= v_main_~n~0_1 |v_main_#t~nondet4_2|) (= v_main_~t~0_3 1) (= v_main_~a~0_3 0)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~t~0=v_main_~t~0_3, main_~n~0=v_main_~n~0_1, main_~s~0=v_main_~s~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[main_#t~nondet4, main_~t~0, main_~n~0, main_~s~0, main_~a~0] {1318#(and (= main_~a~0 0) (= main_~t~0 1))} is VALID [2022-04-07 21:09:57,301 INFO L290 TraceCheckUtils]: 6: Hoare triple {1318#(and (= main_~a~0 0) (= main_~t~0 1))} [76] L30-3-->L30-1: Formula: (and (= |v_main_#t~post5_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post5_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post5=|v_main_#t~post5_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post5] {1318#(and (= main_~a~0 0) (= main_~t~0 1))} is VALID [2022-04-07 21:09:57,301 INFO L290 TraceCheckUtils]: 7: Hoare triple {1318#(and (= main_~a~0 0) (= main_~t~0 1))} [79] L30-1-->L31: Formula: (< |v_main_#t~post5_5| 20) InVars {main_#t~post5=|v_main_#t~post5_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post5] {1318#(and (= main_~a~0 0) (= main_~t~0 1))} is VALID [2022-04-07 21:09:57,301 INFO L272 TraceCheckUtils]: 8: Hoare triple {1318#(and (= main_~a~0 0) (= main_~t~0 1))} [82] L31-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~t~0_10 (+ (* 2 v_main_~a~0_10) 1)) 1 0)) InVars {main_~t~0=v_main_~t~0_10, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~a~0] {1298#true} is VALID [2022-04-07 21:09:57,301 INFO L290 TraceCheckUtils]: 9: Hoare triple {1298#true} [81] __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] {1298#true} is VALID [2022-04-07 21:09:57,301 INFO L290 TraceCheckUtils]: 10: Hoare triple {1298#true} [85] 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[] {1298#true} is VALID [2022-04-07 21:09:57,301 INFO L290 TraceCheckUtils]: 11: Hoare triple {1298#true} [90] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1298#true} is VALID [2022-04-07 21:09:57,302 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {1298#true} {1318#(and (= main_~a~0 0) (= main_~t~0 1))} [96] __VERIFIER_assertEXIT-->L31-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~t~0_10 (+ (* 2 v_main_~a~0_10) 1)) 1 0)) InVars {main_~t~0=v_main_~t~0_10, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~a~0] {1318#(and (= main_~a~0 0) (= main_~t~0 1))} is VALID [2022-04-07 21:09:57,302 INFO L272 TraceCheckUtils]: 13: Hoare triple {1318#(and (= main_~a~0 0) (= main_~t~0 1))} [86] L31-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~s~0_11 (let ((.cse0 (+ 1 v_main_~a~0_11))) (* .cse0 .cse0))) 1 0)) InVars {main_~s~0=v_main_~s~0_11, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~s~0, main_~a~0] {1298#true} is VALID [2022-04-07 21:09:57,302 INFO L290 TraceCheckUtils]: 14: Hoare triple {1298#true} [81] __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] {1298#true} is VALID [2022-04-07 21:09:57,302 INFO L290 TraceCheckUtils]: 15: Hoare triple {1298#true} [85] 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[] {1298#true} is VALID [2022-04-07 21:09:57,302 INFO L290 TraceCheckUtils]: 16: Hoare triple {1298#true} [90] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1298#true} is VALID [2022-04-07 21:09:57,303 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {1298#true} {1318#(and (= main_~a~0 0) (= main_~t~0 1))} [97] __VERIFIER_assertEXIT-->L32: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~s~0_11 (let ((.cse0 (+ 1 v_main_~a~0_11))) (* .cse0 .cse0))) 1 0)) InVars {main_~s~0=v_main_~s~0_11, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~s~0, main_~a~0] {1318#(and (= main_~a~0 0) (= main_~t~0 1))} is VALID [2022-04-07 21:09:57,303 INFO L272 TraceCheckUtils]: 18: Hoare triple {1318#(and (= main_~a~0 0) (= main_~t~0 1))} [91] L32-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~t~0_11 v_main_~t~0_11) (* v_main_~t~0_11 2) (* v_main_~s~0_12 (- 4)) 1) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_3|) InVars {main_~t~0=v_main_~t~0_11, main_~s~0=v_main_~s~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~s~0] {1298#true} is VALID [2022-04-07 21:09:57,303 INFO L290 TraceCheckUtils]: 19: Hoare triple {1298#true} [81] __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] {1298#true} is VALID [2022-04-07 21:09:57,303 INFO L290 TraceCheckUtils]: 20: Hoare triple {1298#true} [85] 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[] {1298#true} is VALID [2022-04-07 21:09:57,303 INFO L290 TraceCheckUtils]: 21: Hoare triple {1298#true} [90] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1298#true} is VALID [2022-04-07 21:09:57,303 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {1298#true} {1318#(and (= main_~a~0 0) (= main_~t~0 1))} [98] __VERIFIER_assertEXIT-->L33: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* v_main_~t~0_11 v_main_~t~0_11) (* v_main_~t~0_11 2) (* v_main_~s~0_12 (- 4)) 1) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_3|) InVars {main_~t~0=v_main_~t~0_11, main_~s~0=v_main_~s~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~s~0] {1318#(and (= main_~a~0 0) (= main_~t~0 1))} is VALID [2022-04-07 21:09:57,304 INFO L290 TraceCheckUtils]: 23: Hoare triple {1318#(and (= main_~a~0 0) (= main_~t~0 1))} [94] L33-->L30-3: Formula: (and (= v_main_~t~0_8 (+ v_main_~t~0_9 2)) (<= v_main_~s~0_10 v_main_~n~0_5) (= v_main_~s~0_9 (+ v_main_~s~0_10 v_main_~t~0_8)) (= v_main_~a~0_8 (+ v_main_~a~0_9 1))) InVars {main_~t~0=v_main_~t~0_9, main_~n~0=v_main_~n~0_5, main_~s~0=v_main_~s~0_10, main_~a~0=v_main_~a~0_9} OutVars{main_~t~0=v_main_~t~0_8, main_~n~0=v_main_~n~0_5, main_~s~0=v_main_~s~0_9, main_~a~0=v_main_~a~0_8} AuxVars[] AssignedVars[main_~t~0, main_~s~0, main_~a~0] {1373#(and (= (+ (- 2) main_~t~0) 1) (= (+ (- 1) main_~a~0) 0))} is VALID [2022-04-07 21:09:57,305 INFO L290 TraceCheckUtils]: 24: Hoare triple {1373#(and (= (+ (- 2) main_~t~0) 1) (= (+ (- 1) main_~a~0) 0))} [76] L30-3-->L30-1: Formula: (and (= |v_main_#t~post5_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post5_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post5=|v_main_#t~post5_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post5] {1373#(and (= (+ (- 2) main_~t~0) 1) (= (+ (- 1) main_~a~0) 0))} is VALID [2022-04-07 21:09:57,305 INFO L290 TraceCheckUtils]: 25: Hoare triple {1373#(and (= (+ (- 2) main_~t~0) 1) (= (+ (- 1) main_~a~0) 0))} [79] L30-1-->L31: Formula: (< |v_main_#t~post5_5| 20) InVars {main_#t~post5=|v_main_#t~post5_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post5] {1373#(and (= (+ (- 2) main_~t~0) 1) (= (+ (- 1) main_~a~0) 0))} is VALID [2022-04-07 21:09:57,306 INFO L272 TraceCheckUtils]: 26: Hoare triple {1373#(and (= (+ (- 2) main_~t~0) 1) (= (+ (- 1) main_~a~0) 0))} [82] L31-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~t~0_10 (+ (* 2 v_main_~a~0_10) 1)) 1 0)) InVars {main_~t~0=v_main_~t~0_10, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~a~0] {1383#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 21:09:57,306 INFO L290 TraceCheckUtils]: 27: Hoare triple {1383#(<= 1 |__VERIFIER_assert_#in~cond|)} [81] __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] {1387#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 21:09:57,307 INFO L290 TraceCheckUtils]: 28: Hoare triple {1387#(<= 1 __VERIFIER_assert_~cond)} [84] 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[] {1299#false} is VALID [2022-04-07 21:09:57,307 INFO L290 TraceCheckUtils]: 29: Hoare triple {1299#false} [88] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1299#false} is VALID [2022-04-07 21:09:57,307 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 6 proven. 3 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-07 21:09:57,307 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 21:09:57,423 INFO L290 TraceCheckUtils]: 29: Hoare triple {1299#false} [88] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1299#false} is VALID [2022-04-07 21:09:57,424 INFO L290 TraceCheckUtils]: 28: Hoare triple {1387#(<= 1 __VERIFIER_assert_~cond)} [84] 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[] {1299#false} is VALID [2022-04-07 21:09:57,424 INFO L290 TraceCheckUtils]: 27: Hoare triple {1383#(<= 1 |__VERIFIER_assert_#in~cond|)} [81] __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] {1387#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 21:09:57,425 INFO L272 TraceCheckUtils]: 26: Hoare triple {1403#(= main_~t~0 (+ (* main_~a~0 2) 1))} [82] L31-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~t~0_10 (+ (* 2 v_main_~a~0_10) 1)) 1 0)) InVars {main_~t~0=v_main_~t~0_10, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~a~0] {1383#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 21:09:57,425 INFO L290 TraceCheckUtils]: 25: Hoare triple {1403#(= main_~t~0 (+ (* main_~a~0 2) 1))} [79] L30-1-->L31: Formula: (< |v_main_#t~post5_5| 20) InVars {main_#t~post5=|v_main_#t~post5_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post5] {1403#(= main_~t~0 (+ (* main_~a~0 2) 1))} is VALID [2022-04-07 21:09:57,425 INFO L290 TraceCheckUtils]: 24: Hoare triple {1403#(= main_~t~0 (+ (* main_~a~0 2) 1))} [76] L30-3-->L30-1: Formula: (and (= |v_main_#t~post5_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post5_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post5=|v_main_#t~post5_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post5] {1403#(= main_~t~0 (+ (* main_~a~0 2) 1))} is VALID [2022-04-07 21:09:57,426 INFO L290 TraceCheckUtils]: 23: Hoare triple {1403#(= main_~t~0 (+ (* main_~a~0 2) 1))} [94] L33-->L30-3: Formula: (and (= v_main_~t~0_8 (+ v_main_~t~0_9 2)) (<= v_main_~s~0_10 v_main_~n~0_5) (= v_main_~s~0_9 (+ v_main_~s~0_10 v_main_~t~0_8)) (= v_main_~a~0_8 (+ v_main_~a~0_9 1))) InVars {main_~t~0=v_main_~t~0_9, main_~n~0=v_main_~n~0_5, main_~s~0=v_main_~s~0_10, main_~a~0=v_main_~a~0_9} OutVars{main_~t~0=v_main_~t~0_8, main_~n~0=v_main_~n~0_5, main_~s~0=v_main_~s~0_9, main_~a~0=v_main_~a~0_8} AuxVars[] AssignedVars[main_~t~0, main_~s~0, main_~a~0] {1403#(= main_~t~0 (+ (* main_~a~0 2) 1))} is VALID [2022-04-07 21:09:57,427 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {1298#true} {1403#(= main_~t~0 (+ (* main_~a~0 2) 1))} [98] __VERIFIER_assertEXIT-->L33: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* v_main_~t~0_11 v_main_~t~0_11) (* v_main_~t~0_11 2) (* v_main_~s~0_12 (- 4)) 1) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_3|) InVars {main_~t~0=v_main_~t~0_11, main_~s~0=v_main_~s~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~s~0] {1403#(= main_~t~0 (+ (* main_~a~0 2) 1))} is VALID [2022-04-07 21:09:57,427 INFO L290 TraceCheckUtils]: 21: Hoare triple {1298#true} [90] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1298#true} is VALID [2022-04-07 21:09:57,427 INFO L290 TraceCheckUtils]: 20: Hoare triple {1298#true} [85] 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[] {1298#true} is VALID [2022-04-07 21:09:57,427 INFO L290 TraceCheckUtils]: 19: Hoare triple {1298#true} [81] __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] {1298#true} is VALID [2022-04-07 21:09:57,427 INFO L272 TraceCheckUtils]: 18: Hoare triple {1403#(= main_~t~0 (+ (* main_~a~0 2) 1))} [91] L32-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~t~0_11 v_main_~t~0_11) (* v_main_~t~0_11 2) (* v_main_~s~0_12 (- 4)) 1) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_3|) InVars {main_~t~0=v_main_~t~0_11, main_~s~0=v_main_~s~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~s~0] {1298#true} is VALID [2022-04-07 21:09:57,427 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {1298#true} {1403#(= main_~t~0 (+ (* main_~a~0 2) 1))} [97] __VERIFIER_assertEXIT-->L32: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~s~0_11 (let ((.cse0 (+ 1 v_main_~a~0_11))) (* .cse0 .cse0))) 1 0)) InVars {main_~s~0=v_main_~s~0_11, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~s~0, main_~a~0] {1403#(= main_~t~0 (+ (* main_~a~0 2) 1))} is VALID [2022-04-07 21:09:57,428 INFO L290 TraceCheckUtils]: 16: Hoare triple {1298#true} [90] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1298#true} is VALID [2022-04-07 21:09:57,428 INFO L290 TraceCheckUtils]: 15: Hoare triple {1298#true} [85] 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[] {1298#true} is VALID [2022-04-07 21:09:57,428 INFO L290 TraceCheckUtils]: 14: Hoare triple {1298#true} [81] __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] {1298#true} is VALID [2022-04-07 21:09:57,428 INFO L272 TraceCheckUtils]: 13: Hoare triple {1403#(= main_~t~0 (+ (* main_~a~0 2) 1))} [86] L31-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~s~0_11 (let ((.cse0 (+ 1 v_main_~a~0_11))) (* .cse0 .cse0))) 1 0)) InVars {main_~s~0=v_main_~s~0_11, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~s~0, main_~a~0] {1298#true} is VALID [2022-04-07 21:09:57,428 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {1298#true} {1403#(= main_~t~0 (+ (* main_~a~0 2) 1))} [96] __VERIFIER_assertEXIT-->L31-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~t~0_10 (+ (* 2 v_main_~a~0_10) 1)) 1 0)) InVars {main_~t~0=v_main_~t~0_10, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~a~0] {1403#(= main_~t~0 (+ (* main_~a~0 2) 1))} is VALID [2022-04-07 21:09:57,428 INFO L290 TraceCheckUtils]: 11: Hoare triple {1298#true} [90] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1298#true} is VALID [2022-04-07 21:09:57,428 INFO L290 TraceCheckUtils]: 10: Hoare triple {1298#true} [85] 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[] {1298#true} is VALID [2022-04-07 21:09:57,428 INFO L290 TraceCheckUtils]: 9: Hoare triple {1298#true} [81] __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] {1298#true} is VALID [2022-04-07 21:09:57,429 INFO L272 TraceCheckUtils]: 8: Hoare triple {1403#(= main_~t~0 (+ (* main_~a~0 2) 1))} [82] L31-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~t~0_10 (+ (* 2 v_main_~a~0_10) 1)) 1 0)) InVars {main_~t~0=v_main_~t~0_10, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~a~0] {1298#true} is VALID [2022-04-07 21:09:57,429 INFO L290 TraceCheckUtils]: 7: Hoare triple {1403#(= main_~t~0 (+ (* main_~a~0 2) 1))} [79] L30-1-->L31: Formula: (< |v_main_#t~post5_5| 20) InVars {main_#t~post5=|v_main_#t~post5_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post5] {1403#(= main_~t~0 (+ (* main_~a~0 2) 1))} is VALID [2022-04-07 21:09:57,429 INFO L290 TraceCheckUtils]: 6: Hoare triple {1403#(= main_~t~0 (+ (* main_~a~0 2) 1))} [76] L30-3-->L30-1: Formula: (and (= |v_main_#t~post5_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post5_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post5=|v_main_#t~post5_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post5] {1403#(= main_~t~0 (+ (* main_~a~0 2) 1))} is VALID [2022-04-07 21:09:57,430 INFO L290 TraceCheckUtils]: 5: Hoare triple {1298#true} [73] mainENTRY-->L30-3: Formula: (and (= v_main_~s~0_3 1) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (= v_main_~n~0_1 |v_main_#t~nondet4_2|) (= v_main_~t~0_3 1) (= v_main_~a~0_3 0)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~t~0=v_main_~t~0_3, main_~n~0=v_main_~n~0_1, main_~s~0=v_main_~s~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[main_#t~nondet4, main_~t~0, main_~n~0, main_~s~0, main_~a~0] {1403#(= main_~t~0 (+ (* main_~a~0 2) 1))} is VALID [2022-04-07 21:09:57,430 INFO L272 TraceCheckUtils]: 4: Hoare triple {1298#true} [70] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1298#true} is VALID [2022-04-07 21:09:57,430 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1298#true} {1298#true} [95] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1298#true} is VALID [2022-04-07 21:09:57,430 INFO L290 TraceCheckUtils]: 2: Hoare triple {1298#true} [74] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1298#true} is VALID [2022-04-07 21:09:57,430 INFO L290 TraceCheckUtils]: 1: Hoare triple {1298#true} [71] 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) (= (select |v_#length_1| 2) 11) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .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] {1298#true} is VALID [2022-04-07 21:09:57,430 INFO L272 TraceCheckUtils]: 0: Hoare triple {1298#true} [69] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1298#true} is VALID [2022-04-07 21:09:57,430 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-04-07 21:09:57,430 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 21:09:57,431 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1997282050] [2022-04-07 21:09:57,431 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 21:09:57,431 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [435178754] [2022-04-07 21:09:57,431 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [435178754] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-07 21:09:57,431 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-07 21:09:57,431 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [6] total 7 [2022-04-07 21:09:57,431 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1851877293] [2022-04-07 21:09:57,431 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 21:09:57,431 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 30 [2022-04-07 21:09:57,432 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 21:09:57,432 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-07 21:09:57,446 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 21:09:57,447 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-07 21:09:57,447 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 21:09:57,447 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-07 21:09:57,447 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-04-07 21:09:57,447 INFO L87 Difference]: Start difference. First operand 67 states and 85 transitions. Second operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-07 21:09:57,533 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 21:09:57,533 INFO L93 Difference]: Finished difference Result 79 states and 94 transitions. [2022-04-07 21:09:57,533 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-07 21:09:57,534 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 30 [2022-04-07 21:09:57,534 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 21:09:57,534 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-07 21:09:57,534 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 31 transitions. [2022-04-07 21:09:57,535 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-07 21:09:57,535 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 31 transitions. [2022-04-07 21:09:57,535 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 31 transitions. [2022-04-07 21:09:57,558 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 21:09:57,559 INFO L225 Difference]: With dead ends: 79 [2022-04-07 21:09:57,560 INFO L226 Difference]: Without dead ends: 79 [2022-04-07 21:09:57,560 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 60 GetRequests, 52 SyntacticMatches, 2 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-04-07 21:09:57,560 INFO L913 BasicCegarLoop]: 22 mSDtfsCounter, 7 mSDsluCounter, 40 mSDsCounter, 0 mSdLazyCounter, 33 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 62 SdHoareTripleChecker+Invalid, 34 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 33 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-07 21:09:57,560 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [9 Valid, 62 Invalid, 34 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 33 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-07 21:09:57,561 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 79 states. [2022-04-07 21:09:57,564 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 79 to 79. [2022-04-07 21:09:57,564 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 21:09:57,564 INFO L82 GeneralOperation]: Start isEquivalent. First operand 79 states. Second operand has 79 states, 45 states have (on average 1.1555555555555554) internal successors, (52), 48 states have internal predecessors, (52), 23 states have call successors, (23), 11 states have call predecessors, (23), 10 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-07 21:09:57,565 INFO L74 IsIncluded]: Start isIncluded. First operand 79 states. Second operand has 79 states, 45 states have (on average 1.1555555555555554) internal successors, (52), 48 states have internal predecessors, (52), 23 states have call successors, (23), 11 states have call predecessors, (23), 10 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-07 21:09:57,565 INFO L87 Difference]: Start difference. First operand 79 states. Second operand has 79 states, 45 states have (on average 1.1555555555555554) internal successors, (52), 48 states have internal predecessors, (52), 23 states have call successors, (23), 11 states have call predecessors, (23), 10 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-07 21:09:57,567 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 21:09:57,567 INFO L93 Difference]: Finished difference Result 79 states and 94 transitions. [2022-04-07 21:09:57,567 INFO L276 IsEmpty]: Start isEmpty. Operand 79 states and 94 transitions. [2022-04-07 21:09:57,567 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 21:09:57,567 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 21:09:57,568 INFO L74 IsIncluded]: Start isIncluded. First operand has 79 states, 45 states have (on average 1.1555555555555554) internal successors, (52), 48 states have internal predecessors, (52), 23 states have call successors, (23), 11 states have call predecessors, (23), 10 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) Second operand 79 states. [2022-04-07 21:09:57,568 INFO L87 Difference]: Start difference. First operand has 79 states, 45 states have (on average 1.1555555555555554) internal successors, (52), 48 states have internal predecessors, (52), 23 states have call successors, (23), 11 states have call predecessors, (23), 10 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) Second operand 79 states. [2022-04-07 21:09:57,570 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 21:09:57,570 INFO L93 Difference]: Finished difference Result 79 states and 94 transitions. [2022-04-07 21:09:57,570 INFO L276 IsEmpty]: Start isEmpty. Operand 79 states and 94 transitions. [2022-04-07 21:09:57,570 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 21:09:57,570 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 21:09:57,570 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 21:09:57,571 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 21:09:57,571 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 79 states, 45 states have (on average 1.1555555555555554) internal successors, (52), 48 states have internal predecessors, (52), 23 states have call successors, (23), 11 states have call predecessors, (23), 10 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-07 21:09:57,572 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 79 states to 79 states and 94 transitions. [2022-04-07 21:09:57,573 INFO L78 Accepts]: Start accepts. Automaton has 79 states and 94 transitions. Word has length 30 [2022-04-07 21:09:57,573 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 21:09:57,573 INFO L478 AbstractCegarLoop]: Abstraction has 79 states and 94 transitions. [2022-04-07 21:09:57,573 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-07 21:09:57,573 INFO L276 IsEmpty]: Start isEmpty. Operand 79 states and 94 transitions. [2022-04-07 21:09:57,573 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-04-07 21:09:57,573 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 21:09:57,573 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 21:09:57,593 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-07 21:09:57,795 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 21:09:57,795 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 21:09:57,796 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 21:09:57,796 INFO L85 PathProgramCache]: Analyzing trace with hash 888200606, now seen corresponding path program 2 times [2022-04-07 21:09:57,796 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 21:09:57,796 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [616198902] [2022-04-07 21:09:57,796 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 21:09:57,796 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 21:09:57,814 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 21:09:57,814 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1870638501] [2022-04-07 21:09:57,814 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-07 21:09:57,814 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 21:09:57,814 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 21:09:57,818 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 21:09:57,824 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-07 21:09:57,855 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-07 21:09:57,855 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-07 21:09:57,856 INFO L263 TraceCheckSpWp]: Trace formula consists of 119 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-07 21:09:57,861 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 21:09:57,862 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 21:09:58,012 INFO L272 TraceCheckUtils]: 0: Hoare triple {1802#true} [69] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1802#true} is VALID [2022-04-07 21:09:58,012 INFO L290 TraceCheckUtils]: 1: Hoare triple {1802#true} [71] 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) (= (select |v_#length_1| 2) 11) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .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] {1802#true} is VALID [2022-04-07 21:09:58,012 INFO L290 TraceCheckUtils]: 2: Hoare triple {1802#true} [74] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1802#true} is VALID [2022-04-07 21:09:58,012 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1802#true} {1802#true} [95] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1802#true} is VALID [2022-04-07 21:09:58,012 INFO L272 TraceCheckUtils]: 4: Hoare triple {1802#true} [70] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1802#true} is VALID [2022-04-07 21:09:58,013 INFO L290 TraceCheckUtils]: 5: Hoare triple {1802#true} [73] mainENTRY-->L30-3: Formula: (and (= v_main_~s~0_3 1) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (= v_main_~n~0_1 |v_main_#t~nondet4_2|) (= v_main_~t~0_3 1) (= v_main_~a~0_3 0)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~t~0=v_main_~t~0_3, main_~n~0=v_main_~n~0_1, main_~s~0=v_main_~s~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[main_#t~nondet4, main_~t~0, main_~n~0, main_~s~0, main_~a~0] {1822#(and (= main_~a~0 0) (= main_~t~0 1) (= main_~s~0 1))} is VALID [2022-04-07 21:09:58,013 INFO L290 TraceCheckUtils]: 6: Hoare triple {1822#(and (= main_~a~0 0) (= main_~t~0 1) (= main_~s~0 1))} [76] L30-3-->L30-1: Formula: (and (= |v_main_#t~post5_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post5_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post5=|v_main_#t~post5_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post5] {1822#(and (= main_~a~0 0) (= main_~t~0 1) (= main_~s~0 1))} is VALID [2022-04-07 21:09:58,013 INFO L290 TraceCheckUtils]: 7: Hoare triple {1822#(and (= main_~a~0 0) (= main_~t~0 1) (= main_~s~0 1))} [79] L30-1-->L31: Formula: (< |v_main_#t~post5_5| 20) InVars {main_#t~post5=|v_main_#t~post5_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post5] {1822#(and (= main_~a~0 0) (= main_~t~0 1) (= main_~s~0 1))} is VALID [2022-04-07 21:09:58,013 INFO L272 TraceCheckUtils]: 8: Hoare triple {1822#(and (= main_~a~0 0) (= main_~t~0 1) (= main_~s~0 1))} [82] L31-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~t~0_10 (+ (* 2 v_main_~a~0_10) 1)) 1 0)) InVars {main_~t~0=v_main_~t~0_10, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~a~0] {1802#true} is VALID [2022-04-07 21:09:58,014 INFO L290 TraceCheckUtils]: 9: Hoare triple {1802#true} [81] __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] {1802#true} is VALID [2022-04-07 21:09:58,014 INFO L290 TraceCheckUtils]: 10: Hoare triple {1802#true} [85] 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[] {1802#true} is VALID [2022-04-07 21:09:58,014 INFO L290 TraceCheckUtils]: 11: Hoare triple {1802#true} [90] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1802#true} is VALID [2022-04-07 21:09:58,014 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {1802#true} {1822#(and (= main_~a~0 0) (= main_~t~0 1) (= main_~s~0 1))} [96] __VERIFIER_assertEXIT-->L31-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~t~0_10 (+ (* 2 v_main_~a~0_10) 1)) 1 0)) InVars {main_~t~0=v_main_~t~0_10, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~a~0] {1822#(and (= main_~a~0 0) (= main_~t~0 1) (= main_~s~0 1))} is VALID [2022-04-07 21:09:58,015 INFO L272 TraceCheckUtils]: 13: Hoare triple {1822#(and (= main_~a~0 0) (= main_~t~0 1) (= main_~s~0 1))} [86] L31-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~s~0_11 (let ((.cse0 (+ 1 v_main_~a~0_11))) (* .cse0 .cse0))) 1 0)) InVars {main_~s~0=v_main_~s~0_11, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~s~0, main_~a~0] {1802#true} is VALID [2022-04-07 21:09:58,015 INFO L290 TraceCheckUtils]: 14: Hoare triple {1802#true} [81] __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] {1802#true} is VALID [2022-04-07 21:09:58,015 INFO L290 TraceCheckUtils]: 15: Hoare triple {1802#true} [85] 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[] {1802#true} is VALID [2022-04-07 21:09:58,015 INFO L290 TraceCheckUtils]: 16: Hoare triple {1802#true} [90] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1802#true} is VALID [2022-04-07 21:09:58,015 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {1802#true} {1822#(and (= main_~a~0 0) (= main_~t~0 1) (= main_~s~0 1))} [97] __VERIFIER_assertEXIT-->L32: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~s~0_11 (let ((.cse0 (+ 1 v_main_~a~0_11))) (* .cse0 .cse0))) 1 0)) InVars {main_~s~0=v_main_~s~0_11, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~s~0, main_~a~0] {1822#(and (= main_~a~0 0) (= main_~t~0 1) (= main_~s~0 1))} is VALID [2022-04-07 21:09:58,015 INFO L272 TraceCheckUtils]: 18: Hoare triple {1822#(and (= main_~a~0 0) (= main_~t~0 1) (= main_~s~0 1))} [91] L32-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~t~0_11 v_main_~t~0_11) (* v_main_~t~0_11 2) (* v_main_~s~0_12 (- 4)) 1) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_3|) InVars {main_~t~0=v_main_~t~0_11, main_~s~0=v_main_~s~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~s~0] {1802#true} is VALID [2022-04-07 21:09:58,015 INFO L290 TraceCheckUtils]: 19: Hoare triple {1802#true} [81] __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] {1802#true} is VALID [2022-04-07 21:09:58,016 INFO L290 TraceCheckUtils]: 20: Hoare triple {1802#true} [85] 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[] {1802#true} is VALID [2022-04-07 21:09:58,016 INFO L290 TraceCheckUtils]: 21: Hoare triple {1802#true} [90] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1802#true} is VALID [2022-04-07 21:09:58,016 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {1802#true} {1822#(and (= main_~a~0 0) (= main_~t~0 1) (= main_~s~0 1))} [98] __VERIFIER_assertEXIT-->L33: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* v_main_~t~0_11 v_main_~t~0_11) (* v_main_~t~0_11 2) (* v_main_~s~0_12 (- 4)) 1) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_3|) InVars {main_~t~0=v_main_~t~0_11, main_~s~0=v_main_~s~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~s~0] {1822#(and (= main_~a~0 0) (= main_~t~0 1) (= main_~s~0 1))} is VALID [2022-04-07 21:09:58,017 INFO L290 TraceCheckUtils]: 23: Hoare triple {1822#(and (= main_~a~0 0) (= main_~t~0 1) (= main_~s~0 1))} [94] L33-->L30-3: Formula: (and (= v_main_~t~0_8 (+ v_main_~t~0_9 2)) (<= v_main_~s~0_10 v_main_~n~0_5) (= v_main_~s~0_9 (+ v_main_~s~0_10 v_main_~t~0_8)) (= v_main_~a~0_8 (+ v_main_~a~0_9 1))) InVars {main_~t~0=v_main_~t~0_9, main_~n~0=v_main_~n~0_5, main_~s~0=v_main_~s~0_10, main_~a~0=v_main_~a~0_9} OutVars{main_~t~0=v_main_~t~0_8, main_~n~0=v_main_~n~0_5, main_~s~0=v_main_~s~0_9, main_~a~0=v_main_~a~0_8} AuxVars[] AssignedVars[main_~t~0, main_~s~0, main_~a~0] {1877#(and (= (+ (- 1) main_~a~0) 0) (= main_~s~0 4))} is VALID [2022-04-07 21:09:58,017 INFO L290 TraceCheckUtils]: 24: Hoare triple {1877#(and (= (+ (- 1) main_~a~0) 0) (= main_~s~0 4))} [76] L30-3-->L30-1: Formula: (and (= |v_main_#t~post5_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post5_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post5=|v_main_#t~post5_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post5] {1877#(and (= (+ (- 1) main_~a~0) 0) (= main_~s~0 4))} is VALID [2022-04-07 21:09:58,017 INFO L290 TraceCheckUtils]: 25: Hoare triple {1877#(and (= (+ (- 1) main_~a~0) 0) (= main_~s~0 4))} [79] L30-1-->L31: Formula: (< |v_main_#t~post5_5| 20) InVars {main_#t~post5=|v_main_#t~post5_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post5] {1877#(and (= (+ (- 1) main_~a~0) 0) (= main_~s~0 4))} is VALID [2022-04-07 21:09:58,018 INFO L272 TraceCheckUtils]: 26: Hoare triple {1877#(and (= (+ (- 1) main_~a~0) 0) (= main_~s~0 4))} [82] L31-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~t~0_10 (+ (* 2 v_main_~a~0_10) 1)) 1 0)) InVars {main_~t~0=v_main_~t~0_10, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~a~0] {1802#true} is VALID [2022-04-07 21:09:58,018 INFO L290 TraceCheckUtils]: 27: Hoare triple {1802#true} [81] __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] {1802#true} is VALID [2022-04-07 21:09:58,018 INFO L290 TraceCheckUtils]: 28: Hoare triple {1802#true} [85] 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[] {1802#true} is VALID [2022-04-07 21:09:58,018 INFO L290 TraceCheckUtils]: 29: Hoare triple {1802#true} [90] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1802#true} is VALID [2022-04-07 21:09:58,018 INFO L284 TraceCheckUtils]: 30: Hoare quadruple {1802#true} {1877#(and (= (+ (- 1) main_~a~0) 0) (= main_~s~0 4))} [96] __VERIFIER_assertEXIT-->L31-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~t~0_10 (+ (* 2 v_main_~a~0_10) 1)) 1 0)) InVars {main_~t~0=v_main_~t~0_10, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~a~0] {1877#(and (= (+ (- 1) main_~a~0) 0) (= main_~s~0 4))} is VALID [2022-04-07 21:09:58,019 INFO L272 TraceCheckUtils]: 31: Hoare triple {1877#(and (= (+ (- 1) main_~a~0) 0) (= main_~s~0 4))} [86] L31-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~s~0_11 (let ((.cse0 (+ 1 v_main_~a~0_11))) (* .cse0 .cse0))) 1 0)) InVars {main_~s~0=v_main_~s~0_11, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~s~0, main_~a~0] {1902#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 21:09:58,019 INFO L290 TraceCheckUtils]: 32: Hoare triple {1902#(<= 1 |__VERIFIER_assert_#in~cond|)} [81] __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] {1906#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 21:09:58,020 INFO L290 TraceCheckUtils]: 33: Hoare triple {1906#(<= 1 __VERIFIER_assert_~cond)} [84] 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[] {1803#false} is VALID [2022-04-07 21:09:58,020 INFO L290 TraceCheckUtils]: 34: Hoare triple {1803#false} [88] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1803#false} is VALID [2022-04-07 21:09:58,020 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 8 proven. 4 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-07 21:09:58,020 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 21:09:58,154 INFO L290 TraceCheckUtils]: 34: Hoare triple {1803#false} [88] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1803#false} is VALID [2022-04-07 21:09:58,155 INFO L290 TraceCheckUtils]: 33: Hoare triple {1906#(<= 1 __VERIFIER_assert_~cond)} [84] 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[] {1803#false} is VALID [2022-04-07 21:09:58,155 INFO L290 TraceCheckUtils]: 32: Hoare triple {1902#(<= 1 |__VERIFIER_assert_#in~cond|)} [81] __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] {1906#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 21:09:58,156 INFO L272 TraceCheckUtils]: 31: Hoare triple {1922#(= (+ (* main_~a~0 2) (* main_~a~0 main_~a~0) 1) main_~s~0)} [86] L31-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~s~0_11 (let ((.cse0 (+ 1 v_main_~a~0_11))) (* .cse0 .cse0))) 1 0)) InVars {main_~s~0=v_main_~s~0_11, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~s~0, main_~a~0] {1902#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 21:09:58,156 INFO L284 TraceCheckUtils]: 30: Hoare quadruple {1802#true} {1922#(= (+ (* main_~a~0 2) (* main_~a~0 main_~a~0) 1) main_~s~0)} [96] __VERIFIER_assertEXIT-->L31-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~t~0_10 (+ (* 2 v_main_~a~0_10) 1)) 1 0)) InVars {main_~t~0=v_main_~t~0_10, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~a~0] {1922#(= (+ (* main_~a~0 2) (* main_~a~0 main_~a~0) 1) main_~s~0)} is VALID [2022-04-07 21:09:58,156 INFO L290 TraceCheckUtils]: 29: Hoare triple {1802#true} [90] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1802#true} is VALID [2022-04-07 21:09:58,156 INFO L290 TraceCheckUtils]: 28: Hoare triple {1802#true} [85] 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[] {1802#true} is VALID [2022-04-07 21:09:58,157 INFO L290 TraceCheckUtils]: 27: Hoare triple {1802#true} [81] __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] {1802#true} is VALID [2022-04-07 21:09:58,157 INFO L272 TraceCheckUtils]: 26: Hoare triple {1922#(= (+ (* main_~a~0 2) (* main_~a~0 main_~a~0) 1) main_~s~0)} [82] L31-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~t~0_10 (+ (* 2 v_main_~a~0_10) 1)) 1 0)) InVars {main_~t~0=v_main_~t~0_10, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~a~0] {1802#true} is VALID [2022-04-07 21:09:58,157 INFO L290 TraceCheckUtils]: 25: Hoare triple {1922#(= (+ (* main_~a~0 2) (* main_~a~0 main_~a~0) 1) main_~s~0)} [79] L30-1-->L31: Formula: (< |v_main_#t~post5_5| 20) InVars {main_#t~post5=|v_main_#t~post5_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post5] {1922#(= (+ (* main_~a~0 2) (* main_~a~0 main_~a~0) 1) main_~s~0)} is VALID [2022-04-07 21:09:58,157 INFO L290 TraceCheckUtils]: 24: Hoare triple {1922#(= (+ (* main_~a~0 2) (* main_~a~0 main_~a~0) 1) main_~s~0)} [76] L30-3-->L30-1: Formula: (and (= |v_main_#t~post5_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post5_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post5=|v_main_#t~post5_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post5] {1922#(= (+ (* main_~a~0 2) (* main_~a~0 main_~a~0) 1) main_~s~0)} is VALID [2022-04-07 21:09:58,186 INFO L290 TraceCheckUtils]: 23: Hoare triple {1947#(= (+ (* (+ main_~a~0 1) (+ main_~a~0 1)) (* main_~a~0 2) 3) (+ main_~t~0 main_~s~0 2))} [94] L33-->L30-3: Formula: (and (= v_main_~t~0_8 (+ v_main_~t~0_9 2)) (<= v_main_~s~0_10 v_main_~n~0_5) (= v_main_~s~0_9 (+ v_main_~s~0_10 v_main_~t~0_8)) (= v_main_~a~0_8 (+ v_main_~a~0_9 1))) InVars {main_~t~0=v_main_~t~0_9, main_~n~0=v_main_~n~0_5, main_~s~0=v_main_~s~0_10, main_~a~0=v_main_~a~0_9} OutVars{main_~t~0=v_main_~t~0_8, main_~n~0=v_main_~n~0_5, main_~s~0=v_main_~s~0_9, main_~a~0=v_main_~a~0_8} AuxVars[] AssignedVars[main_~t~0, main_~s~0, main_~a~0] {1922#(= (+ (* main_~a~0 2) (* main_~a~0 main_~a~0) 1) main_~s~0)} is VALID [2022-04-07 21:09:58,187 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {1802#true} {1947#(= (+ (* (+ main_~a~0 1) (+ main_~a~0 1)) (* main_~a~0 2) 3) (+ main_~t~0 main_~s~0 2))} [98] __VERIFIER_assertEXIT-->L33: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* v_main_~t~0_11 v_main_~t~0_11) (* v_main_~t~0_11 2) (* v_main_~s~0_12 (- 4)) 1) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_3|) InVars {main_~t~0=v_main_~t~0_11, main_~s~0=v_main_~s~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~s~0] {1947#(= (+ (* (+ main_~a~0 1) (+ main_~a~0 1)) (* main_~a~0 2) 3) (+ main_~t~0 main_~s~0 2))} is VALID [2022-04-07 21:09:58,187 INFO L290 TraceCheckUtils]: 21: Hoare triple {1802#true} [90] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1802#true} is VALID [2022-04-07 21:09:58,187 INFO L290 TraceCheckUtils]: 20: Hoare triple {1802#true} [85] 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[] {1802#true} is VALID [2022-04-07 21:09:58,187 INFO L290 TraceCheckUtils]: 19: Hoare triple {1802#true} [81] __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] {1802#true} is VALID [2022-04-07 21:09:58,187 INFO L272 TraceCheckUtils]: 18: Hoare triple {1947#(= (+ (* (+ main_~a~0 1) (+ main_~a~0 1)) (* main_~a~0 2) 3) (+ main_~t~0 main_~s~0 2))} [91] L32-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~t~0_11 v_main_~t~0_11) (* v_main_~t~0_11 2) (* v_main_~s~0_12 (- 4)) 1) 0) 1 0) |v___VERIFIER_assert_#in~condInParam_3|) InVars {main_~t~0=v_main_~t~0_11, main_~s~0=v_main_~s~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~s~0] {1802#true} is VALID [2022-04-07 21:09:58,189 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {1802#true} {1947#(= (+ (* (+ main_~a~0 1) (+ main_~a~0 1)) (* main_~a~0 2) 3) (+ main_~t~0 main_~s~0 2))} [97] __VERIFIER_assertEXIT-->L32: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~s~0_11 (let ((.cse0 (+ 1 v_main_~a~0_11))) (* .cse0 .cse0))) 1 0)) InVars {main_~s~0=v_main_~s~0_11, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~s~0, main_~a~0] {1947#(= (+ (* (+ main_~a~0 1) (+ main_~a~0 1)) (* main_~a~0 2) 3) (+ main_~t~0 main_~s~0 2))} is VALID [2022-04-07 21:09:58,189 INFO L290 TraceCheckUtils]: 16: Hoare triple {1802#true} [90] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1802#true} is VALID [2022-04-07 21:09:58,189 INFO L290 TraceCheckUtils]: 15: Hoare triple {1802#true} [85] 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[] {1802#true} is VALID [2022-04-07 21:09:58,189 INFO L290 TraceCheckUtils]: 14: Hoare triple {1802#true} [81] __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] {1802#true} is VALID [2022-04-07 21:09:58,189 INFO L272 TraceCheckUtils]: 13: Hoare triple {1947#(= (+ (* (+ main_~a~0 1) (+ main_~a~0 1)) (* main_~a~0 2) 3) (+ main_~t~0 main_~s~0 2))} [86] L31-1-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= v_main_~s~0_11 (let ((.cse0 (+ 1 v_main_~a~0_11))) (* .cse0 .cse0))) 1 0)) InVars {main_~s~0=v_main_~s~0_11, main_~a~0=v_main_~a~0_11} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~s~0, main_~a~0] {1802#true} is VALID [2022-04-07 21:09:58,189 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {1802#true} {1947#(= (+ (* (+ main_~a~0 1) (+ main_~a~0 1)) (* main_~a~0 2) 3) (+ main_~t~0 main_~s~0 2))} [96] __VERIFIER_assertEXIT-->L31-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~t~0_10 (+ (* 2 v_main_~a~0_10) 1)) 1 0)) InVars {main_~t~0=v_main_~t~0_10, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~a~0] {1947#(= (+ (* (+ main_~a~0 1) (+ main_~a~0 1)) (* main_~a~0 2) 3) (+ main_~t~0 main_~s~0 2))} is VALID [2022-04-07 21:09:58,190 INFO L290 TraceCheckUtils]: 11: Hoare triple {1802#true} [90] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1802#true} is VALID [2022-04-07 21:09:58,190 INFO L290 TraceCheckUtils]: 10: Hoare triple {1802#true} [85] 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[] {1802#true} is VALID [2022-04-07 21:09:58,190 INFO L290 TraceCheckUtils]: 9: Hoare triple {1802#true} [81] __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] {1802#true} is VALID [2022-04-07 21:09:58,190 INFO L272 TraceCheckUtils]: 8: Hoare triple {1947#(= (+ (* (+ main_~a~0 1) (+ main_~a~0 1)) (* main_~a~0 2) 3) (+ main_~t~0 main_~s~0 2))} [82] L31-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= v_main_~t~0_10 (+ (* 2 v_main_~a~0_10) 1)) 1 0)) InVars {main_~t~0=v_main_~t~0_10, main_~a~0=v_main_~a~0_10} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~t~0, main_~a~0] {1802#true} is VALID [2022-04-07 21:09:58,190 INFO L290 TraceCheckUtils]: 7: Hoare triple {1947#(= (+ (* (+ main_~a~0 1) (+ main_~a~0 1)) (* main_~a~0 2) 3) (+ main_~t~0 main_~s~0 2))} [79] L30-1-->L31: Formula: (< |v_main_#t~post5_5| 20) InVars {main_#t~post5=|v_main_#t~post5_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post5] {1947#(= (+ (* (+ main_~a~0 1) (+ main_~a~0 1)) (* main_~a~0 2) 3) (+ main_~t~0 main_~s~0 2))} is VALID [2022-04-07 21:09:58,191 INFO L290 TraceCheckUtils]: 6: Hoare triple {1947#(= (+ (* (+ main_~a~0 1) (+ main_~a~0 1)) (* main_~a~0 2) 3) (+ main_~t~0 main_~s~0 2))} [76] L30-3-->L30-1: Formula: (and (= |v_main_#t~post5_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post5_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post5=|v_main_#t~post5_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post5] {1947#(= (+ (* (+ main_~a~0 1) (+ main_~a~0 1)) (* main_~a~0 2) 3) (+ main_~t~0 main_~s~0 2))} is VALID [2022-04-07 21:09:58,191 INFO L290 TraceCheckUtils]: 5: Hoare triple {1802#true} [73] mainENTRY-->L30-3: Formula: (and (= v_main_~s~0_3 1) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (= v_main_~n~0_1 |v_main_#t~nondet4_2|) (= v_main_~t~0_3 1) (= v_main_~a~0_3 0)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~t~0=v_main_~t~0_3, main_~n~0=v_main_~n~0_1, main_~s~0=v_main_~s~0_3, main_~a~0=v_main_~a~0_3} AuxVars[] AssignedVars[main_#t~nondet4, main_~t~0, main_~n~0, main_~s~0, main_~a~0] {1947#(= (+ (* (+ main_~a~0 1) (+ main_~a~0 1)) (* main_~a~0 2) 3) (+ main_~t~0 main_~s~0 2))} is VALID [2022-04-07 21:09:58,191 INFO L272 TraceCheckUtils]: 4: Hoare triple {1802#true} [70] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1802#true} is VALID [2022-04-07 21:09:58,191 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1802#true} {1802#true} [95] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1802#true} is VALID [2022-04-07 21:09:58,191 INFO L290 TraceCheckUtils]: 2: Hoare triple {1802#true} [74] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1802#true} is VALID [2022-04-07 21:09:58,191 INFO L290 TraceCheckUtils]: 1: Hoare triple {1802#true} [71] 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) (= (select |v_#length_1| 2) 11) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .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] {1802#true} is VALID [2022-04-07 21:09:58,192 INFO L272 TraceCheckUtils]: 0: Hoare triple {1802#true} [69] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1802#true} is VALID [2022-04-07 21:09:58,192 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 8 proven. 4 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-07 21:09:58,192 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 21:09:58,192 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [616198902] [2022-04-07 21:09:58,192 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 21:09:58,192 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1870638501] [2022-04-07 21:09:58,192 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1870638501] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 21:09:58,192 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 21:09:58,192 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 8 [2022-04-07 21:09:58,192 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1855296225] [2022-04-07 21:09:58,192 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 21:09:58,193 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 5 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) Word has length 35 [2022-04-07 21:09:58,193 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 21:09:58,193 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 5 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-07 21:09:58,230 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 21:09:58,231 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-07 21:09:58,231 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 21:09:58,231 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-07 21:09:58,231 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=40, Unknown=0, NotChecked=0, Total=56 [2022-04-07 21:09:58,231 INFO L87 Difference]: Start difference. First operand 79 states and 94 transitions. Second operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 5 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-07 21:09:58,597 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 21:09:58,598 INFO L93 Difference]: Finished difference Result 77 states and 90 transitions. [2022-04-07 21:09:58,598 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-07 21:09:58,598 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 5 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) Word has length 35 [2022-04-07 21:09:58,598 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 21:09:58,598 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 5 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-07 21:09:58,599 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 50 transitions. [2022-04-07 21:09:58,599 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 5 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-07 21:09:58,600 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 50 transitions. [2022-04-07 21:09:58,600 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 50 transitions. [2022-04-07 21:09:58,644 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 21:09:58,644 INFO L225 Difference]: With dead ends: 77 [2022-04-07 21:09:58,644 INFO L226 Difference]: Without dead ends: 0 [2022-04-07 21:09:58,644 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 72 GetRequests, 62 SyntacticMatches, 1 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=31, Invalid=79, Unknown=0, NotChecked=0, Total=110 [2022-04-07 21:09:58,645 INFO L913 BasicCegarLoop]: 21 mSDtfsCounter, 12 mSDsluCounter, 46 mSDsCounter, 0 mSdLazyCounter, 116 mSolverCounterSat, 34 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 12 SdHoareTripleChecker+Valid, 67 SdHoareTripleChecker+Invalid, 150 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 34 IncrementalHoareTripleChecker+Valid, 116 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-07 21:09:58,645 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [12 Valid, 67 Invalid, 150 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [34 Valid, 116 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-07 21:09:58,645 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-07 21:09:58,645 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-07 21:09:58,645 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 21:09:58,645 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-07 21:09:58,645 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-07 21:09:58,645 INFO L87 Difference]: Start difference. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-07 21:09:58,645 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 21:09:58,645 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-07 21:09:58,645 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 21:09:58,646 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 21:09:58,646 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 21:09:58,646 INFO L74 IsIncluded]: Start isIncluded. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-07 21:09:58,646 INFO L87 Difference]: Start difference. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-07 21:09:58,646 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 21:09:58,646 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-07 21:09:58,646 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 21:09:58,646 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 21:09:58,646 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 21:09:58,646 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 21:09:58,646 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 21:09:58,646 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-07 21:09:58,646 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-07 21:09:58,646 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 35 [2022-04-07 21:09:58,646 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 21:09:58,646 INFO L478 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-07 21:09:58,647 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.5) internal successors, (20), 7 states have internal predecessors, (20), 5 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (9), 5 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-07 21:09:58,647 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 21:09:58,647 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 21:09:58,649 INFO L788 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-07 21:09:58,665 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-07 21:09:58,863 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 21:09:58,866 INFO L719 BasicCegarLoop]: Path program histogram: [2, 1, 1, 1, 1, 1, 1] [2022-04-07 21:09:58,866 INFO L178 ceAbstractionStarter]: Computing trace abstraction results [2022-04-07 21:09:58,868 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 07.04 09:09:58 BasicIcfg [2022-04-07 21:09:58,868 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-07 21:09:58,869 INFO L158 Benchmark]: Toolchain (without parser) took 5934.79ms. Allocated memory was 195.0MB in the beginning and 249.6MB in the end (delta: 54.5MB). Free memory was 145.1MB in the beginning and 165.8MB in the end (delta: -20.7MB). Peak memory consumption was 33.6MB. Max. memory is 8.0GB. [2022-04-07 21:09:58,869 INFO L158 Benchmark]: CDTParser took 0.10ms. Allocated memory is still 195.0MB. Free memory was 161.5MB in the beginning and 161.4MB in the end (delta: 75.0kB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-07 21:09:58,869 INFO L158 Benchmark]: CACSL2BoogieTranslator took 185.32ms. Allocated memory is still 195.0MB. Free memory was 144.9MB in the beginning and 170.0MB in the end (delta: -25.2MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-07 21:09:58,869 INFO L158 Benchmark]: Boogie Preprocessor took 21.62ms. Allocated memory is still 195.0MB. Free memory was 170.0MB in the beginning and 168.4MB in the end (delta: 1.6MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-07 21:09:58,870 INFO L158 Benchmark]: RCFGBuilder took 262.01ms. Allocated memory is still 195.0MB. Free memory was 168.4MB in the beginning and 157.4MB in the end (delta: 11.0MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-07 21:09:58,870 INFO L158 Benchmark]: IcfgTransformer took 28.29ms. Allocated memory is still 195.0MB. Free memory was 157.2MB in the beginning and 155.9MB in the end (delta: 1.3MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-07 21:09:58,870 INFO L158 Benchmark]: TraceAbstraction took 5433.47ms. Allocated memory was 195.0MB in the beginning and 249.6MB in the end (delta: 54.5MB). Free memory was 155.4MB in the beginning and 165.8MB in the end (delta: -10.4MB). Peak memory consumption was 45.7MB. Max. memory is 8.0GB. [2022-04-07 21:09:58,871 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.10ms. Allocated memory is still 195.0MB. Free memory was 161.5MB in the beginning and 161.4MB in the end (delta: 75.0kB). There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 185.32ms. Allocated memory is still 195.0MB. Free memory was 144.9MB in the beginning and 170.0MB in the end (delta: -25.2MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * Boogie Preprocessor took 21.62ms. Allocated memory is still 195.0MB. Free memory was 170.0MB in the beginning and 168.4MB in the end (delta: 1.6MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 262.01ms. Allocated memory is still 195.0MB. Free memory was 168.4MB in the beginning and 157.4MB in the end (delta: 11.0MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * IcfgTransformer took 28.29ms. Allocated memory is still 195.0MB. Free memory was 157.2MB in the beginning and 155.9MB in the end (delta: 1.3MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * TraceAbstraction took 5433.47ms. Allocated memory was 195.0MB in the beginning and 249.6MB in the end (delta: 54.5MB). Free memory was 155.4MB in the beginning and 165.8MB in the end (delta: -10.4MB). Peak memory consumption was 45.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 - PositiveResult [Line: 14]: call to reach_error is unreachable For all program executions holds that call to reach_error is unreachable at this location - StatisticsResult: Ultimate Automizer benchmark data CFG has 4 procedures, 26 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 5.4s, OverallIterations: 8, TraceHistogramMax: 5, PathProgramHistogramMax: 2, EmptinessCheckTime: 0.0s, AutomataDifference: 1.9s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 122 SdHoareTripleChecker+Valid, 0.5s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 108 mSDsluCounter, 562 SdHoareTripleChecker+Invalid, 0.5s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 338 mSDsCounter, 93 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 416 IncrementalHoareTripleChecker+Invalid, 509 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 93 mSolverCounterUnsat, 224 mSDtfsCounter, 416 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 255 GetRequests, 207 SyntacticMatches, 3 SemanticMatches, 45 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 16 ImplicationChecksByTransitivity, 0.2s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=79occurred in iteration=7, InterpolantAutomatonStates: 49, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.1s AutomataMinimizationTime, 8 MinimizatonAttempts, 8 StatesRemovedByMinimization, 4 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 1.5s InterpolantComputationTime, 169 NumberOfCodeBlocks, 169 NumberOfCodeBlocksAsserted, 9 NumberOfCheckSat, 253 ConstructedInterpolants, 0 QuantifiedInterpolants, 822 SizeOfPredicates, 7 NumberOfNonLiveVariables, 508 ConjunctsInSsa, 47 ConjunctsInUnsatCore, 11 InterpolantComputations, 6 PerfectInterpolantSequences, 149/164 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold RESULT: Ultimate proved your program to be correct! [2022-04-07 21:09:58,881 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 0 Received shutdown request...