/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/ps4-ll_valuebound5.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-e106359-m [2022-04-14 23:00:17,246 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-14 23:00:17,247 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-14 23:00:17,266 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-14 23:00:17,266 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-14 23:00:17,268 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-14 23:00:17,271 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-14 23:00:17,276 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-14 23:00:17,276 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-14 23:00:17,277 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-14 23:00:17,277 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-14 23:00:17,279 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-14 23:00:17,279 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-14 23:00:17,282 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-14 23:00:17,283 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-14 23:00:17,283 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-14 23:00:17,284 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-14 23:00:17,284 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-14 23:00:17,285 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-14 23:00:17,286 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-14 23:00:17,287 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-14 23:00:17,287 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-14 23:00:17,288 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-14 23:00:17,289 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-14 23:00:17,289 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-14 23:00:17,294 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-14 23:00:17,294 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-14 23:00:17,294 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-14 23:00:17,295 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-14 23:00:17,295 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-14 23:00:17,295 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-14 23:00:17,295 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-14 23:00:17,296 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-14 23:00:17,296 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-14 23:00:17,297 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-14 23:00:17,297 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-14 23:00:17,297 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-14 23:00:17,298 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-14 23:00:17,298 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-14 23:00:17,298 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-14 23:00:17,298 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-14 23:00:17,304 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-14 23:00:17,304 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/LoopAccelerationJordanC.epf [2022-04-14 23:00:17,315 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-14 23:00:17,315 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-14 23:00:17,316 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-14 23:00:17,316 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-14 23:00:17,316 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-14 23:00:17,316 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-14 23:00:17,316 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-14 23:00:17,316 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-14 23:00:17,316 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-14 23:00:17,317 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-14 23:00:17,317 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-14 23:00:17,317 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-14 23:00:17,317 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-14 23:00:17,317 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-14 23:00:17,317 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-14 23:00:17,317 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-14 23:00:17,317 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-14 23:00:17,317 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-14 23:00:17,317 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-14 23:00:17,317 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-14 23:00:17,318 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-14 23:00:17,318 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-14 23:00:17,318 INFO L138 SettingsManager]: * TransformationType=LOOP_ACCELERATION_JORDAN WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-14 23:00:17,490 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-14 23:00:17,504 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-14 23:00:17,505 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-14 23:00:17,506 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-14 23:00:17,507 INFO L275 PluginConnector]: CDTParser initialized [2022-04-14 23:00:17,507 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/ps4-ll_valuebound5.c [2022-04-14 23:00:17,558 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/19a881460/dedd3634931f45ceb9a11085867e349e/FLAG6253a049e [2022-04-14 23:00:17,896 INFO L306 CDTParser]: Found 1 translation units. [2022-04-14 23:00:17,897 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/ps4-ll_valuebound5.c [2022-04-14 23:00:17,900 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/19a881460/dedd3634931f45ceb9a11085867e349e/FLAG6253a049e [2022-04-14 23:00:18,343 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/19a881460/dedd3634931f45ceb9a11085867e349e [2022-04-14 23:00:18,345 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-14 23:00:18,346 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-14 23:00:18,347 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-14 23:00:18,347 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-14 23:00:18,358 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-14 23:00:18,359 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.04 11:00:18" (1/1) ... [2022-04-14 23:00:18,359 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@3957fff9 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 11:00:18, skipping insertion in model container [2022-04-14 23:00:18,359 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.04 11:00:18" (1/1) ... [2022-04-14 23:00:18,363 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-14 23:00:18,384 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-14 23:00:18,488 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/ps4-ll_valuebound5.c[458,471] [2022-04-14 23:00:18,506 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-14 23:00:18,512 INFO L203 MainTranslator]: Completed pre-run [2022-04-14 23:00:18,519 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/ps4-ll_valuebound5.c[458,471] [2022-04-14 23:00:18,528 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-14 23:00:18,536 INFO L208 MainTranslator]: Completed translation [2022-04-14 23:00:18,536 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 11:00:18 WrapperNode [2022-04-14 23:00:18,536 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-14 23:00:18,537 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-14 23:00:18,537 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-14 23:00:18,537 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-14 23:00:18,546 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 11:00:18" (1/1) ... [2022-04-14 23:00:18,546 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 11:00:18" (1/1) ... [2022-04-14 23:00:18,550 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 11:00:18" (1/1) ... [2022-04-14 23:00:18,550 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 11:00:18" (1/1) ... [2022-04-14 23:00:18,568 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 11:00:18" (1/1) ... [2022-04-14 23:00:18,572 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 11:00:18" (1/1) ... [2022-04-14 23:00:18,573 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 11:00:18" (1/1) ... [2022-04-14 23:00:18,574 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-14 23:00:18,574 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-14 23:00:18,574 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-14 23:00:18,574 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-14 23:00:18,576 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 11:00:18" (1/1) ... [2022-04-14 23:00:18,581 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-14 23:00:18,591 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 23:00:18,599 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-14 23:00:18,600 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-14 23:00:18,628 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-14 23:00:18,628 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-14 23:00:18,629 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-14 23:00:18,629 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-14 23:00:18,629 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-14 23:00:18,629 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-14 23:00:18,629 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-14 23:00:18,629 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-14 23:00:18,629 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-14 23:00:18,630 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-14 23:00:18,630 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_short [2022-04-14 23:00:18,630 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-14 23:00:18,631 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-14 23:00:18,631 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-14 23:00:18,631 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-14 23:00:18,633 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-14 23:00:18,633 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-14 23:00:18,633 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-14 23:00:18,633 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-14 23:00:18,633 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-14 23:00:18,680 INFO L234 CfgBuilder]: Building ICFG [2022-04-14 23:00:18,681 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-14 23:00:18,801 INFO L275 CfgBuilder]: Performing block encoding [2022-04-14 23:00:18,805 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-14 23:00:18,805 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-14 23:00:18,807 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 11:00:18 BoogieIcfgContainer [2022-04-14 23:00:18,807 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-14 23:00:18,807 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-14 23:00:18,807 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-14 23:00:18,811 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-14 23:00:18,813 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 11:00:18" (1/1) ... [2022-04-14 23:00:18,815 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_JORDAN [2022-04-14 23:00:18,839 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 14.04 11:00:18 BasicIcfg [2022-04-14 23:00:18,839 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-14 23:00:18,851 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-14 23:00:18,852 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-14 23:00:18,855 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-14 23:00:18,855 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 14.04 11:00:18" (1/4) ... [2022-04-14 23:00:18,855 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@393080de and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.04 11:00:18, skipping insertion in model container [2022-04-14 23:00:18,855 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 11:00:18" (2/4) ... [2022-04-14 23:00:18,856 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@393080de and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.04 11:00:18, skipping insertion in model container [2022-04-14 23:00:18,856 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 11:00:18" (3/4) ... [2022-04-14 23:00:18,856 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@393080de and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 14.04 11:00:18, skipping insertion in model container [2022-04-14 23:00:18,856 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 14.04 11:00:18" (4/4) ... [2022-04-14 23:00:18,857 INFO L111 eAbstractionObserver]: Analyzing ICFG ps4-ll_valuebound5.cJordan [2022-04-14 23:00:18,860 INFO L202 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:ForwardPredicates Determinization: PREDICATE_ABSTRACTION [2022-04-14 23:00:18,860 INFO L161 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-14 23:00:18,887 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-14 23:00:18,893 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=ForwardPredicates, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=false, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP [2022-04-14 23:00:18,894 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-14 23:00:18,917 INFO L276 IsEmpty]: Start isEmpty. Operand has 28 states, 16 states have (on average 1.375) internal successors, (22), 17 states have internal predecessors, (22), 6 states have call successors, (6), 4 states have call predecessors, (6), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-14 23:00:18,924 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-04-14 23:00:18,924 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 23:00:18,925 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 23:00:18,925 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 23:00:18,932 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 23:00:18,933 INFO L85 PathProgramCache]: Analyzing trace with hash -1885409022, now seen corresponding path program 1 times [2022-04-14 23:00:18,939 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 23:00:18,939 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [89040969] [2022-04-14 23:00:18,939 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 23:00:18,940 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 23:00:19,031 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 23:00:19,086 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-14 23:00:19,099 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 23:00:19,112 INFO L290 TraceCheckUtils]: 0: Hoare triple {40#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [65] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 2) 9) (= (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{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {31#true} is VALID [2022-04-14 23:00:19,113 INFO L290 TraceCheckUtils]: 1: Hoare triple {31#true} [68] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {31#true} is VALID [2022-04-14 23:00:19,113 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {31#true} {31#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {31#true} is VALID [2022-04-14 23:00:19,114 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-14 23:00:19,118 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 23:00:19,125 INFO L290 TraceCheckUtils]: 0: Hoare triple {31#true} [71] assume_abort_if_notENTRY-->L7: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {31#true} is VALID [2022-04-14 23:00:19,126 INFO L290 TraceCheckUtils]: 1: Hoare triple {31#true} [75] L7-->L7-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {32#false} is VALID [2022-04-14 23:00:19,126 INFO L290 TraceCheckUtils]: 2: Hoare triple {32#false} [79] L7-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32#false} is VALID [2022-04-14 23:00:19,126 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {32#false} {31#true} [92] assume_abort_if_notEXIT-->L21-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~k~0_8) (<= v_main_~k~0_8 5)) 1 0)) InVars {main_~k~0=v_main_~k~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~k~0, assume_abort_if_not_#in~cond] {32#false} is VALID [2022-04-14 23:00:19,133 INFO L272 TraceCheckUtils]: 0: Hoare triple {31#true} [63] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {40#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-14 23:00:19,134 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [65] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 2) 9) (= (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{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {31#true} is VALID [2022-04-14 23:00:19,134 INFO L290 TraceCheckUtils]: 2: Hoare triple {31#true} [68] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {31#true} is VALID [2022-04-14 23:00:19,134 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {31#true} {31#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {31#true} is VALID [2022-04-14 23:00:19,134 INFO L272 TraceCheckUtils]: 4: Hoare triple {31#true} [64] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {31#true} is VALID [2022-04-14 23:00:19,134 INFO L290 TraceCheckUtils]: 5: Hoare triple {31#true} [67] mainENTRY-->L21: Formula: (and (<= |v_main_#t~nondet4_2| 32767) (<= 0 (+ |v_main_#t~nondet4_2| 32768)) (= v_main_~k~0_1 |v_main_#t~nondet4_2|)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~c~0=v_main_~c~0_1, main_~y~0=v_main_~y~0_2, main_~x~0=v_main_~x~0_2, main_~k~0=v_main_~k~0_1} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~k~0, main_~c~0, main_~y~0] {31#true} is VALID [2022-04-14 23:00:19,135 INFO L272 TraceCheckUtils]: 6: Hoare triple {31#true} [69] L21-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~k~0_8) (<= v_main_~k~0_8 5)) 1 0)) InVars {main_~k~0=v_main_~k~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~k~0, assume_abort_if_not_#in~cond] {31#true} is VALID [2022-04-14 23:00:19,135 INFO L290 TraceCheckUtils]: 7: Hoare triple {31#true} [71] assume_abort_if_notENTRY-->L7: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {31#true} is VALID [2022-04-14 23:00:19,136 INFO L290 TraceCheckUtils]: 8: Hoare triple {31#true} [75] L7-->L7-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {32#false} is VALID [2022-04-14 23:00:19,136 INFO L290 TraceCheckUtils]: 9: Hoare triple {32#false} [79] L7-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32#false} is VALID [2022-04-14 23:00:19,136 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {32#false} {31#true} [92] assume_abort_if_notEXIT-->L21-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~k~0_8) (<= v_main_~k~0_8 5)) 1 0)) InVars {main_~k~0=v_main_~k~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~k~0, assume_abort_if_not_#in~cond] {32#false} is VALID [2022-04-14 23:00:19,138 INFO L290 TraceCheckUtils]: 11: Hoare triple {32#false} [70] L21-1-->L27-2: Formula: (and (= v_main_~c~0_2 0) (= v_main_~y~0_3 0) (= v_main_~x~0_3 0)) InVars {} OutVars{main_~c~0=v_main_~c~0_2, main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3} AuxVars[] AssignedVars[main_~x~0, main_~c~0, main_~y~0] {32#false} is VALID [2022-04-14 23:00:19,138 INFO L290 TraceCheckUtils]: 12: Hoare triple {32#false} [72] L27-2-->L27-3: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {32#false} is VALID [2022-04-14 23:00:19,138 INFO L272 TraceCheckUtils]: 13: Hoare triple {32#false} [77] L27-3-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= (+ (* v_main_~k~0_9 v_main_~y~0_9) (* (- 1) (* v_main_~y~0_9 v_main_~y~0_9))) 0) 1 0)) InVars {main_~y~0=v_main_~y~0_9, main_~k~0=v_main_~k~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~k~0, main_~y~0] {32#false} is VALID [2022-04-14 23:00:19,138 INFO L290 TraceCheckUtils]: 14: Hoare triple {32#false} [81] __VERIFIER_assertENTRY-->L10: 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] {32#false} is VALID [2022-04-14 23:00:19,138 INFO L290 TraceCheckUtils]: 15: Hoare triple {32#false} [85] L10-->L11: 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[] {32#false} is VALID [2022-04-14 23:00:19,139 INFO L290 TraceCheckUtils]: 16: Hoare triple {32#false} [88] L11-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32#false} is VALID [2022-04-14 23:00:19,139 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-14 23:00:19,139 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 23:00:19,140 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [89040969] [2022-04-14 23:00:19,141 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [89040969] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 23:00:19,141 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 23:00:19,141 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-14 23:00:19,143 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [63566428] [2022-04-14 23:00:19,144 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 23:00:19,147 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 17 [2022-04-14 23:00:19,149 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 23:00:19,151 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-14 23:00:19,176 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-14 23:00:19,176 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-14 23:00:19,176 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 23:00:19,194 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-14 23:00:19,195 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-14 23:00:19,197 INFO L87 Difference]: Start difference. First operand has 28 states, 16 states have (on average 1.375) internal successors, (22), 17 states have internal predecessors, (22), 6 states have call successors, (6), 4 states have call predecessors, (6), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-14 23:00:19,285 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 23:00:19,285 INFO L93 Difference]: Finished difference Result 28 states and 30 transitions. [2022-04-14 23:00:19,285 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-14 23:00:19,286 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 17 [2022-04-14 23:00:19,287 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 23:00:19,288 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-14 23:00:19,294 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 34 transitions. [2022-04-14 23:00:19,295 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-14 23:00:19,301 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 34 transitions. [2022-04-14 23:00:19,302 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 34 transitions. [2022-04-14 23:00:19,340 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 23:00:19,347 INFO L225 Difference]: With dead ends: 28 [2022-04-14 23:00:19,347 INFO L226 Difference]: Without dead ends: 23 [2022-04-14 23:00:19,348 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 6 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-14 23:00:19,352 INFO L913 BasicCegarLoop]: 26 mSDtfsCounter, 15 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 6 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 19 SdHoareTripleChecker+Valid, 29 SdHoareTripleChecker+Invalid, 11 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 6 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-14 23:00:19,354 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [19 Valid, 29 Invalid, 11 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 6 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-14 23:00:19,364 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 23 states. [2022-04-14 23:00:19,374 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 23 to 23. [2022-04-14 23:00:19,374 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 23:00:19,375 INFO L82 GeneralOperation]: Start isEquivalent. First operand 23 states. Second operand has 23 states, 13 states have (on average 1.1538461538461537) internal successors, (15), 14 states have internal predecessors, (15), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-14 23:00:19,375 INFO L74 IsIncluded]: Start isIncluded. First operand 23 states. Second operand has 23 states, 13 states have (on average 1.1538461538461537) internal successors, (15), 14 states have internal predecessors, (15), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-14 23:00:19,376 INFO L87 Difference]: Start difference. First operand 23 states. Second operand has 23 states, 13 states have (on average 1.1538461538461537) internal successors, (15), 14 states have internal predecessors, (15), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-14 23:00:19,383 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 23:00:19,383 INFO L93 Difference]: Finished difference Result 23 states and 25 transitions. [2022-04-14 23:00:19,383 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 25 transitions. [2022-04-14 23:00:19,383 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 23:00:19,383 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 23:00:19,384 INFO L74 IsIncluded]: Start isIncluded. First operand has 23 states, 13 states have (on average 1.1538461538461537) internal successors, (15), 14 states have internal predecessors, (15), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 23 states. [2022-04-14 23:00:19,384 INFO L87 Difference]: Start difference. First operand has 23 states, 13 states have (on average 1.1538461538461537) internal successors, (15), 14 states have internal predecessors, (15), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 23 states. [2022-04-14 23:00:19,386 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 23:00:19,386 INFO L93 Difference]: Finished difference Result 23 states and 25 transitions. [2022-04-14 23:00:19,387 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 25 transitions. [2022-04-14 23:00:19,387 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 23:00:19,388 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 23:00:19,390 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 23:00:19,390 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 23:00:19,397 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 13 states have (on average 1.1538461538461537) internal successors, (15), 14 states have internal predecessors, (15), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-14 23:00:19,400 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 25 transitions. [2022-04-14 23:00:19,401 INFO L78 Accepts]: Start accepts. Automaton has 23 states and 25 transitions. Word has length 17 [2022-04-14 23:00:19,401 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 23:00:19,401 INFO L478 AbstractCegarLoop]: Abstraction has 23 states and 25 transitions. [2022-04-14 23:00:19,401 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-14 23:00:19,401 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 25 transitions. [2022-04-14 23:00:19,402 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-04-14 23:00:19,402 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 23:00:19,402 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 23:00:19,402 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-14 23:00:19,402 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 23:00:19,403 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 23:00:19,403 INFO L85 PathProgramCache]: Analyzing trace with hash 603980644, now seen corresponding path program 1 times [2022-04-14 23:00:19,403 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 23:00:19,403 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [855062062] [2022-04-14 23:00:19,403 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 23:00:19,403 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 23:00:19,425 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 23:00:19,425 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1451001517] [2022-04-14 23:00:19,425 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 23:00:19,426 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 23:00:19,426 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 23:00:19,427 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 23:00:19,427 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-14 23:00:19,458 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 23:00:19,459 INFO L263 TraceCheckSpWp]: Trace formula consists of 68 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-14 23:00:19,466 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 23:00:19,469 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 23:00:19,573 INFO L272 TraceCheckUtils]: 0: Hoare triple {140#true} [63] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {140#true} is VALID [2022-04-14 23:00:19,574 INFO L290 TraceCheckUtils]: 1: Hoare triple {140#true} [65] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 2) 9) (= (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{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {140#true} is VALID [2022-04-14 23:00:19,574 INFO L290 TraceCheckUtils]: 2: Hoare triple {140#true} [68] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {140#true} is VALID [2022-04-14 23:00:19,574 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {140#true} {140#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {140#true} is VALID [2022-04-14 23:00:19,574 INFO L272 TraceCheckUtils]: 4: Hoare triple {140#true} [64] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {140#true} is VALID [2022-04-14 23:00:19,574 INFO L290 TraceCheckUtils]: 5: Hoare triple {140#true} [67] mainENTRY-->L21: Formula: (and (<= |v_main_#t~nondet4_2| 32767) (<= 0 (+ |v_main_#t~nondet4_2| 32768)) (= v_main_~k~0_1 |v_main_#t~nondet4_2|)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~c~0=v_main_~c~0_1, main_~y~0=v_main_~y~0_2, main_~x~0=v_main_~x~0_2, main_~k~0=v_main_~k~0_1} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~k~0, main_~c~0, main_~y~0] {140#true} is VALID [2022-04-14 23:00:19,574 INFO L272 TraceCheckUtils]: 6: Hoare triple {140#true} [69] L21-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~k~0_8) (<= v_main_~k~0_8 5)) 1 0)) InVars {main_~k~0=v_main_~k~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~k~0, assume_abort_if_not_#in~cond] {140#true} is VALID [2022-04-14 23:00:19,574 INFO L290 TraceCheckUtils]: 7: Hoare triple {140#true} [71] assume_abort_if_notENTRY-->L7: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {140#true} is VALID [2022-04-14 23:00:19,575 INFO L290 TraceCheckUtils]: 8: Hoare triple {140#true} [76] L7-->L7-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {140#true} is VALID [2022-04-14 23:00:19,575 INFO L290 TraceCheckUtils]: 9: Hoare triple {140#true} [79] L7-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {140#true} is VALID [2022-04-14 23:00:19,575 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {140#true} {140#true} [92] assume_abort_if_notEXIT-->L21-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~k~0_8) (<= v_main_~k~0_8 5)) 1 0)) InVars {main_~k~0=v_main_~k~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~k~0, assume_abort_if_not_#in~cond] {140#true} is VALID [2022-04-14 23:00:19,575 INFO L290 TraceCheckUtils]: 11: Hoare triple {140#true} [70] L21-1-->L27-2: Formula: (and (= v_main_~c~0_2 0) (= v_main_~y~0_3 0) (= v_main_~x~0_3 0)) InVars {} OutVars{main_~c~0=v_main_~c~0_2, main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3} AuxVars[] AssignedVars[main_~x~0, main_~c~0, main_~y~0] {178#(and (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-14 23:00:19,576 INFO L290 TraceCheckUtils]: 12: Hoare triple {178#(and (= main_~x~0 0) (= main_~y~0 0))} [74] L27-2-->L28: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {178#(and (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-14 23:00:19,576 INFO L272 TraceCheckUtils]: 13: Hoare triple {178#(and (= main_~x~0 0) (= main_~y~0 0))} [78] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {185#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 23:00:19,577 INFO L290 TraceCheckUtils]: 14: Hoare triple {185#(<= 1 |__VERIFIER_assert_#in~cond|)} [81] __VERIFIER_assertENTRY-->L10: 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] {189#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 23:00:19,577 INFO L290 TraceCheckUtils]: 15: Hoare triple {189#(<= 1 __VERIFIER_assert_~cond)} [85] L10-->L11: 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[] {141#false} is VALID [2022-04-14 23:00:19,577 INFO L290 TraceCheckUtils]: 16: Hoare triple {141#false} [88] L11-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {141#false} is VALID [2022-04-14 23:00:19,578 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-14 23:00:19,578 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 23:00:19,578 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 23:00:19,578 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [855062062] [2022-04-14 23:00:19,578 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 23:00:19,578 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1451001517] [2022-04-14 23:00:19,578 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1451001517] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 23:00:19,578 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 23:00:19,579 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-14 23:00:19,598 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1261909841] [2022-04-14 23:00:19,599 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 23:00:19,599 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), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 17 [2022-04-14 23:00:19,599 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 23:00:19,600 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), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-14 23:00:19,611 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-14 23:00:19,612 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-14 23:00:19,612 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 23:00:19,612 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-14 23:00:19,612 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-14 23:00:19,613 INFO L87 Difference]: Start difference. First operand 23 states and 25 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), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-14 23:00:19,709 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 23:00:19,709 INFO L93 Difference]: Finished difference Result 32 states and 36 transitions. [2022-04-14 23:00:19,709 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-14 23:00:19,709 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), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 17 [2022-04-14 23:00:19,709 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 23:00:19,710 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), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-14 23:00:19,713 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 37 transitions. [2022-04-14 23:00:19,713 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), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-14 23:00:19,717 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 37 transitions. [2022-04-14 23:00:19,717 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 37 transitions. [2022-04-14 23:00:19,740 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 37 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 23:00:19,741 INFO L225 Difference]: With dead ends: 32 [2022-04-14 23:00:19,742 INFO L226 Difference]: Without dead ends: 30 [2022-04-14 23:00:19,742 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-14 23:00:19,743 INFO L913 BasicCegarLoop]: 22 mSDtfsCounter, 6 mSDsluCounter, 55 mSDsCounter, 0 mSdLazyCounter, 28 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 77 SdHoareTripleChecker+Invalid, 30 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 28 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-14 23:00:19,744 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [8 Valid, 77 Invalid, 30 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 28 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-14 23:00:19,745 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 30 states. [2022-04-14 23:00:19,748 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 30 to 30. [2022-04-14 23:00:19,748 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 23:00:19,748 INFO L82 GeneralOperation]: Start isEquivalent. First operand 30 states. Second operand has 30 states, 18 states have (on average 1.1111111111111112) internal successors, (20), 19 states have internal predecessors, (20), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-14 23:00:19,749 INFO L74 IsIncluded]: Start isIncluded. First operand 30 states. Second operand has 30 states, 18 states have (on average 1.1111111111111112) internal successors, (20), 19 states have internal predecessors, (20), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-14 23:00:19,749 INFO L87 Difference]: Start difference. First operand 30 states. Second operand has 30 states, 18 states have (on average 1.1111111111111112) internal successors, (20), 19 states have internal predecessors, (20), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-14 23:00:19,751 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 23:00:19,751 INFO L93 Difference]: Finished difference Result 30 states and 32 transitions. [2022-04-14 23:00:19,751 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 32 transitions. [2022-04-14 23:00:19,751 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 23:00:19,751 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 23:00:19,752 INFO L74 IsIncluded]: Start isIncluded. First operand has 30 states, 18 states have (on average 1.1111111111111112) internal successors, (20), 19 states have internal predecessors, (20), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 30 states. [2022-04-14 23:00:19,752 INFO L87 Difference]: Start difference. First operand has 30 states, 18 states have (on average 1.1111111111111112) internal successors, (20), 19 states have internal predecessors, (20), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 30 states. [2022-04-14 23:00:19,753 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 23:00:19,753 INFO L93 Difference]: Finished difference Result 30 states and 32 transitions. [2022-04-14 23:00:19,753 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 32 transitions. [2022-04-14 23:00:19,754 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 23:00:19,754 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 23:00:19,754 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 23:00:19,754 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 23:00:19,754 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 30 states, 18 states have (on average 1.1111111111111112) internal successors, (20), 19 states have internal predecessors, (20), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-14 23:00:19,755 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 32 transitions. [2022-04-14 23:00:19,755 INFO L78 Accepts]: Start accepts. Automaton has 30 states and 32 transitions. Word has length 17 [2022-04-14 23:00:19,755 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 23:00:19,755 INFO L478 AbstractCegarLoop]: Abstraction has 30 states and 32 transitions. [2022-04-14 23:00:19,756 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), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-14 23:00:19,756 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 32 transitions. [2022-04-14 23:00:19,756 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-04-14 23:00:19,756 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 23:00:19,756 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 23:00:19,774 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-14 23:00:19,971 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 23:00:19,972 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 23:00:19,972 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 23:00:19,972 INFO L85 PathProgramCache]: Analyzing trace with hash -169450186, now seen corresponding path program 1 times [2022-04-14 23:00:19,973 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 23:00:19,973 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1710533192] [2022-04-14 23:00:19,973 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 23:00:19,973 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 23:00:19,984 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 23:00:19,985 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1842943163] [2022-04-14 23:00:19,985 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 23:00:19,985 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 23:00:19,985 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 23:00:19,990 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 23:00:19,993 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-14 23:00:20,030 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 23:00:20,031 INFO L263 TraceCheckSpWp]: Trace formula consists of 85 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-14 23:00:20,037 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 23:00:20,038 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 23:00:20,191 INFO L272 TraceCheckUtils]: 0: Hoare triple {319#true} [63] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {319#true} is VALID [2022-04-14 23:00:20,192 INFO L290 TraceCheckUtils]: 1: Hoare triple {319#true} [65] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 2) 9) (= (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{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {319#true} is VALID [2022-04-14 23:00:20,192 INFO L290 TraceCheckUtils]: 2: Hoare triple {319#true} [68] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {319#true} is VALID [2022-04-14 23:00:20,192 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {319#true} {319#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {319#true} is VALID [2022-04-14 23:00:20,192 INFO L272 TraceCheckUtils]: 4: Hoare triple {319#true} [64] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {319#true} is VALID [2022-04-14 23:00:20,192 INFO L290 TraceCheckUtils]: 5: Hoare triple {319#true} [67] mainENTRY-->L21: Formula: (and (<= |v_main_#t~nondet4_2| 32767) (<= 0 (+ |v_main_#t~nondet4_2| 32768)) (= v_main_~k~0_1 |v_main_#t~nondet4_2|)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~c~0=v_main_~c~0_1, main_~y~0=v_main_~y~0_2, main_~x~0=v_main_~x~0_2, main_~k~0=v_main_~k~0_1} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~k~0, main_~c~0, main_~y~0] {319#true} is VALID [2022-04-14 23:00:20,192 INFO L272 TraceCheckUtils]: 6: Hoare triple {319#true} [69] L21-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~k~0_8) (<= v_main_~k~0_8 5)) 1 0)) InVars {main_~k~0=v_main_~k~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~k~0, assume_abort_if_not_#in~cond] {319#true} is VALID [2022-04-14 23:00:20,193 INFO L290 TraceCheckUtils]: 7: Hoare triple {319#true} [71] assume_abort_if_notENTRY-->L7: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {319#true} is VALID [2022-04-14 23:00:20,193 INFO L290 TraceCheckUtils]: 8: Hoare triple {319#true} [76] L7-->L7-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {319#true} is VALID [2022-04-14 23:00:20,193 INFO L290 TraceCheckUtils]: 9: Hoare triple {319#true} [79] L7-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {319#true} is VALID [2022-04-14 23:00:20,193 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {319#true} {319#true} [92] assume_abort_if_notEXIT-->L21-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~k~0_8) (<= v_main_~k~0_8 5)) 1 0)) InVars {main_~k~0=v_main_~k~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~k~0, assume_abort_if_not_#in~cond] {319#true} is VALID [2022-04-14 23:00:20,195 INFO L290 TraceCheckUtils]: 11: Hoare triple {319#true} [70] L21-1-->L27-2: Formula: (and (= v_main_~c~0_2 0) (= v_main_~y~0_3 0) (= v_main_~x~0_3 0)) InVars {} OutVars{main_~c~0=v_main_~c~0_2, main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3} AuxVars[] AssignedVars[main_~x~0, main_~c~0, main_~y~0] {357#(and (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-14 23:00:20,196 INFO L290 TraceCheckUtils]: 12: Hoare triple {357#(and (= main_~x~0 0) (= main_~y~0 0))} [74] L27-2-->L28: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {357#(and (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-14 23:00:20,196 INFO L272 TraceCheckUtils]: 13: Hoare triple {357#(and (= main_~x~0 0) (= main_~y~0 0))} [78] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {319#true} is VALID [2022-04-14 23:00:20,196 INFO L290 TraceCheckUtils]: 14: Hoare triple {319#true} [81] __VERIFIER_assertENTRY-->L10: 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] {319#true} is VALID [2022-04-14 23:00:20,196 INFO L290 TraceCheckUtils]: 15: Hoare triple {319#true} [86] L10-->L10-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[] {319#true} is VALID [2022-04-14 23:00:20,196 INFO L290 TraceCheckUtils]: 16: Hoare triple {319#true} [90] L10-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {319#true} is VALID [2022-04-14 23:00:20,198 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {319#true} {357#(and (= main_~x~0 0) (= main_~y~0 0))} [94] __VERIFIER_assertEXIT-->L28-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {357#(and (= main_~x~0 0) (= main_~y~0 0))} is VALID [2022-04-14 23:00:20,198 INFO L290 TraceCheckUtils]: 18: Hoare triple {357#(and (= main_~x~0 0) (= main_~y~0 0))} [83] L28-1-->L27-2: Formula: (and (= v_main_~c~0_4 (+ v_main_~c~0_5 1)) (< v_main_~c~0_5 v_main_~k~0_6) (= v_main_~y~0_5 (+ v_main_~y~0_6 1)) (= v_main_~x~0_5 (+ v_main_~x~0_6 (* v_main_~y~0_5 (* v_main_~y~0_5 v_main_~y~0_5))))) InVars {main_~y~0=v_main_~y~0_6, main_~c~0=v_main_~c~0_5, main_~x~0=v_main_~x~0_6, main_~k~0=v_main_~k~0_6} OutVars{main_~y~0=v_main_~y~0_5, main_~c~0=v_main_~c~0_4, main_~x~0=v_main_~x~0_5, main_~k~0=v_main_~k~0_6} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_~c~0] {379#(and (= (+ (- 1) main_~y~0) 0) (= (* main_~y~0 (* main_~y~0 main_~y~0)) main_~x~0))} is VALID [2022-04-14 23:00:20,199 INFO L290 TraceCheckUtils]: 19: Hoare triple {379#(and (= (+ (- 1) main_~y~0) 0) (= (* main_~y~0 (* main_~y~0 main_~y~0)) main_~x~0))} [74] L27-2-->L28: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {379#(and (= (+ (- 1) main_~y~0) 0) (= (* main_~y~0 (* main_~y~0 main_~y~0)) main_~x~0))} is VALID [2022-04-14 23:00:20,200 INFO L272 TraceCheckUtils]: 20: Hoare triple {379#(and (= (+ (- 1) main_~y~0) 0) (= (* main_~y~0 (* main_~y~0 main_~y~0)) main_~x~0))} [78] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {386#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 23:00:20,200 INFO L290 TraceCheckUtils]: 21: Hoare triple {386#(<= 1 |__VERIFIER_assert_#in~cond|)} [81] __VERIFIER_assertENTRY-->L10: 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] {390#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 23:00:20,201 INFO L290 TraceCheckUtils]: 22: Hoare triple {390#(<= 1 __VERIFIER_assert_~cond)} [85] L10-->L11: 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[] {320#false} is VALID [2022-04-14 23:00:20,201 INFO L290 TraceCheckUtils]: 23: Hoare triple {320#false} [88] L11-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {320#false} is VALID [2022-04-14 23:00:20,201 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-14 23:00:20,201 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 23:00:20,457 INFO L290 TraceCheckUtils]: 23: Hoare triple {320#false} [88] L11-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {320#false} is VALID [2022-04-14 23:00:20,458 INFO L290 TraceCheckUtils]: 22: Hoare triple {390#(<= 1 __VERIFIER_assert_~cond)} [85] L10-->L11: 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[] {320#false} is VALID [2022-04-14 23:00:20,458 INFO L290 TraceCheckUtils]: 21: Hoare triple {386#(<= 1 |__VERIFIER_assert_#in~cond|)} [81] __VERIFIER_assertENTRY-->L10: 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] {390#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 23:00:20,459 INFO L272 TraceCheckUtils]: 20: Hoare triple {406#(= (+ (* main_~y~0 main_~y~0 main_~y~0 main_~y~0) (* main_~y~0 main_~y~0) (* (* main_~y~0 main_~y~0 main_~y~0) 2)) (* main_~x~0 4))} [78] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {386#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 23:00:20,460 INFO L290 TraceCheckUtils]: 19: Hoare triple {406#(= (+ (* main_~y~0 main_~y~0 main_~y~0 main_~y~0) (* main_~y~0 main_~y~0) (* (* main_~y~0 main_~y~0 main_~y~0) 2)) (* main_~x~0 4))} [74] L27-2-->L28: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {406#(= (+ (* main_~y~0 main_~y~0 main_~y~0 main_~y~0) (* main_~y~0 main_~y~0) (* (* main_~y~0 main_~y~0 main_~y~0) 2)) (* main_~x~0 4))} is VALID [2022-04-14 23:00:20,467 INFO L290 TraceCheckUtils]: 18: Hoare triple {406#(= (+ (* main_~y~0 main_~y~0 main_~y~0 main_~y~0) (* main_~y~0 main_~y~0) (* (* main_~y~0 main_~y~0 main_~y~0) 2)) (* main_~x~0 4))} [83] L28-1-->L27-2: Formula: (and (= v_main_~c~0_4 (+ v_main_~c~0_5 1)) (< v_main_~c~0_5 v_main_~k~0_6) (= v_main_~y~0_5 (+ v_main_~y~0_6 1)) (= v_main_~x~0_5 (+ v_main_~x~0_6 (* v_main_~y~0_5 (* v_main_~y~0_5 v_main_~y~0_5))))) InVars {main_~y~0=v_main_~y~0_6, main_~c~0=v_main_~c~0_5, main_~x~0=v_main_~x~0_6, main_~k~0=v_main_~k~0_6} OutVars{main_~y~0=v_main_~y~0_5, main_~c~0=v_main_~c~0_4, main_~x~0=v_main_~x~0_5, main_~k~0=v_main_~k~0_6} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_~c~0] {406#(= (+ (* main_~y~0 main_~y~0 main_~y~0 main_~y~0) (* main_~y~0 main_~y~0) (* (* main_~y~0 main_~y~0 main_~y~0) 2)) (* main_~x~0 4))} is VALID [2022-04-14 23:00:20,468 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {319#true} {406#(= (+ (* main_~y~0 main_~y~0 main_~y~0 main_~y~0) (* main_~y~0 main_~y~0) (* (* main_~y~0 main_~y~0 main_~y~0) 2)) (* main_~x~0 4))} [94] __VERIFIER_assertEXIT-->L28-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {406#(= (+ (* main_~y~0 main_~y~0 main_~y~0 main_~y~0) (* main_~y~0 main_~y~0) (* (* main_~y~0 main_~y~0 main_~y~0) 2)) (* main_~x~0 4))} is VALID [2022-04-14 23:00:20,468 INFO L290 TraceCheckUtils]: 16: Hoare triple {319#true} [90] L10-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {319#true} is VALID [2022-04-14 23:00:20,468 INFO L290 TraceCheckUtils]: 15: Hoare triple {319#true} [86] L10-->L10-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[] {319#true} is VALID [2022-04-14 23:00:20,468 INFO L290 TraceCheckUtils]: 14: Hoare triple {319#true} [81] __VERIFIER_assertENTRY-->L10: 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] {319#true} is VALID [2022-04-14 23:00:20,468 INFO L272 TraceCheckUtils]: 13: Hoare triple {406#(= (+ (* main_~y~0 main_~y~0 main_~y~0 main_~y~0) (* main_~y~0 main_~y~0) (* (* main_~y~0 main_~y~0 main_~y~0) 2)) (* main_~x~0 4))} [78] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {319#true} is VALID [2022-04-14 23:00:20,469 INFO L290 TraceCheckUtils]: 12: Hoare triple {406#(= (+ (* main_~y~0 main_~y~0 main_~y~0 main_~y~0) (* main_~y~0 main_~y~0) (* (* main_~y~0 main_~y~0 main_~y~0) 2)) (* main_~x~0 4))} [74] L27-2-->L28: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {406#(= (+ (* main_~y~0 main_~y~0 main_~y~0 main_~y~0) (* main_~y~0 main_~y~0) (* (* main_~y~0 main_~y~0 main_~y~0) 2)) (* main_~x~0 4))} is VALID [2022-04-14 23:00:20,469 INFO L290 TraceCheckUtils]: 11: Hoare triple {319#true} [70] L21-1-->L27-2: Formula: (and (= v_main_~c~0_2 0) (= v_main_~y~0_3 0) (= v_main_~x~0_3 0)) InVars {} OutVars{main_~c~0=v_main_~c~0_2, main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3} AuxVars[] AssignedVars[main_~x~0, main_~c~0, main_~y~0] {406#(= (+ (* main_~y~0 main_~y~0 main_~y~0 main_~y~0) (* main_~y~0 main_~y~0) (* (* main_~y~0 main_~y~0 main_~y~0) 2)) (* main_~x~0 4))} is VALID [2022-04-14 23:00:20,470 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {319#true} {319#true} [92] assume_abort_if_notEXIT-->L21-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~k~0_8) (<= v_main_~k~0_8 5)) 1 0)) InVars {main_~k~0=v_main_~k~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~k~0, assume_abort_if_not_#in~cond] {319#true} is VALID [2022-04-14 23:00:20,470 INFO L290 TraceCheckUtils]: 9: Hoare triple {319#true} [79] L7-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {319#true} is VALID [2022-04-14 23:00:20,470 INFO L290 TraceCheckUtils]: 8: Hoare triple {319#true} [76] L7-->L7-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {319#true} is VALID [2022-04-14 23:00:20,470 INFO L290 TraceCheckUtils]: 7: Hoare triple {319#true} [71] assume_abort_if_notENTRY-->L7: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {319#true} is VALID [2022-04-14 23:00:20,470 INFO L272 TraceCheckUtils]: 6: Hoare triple {319#true} [69] L21-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~k~0_8) (<= v_main_~k~0_8 5)) 1 0)) InVars {main_~k~0=v_main_~k~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~k~0, assume_abort_if_not_#in~cond] {319#true} is VALID [2022-04-14 23:00:20,471 INFO L290 TraceCheckUtils]: 5: Hoare triple {319#true} [67] mainENTRY-->L21: Formula: (and (<= |v_main_#t~nondet4_2| 32767) (<= 0 (+ |v_main_#t~nondet4_2| 32768)) (= v_main_~k~0_1 |v_main_#t~nondet4_2|)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~c~0=v_main_~c~0_1, main_~y~0=v_main_~y~0_2, main_~x~0=v_main_~x~0_2, main_~k~0=v_main_~k~0_1} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~k~0, main_~c~0, main_~y~0] {319#true} is VALID [2022-04-14 23:00:20,471 INFO L272 TraceCheckUtils]: 4: Hoare triple {319#true} [64] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {319#true} is VALID [2022-04-14 23:00:20,471 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {319#true} {319#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {319#true} is VALID [2022-04-14 23:00:20,471 INFO L290 TraceCheckUtils]: 2: Hoare triple {319#true} [68] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {319#true} is VALID [2022-04-14 23:00:20,471 INFO L290 TraceCheckUtils]: 1: Hoare triple {319#true} [65] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 2) 9) (= (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{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {319#true} is VALID [2022-04-14 23:00:20,472 INFO L272 TraceCheckUtils]: 0: Hoare triple {319#true} [63] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {319#true} is VALID [2022-04-14 23:00:20,472 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-14 23:00:20,472 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 23:00:20,473 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1710533192] [2022-04-14 23:00:20,473 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 23:00:20,473 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1842943163] [2022-04-14 23:00:20,473 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1842943163] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-14 23:00:20,473 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-14 23:00:20,473 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [6] total 7 [2022-04-14 23:00:20,473 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1807873460] [2022-04-14 23:00:20,473 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 23:00:20,474 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 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 24 [2022-04-14 23:00:20,474 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 23:00:20,474 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 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-14 23:00:20,496 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 23 edges. 23 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 23:00:20,496 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-14 23:00:20,496 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 23:00:20,497 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-14 23:00:20,497 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-04-14 23:00:20,497 INFO L87 Difference]: Start difference. First operand 30 states and 32 transitions. Second operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 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-14 23:00:20,586 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 23:00:20,587 INFO L93 Difference]: Finished difference Result 34 states and 35 transitions. [2022-04-14 23:00:20,587 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-14 23:00:20,587 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 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 24 [2022-04-14 23:00:20,587 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 23:00:20,587 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 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-14 23:00:20,591 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 29 transitions. [2022-04-14 23:00:20,591 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 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-14 23:00:20,592 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 29 transitions. [2022-04-14 23:00:20,592 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 29 transitions. [2022-04-14 23:00:20,620 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 29 edges. 29 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 23:00:20,621 INFO L225 Difference]: With dead ends: 34 [2022-04-14 23:00:20,621 INFO L226 Difference]: Without dead ends: 31 [2022-04-14 23:00:20,621 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 48 GetRequests, 40 SyntacticMatches, 2 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-04-14 23:00:20,622 INFO L913 BasicCegarLoop]: 21 mSDtfsCounter, 6 mSDsluCounter, 49 mSDsCounter, 0 mSdLazyCounter, 22 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 7 SdHoareTripleChecker+Valid, 70 SdHoareTripleChecker+Invalid, 23 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 22 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-14 23:00:20,622 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [7 Valid, 70 Invalid, 23 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 22 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-14 23:00:20,622 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 31 states. [2022-04-14 23:00:20,624 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 31 to 31. [2022-04-14 23:00:20,624 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 23:00:20,624 INFO L82 GeneralOperation]: Start isEquivalent. First operand 31 states. Second operand has 31 states, 20 states have (on average 1.05) internal successors, (21), 20 states have internal predecessors, (21), 6 states have call successors, (6), 6 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-14 23:00:20,624 INFO L74 IsIncluded]: Start isIncluded. First operand 31 states. Second operand has 31 states, 20 states have (on average 1.05) internal successors, (21), 20 states have internal predecessors, (21), 6 states have call successors, (6), 6 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-14 23:00:20,625 INFO L87 Difference]: Start difference. First operand 31 states. Second operand has 31 states, 20 states have (on average 1.05) internal successors, (21), 20 states have internal predecessors, (21), 6 states have call successors, (6), 6 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-14 23:00:20,626 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 23:00:20,626 INFO L93 Difference]: Finished difference Result 31 states and 31 transitions. [2022-04-14 23:00:20,626 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 31 transitions. [2022-04-14 23:00:20,626 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 23:00:20,626 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 23:00:20,626 INFO L74 IsIncluded]: Start isIncluded. First operand has 31 states, 20 states have (on average 1.05) internal successors, (21), 20 states have internal predecessors, (21), 6 states have call successors, (6), 6 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 31 states. [2022-04-14 23:00:20,626 INFO L87 Difference]: Start difference. First operand has 31 states, 20 states have (on average 1.05) internal successors, (21), 20 states have internal predecessors, (21), 6 states have call successors, (6), 6 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 31 states. [2022-04-14 23:00:20,627 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 23:00:20,628 INFO L93 Difference]: Finished difference Result 31 states and 31 transitions. [2022-04-14 23:00:20,628 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 31 transitions. [2022-04-14 23:00:20,628 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 23:00:20,628 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 23:00:20,628 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 23:00:20,628 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 23:00:20,628 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 20 states have (on average 1.05) internal successors, (21), 20 states have internal predecessors, (21), 6 states have call successors, (6), 6 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-14 23:00:20,629 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 31 transitions. [2022-04-14 23:00:20,629 INFO L78 Accepts]: Start accepts. Automaton has 31 states and 31 transitions. Word has length 24 [2022-04-14 23:00:20,629 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 23:00:20,629 INFO L478 AbstractCegarLoop]: Abstraction has 31 states and 31 transitions. [2022-04-14 23:00:20,629 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 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-14 23:00:20,630 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 31 transitions. [2022-04-14 23:00:20,630 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 31 [2022-04-14 23:00:20,630 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 23:00:20,630 INFO L499 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 23:00:20,646 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-14 23:00:20,845 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-14 23:00:20,845 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 23:00:20,846 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 23:00:20,846 INFO L85 PathProgramCache]: Analyzing trace with hash -434891502, now seen corresponding path program 1 times [2022-04-14 23:00:20,846 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 23:00:20,846 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [329808947] [2022-04-14 23:00:20,846 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 23:00:20,849 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 23:00:20,859 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 23:00:20,859 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [362044114] [2022-04-14 23:00:20,859 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 23:00:20,859 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 23:00:20,859 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 23:00:20,860 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 23:00:20,861 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-14 23:00:20,890 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 23:00:20,891 INFO L263 TraceCheckSpWp]: Trace formula consists of 95 conjuncts, 12 conjunts are in the unsatisfiable core [2022-04-14 23:00:20,900 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 23:00:20,900 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 23:00:21,122 INFO L272 TraceCheckUtils]: 0: Hoare triple {598#true} [63] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {598#true} is VALID [2022-04-14 23:00:21,122 INFO L290 TraceCheckUtils]: 1: Hoare triple {598#true} [65] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 2) 9) (= (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{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {598#true} is VALID [2022-04-14 23:00:21,122 INFO L290 TraceCheckUtils]: 2: Hoare triple {598#true} [68] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {598#true} is VALID [2022-04-14 23:00:21,122 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {598#true} {598#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {598#true} is VALID [2022-04-14 23:00:21,123 INFO L272 TraceCheckUtils]: 4: Hoare triple {598#true} [64] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {598#true} is VALID [2022-04-14 23:00:21,123 INFO L290 TraceCheckUtils]: 5: Hoare triple {598#true} [67] mainENTRY-->L21: Formula: (and (<= |v_main_#t~nondet4_2| 32767) (<= 0 (+ |v_main_#t~nondet4_2| 32768)) (= v_main_~k~0_1 |v_main_#t~nondet4_2|)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~c~0=v_main_~c~0_1, main_~y~0=v_main_~y~0_2, main_~x~0=v_main_~x~0_2, main_~k~0=v_main_~k~0_1} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~k~0, main_~c~0, main_~y~0] {598#true} is VALID [2022-04-14 23:00:21,123 INFO L272 TraceCheckUtils]: 6: Hoare triple {598#true} [69] L21-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~k~0_8) (<= v_main_~k~0_8 5)) 1 0)) InVars {main_~k~0=v_main_~k~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~k~0, assume_abort_if_not_#in~cond] {598#true} is VALID [2022-04-14 23:00:21,123 INFO L290 TraceCheckUtils]: 7: Hoare triple {598#true} [71] assume_abort_if_notENTRY-->L7: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {598#true} is VALID [2022-04-14 23:00:21,123 INFO L290 TraceCheckUtils]: 8: Hoare triple {598#true} [76] L7-->L7-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {598#true} is VALID [2022-04-14 23:00:21,123 INFO L290 TraceCheckUtils]: 9: Hoare triple {598#true} [79] L7-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {598#true} is VALID [2022-04-14 23:00:21,124 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {598#true} {598#true} [92] assume_abort_if_notEXIT-->L21-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~k~0_8) (<= v_main_~k~0_8 5)) 1 0)) InVars {main_~k~0=v_main_~k~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~k~0, assume_abort_if_not_#in~cond] {598#true} is VALID [2022-04-14 23:00:21,124 INFO L290 TraceCheckUtils]: 11: Hoare triple {598#true} [70] L21-1-->L27-2: Formula: (and (= v_main_~c~0_2 0) (= v_main_~y~0_3 0) (= v_main_~x~0_3 0)) InVars {} OutVars{main_~c~0=v_main_~c~0_2, main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3} AuxVars[] AssignedVars[main_~x~0, main_~c~0, main_~y~0] {636#(and (= main_~c~0 0) (= main_~y~0 0))} is VALID [2022-04-14 23:00:21,124 INFO L290 TraceCheckUtils]: 12: Hoare triple {636#(and (= main_~c~0 0) (= main_~y~0 0))} [74] L27-2-->L28: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {636#(and (= main_~c~0 0) (= main_~y~0 0))} is VALID [2022-04-14 23:00:21,125 INFO L272 TraceCheckUtils]: 13: Hoare triple {636#(and (= main_~c~0 0) (= main_~y~0 0))} [78] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {598#true} is VALID [2022-04-14 23:00:21,125 INFO L290 TraceCheckUtils]: 14: Hoare triple {598#true} [81] __VERIFIER_assertENTRY-->L10: 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] {598#true} is VALID [2022-04-14 23:00:21,125 INFO L290 TraceCheckUtils]: 15: Hoare triple {598#true} [86] L10-->L10-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[] {598#true} is VALID [2022-04-14 23:00:21,125 INFO L290 TraceCheckUtils]: 16: Hoare triple {598#true} [90] L10-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {598#true} is VALID [2022-04-14 23:00:21,127 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {598#true} {636#(and (= main_~c~0 0) (= main_~y~0 0))} [94] __VERIFIER_assertEXIT-->L28-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {636#(and (= main_~c~0 0) (= main_~y~0 0))} is VALID [2022-04-14 23:00:21,128 INFO L290 TraceCheckUtils]: 18: Hoare triple {636#(and (= main_~c~0 0) (= main_~y~0 0))} [83] L28-1-->L27-2: Formula: (and (= v_main_~c~0_4 (+ v_main_~c~0_5 1)) (< v_main_~c~0_5 v_main_~k~0_6) (= v_main_~y~0_5 (+ v_main_~y~0_6 1)) (= v_main_~x~0_5 (+ v_main_~x~0_6 (* v_main_~y~0_5 (* v_main_~y~0_5 v_main_~y~0_5))))) InVars {main_~y~0=v_main_~y~0_6, main_~c~0=v_main_~c~0_5, main_~x~0=v_main_~x~0_6, main_~k~0=v_main_~k~0_6} OutVars{main_~y~0=v_main_~y~0_5, main_~c~0=v_main_~c~0_4, main_~x~0=v_main_~x~0_5, main_~k~0=v_main_~k~0_6} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_~c~0] {658#(and (= (+ (- 1) main_~y~0) 0) (< 0 main_~k~0) (<= main_~c~0 1))} is VALID [2022-04-14 23:00:21,128 INFO L290 TraceCheckUtils]: 19: Hoare triple {658#(and (= (+ (- 1) main_~y~0) 0) (< 0 main_~k~0) (<= main_~c~0 1))} [74] L27-2-->L28: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {658#(and (= (+ (- 1) main_~y~0) 0) (< 0 main_~k~0) (<= main_~c~0 1))} is VALID [2022-04-14 23:00:21,129 INFO L272 TraceCheckUtils]: 20: Hoare triple {658#(and (= (+ (- 1) main_~y~0) 0) (< 0 main_~k~0) (<= main_~c~0 1))} [78] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {598#true} is VALID [2022-04-14 23:00:21,129 INFO L290 TraceCheckUtils]: 21: Hoare triple {598#true} [81] __VERIFIER_assertENTRY-->L10: 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] {598#true} is VALID [2022-04-14 23:00:21,129 INFO L290 TraceCheckUtils]: 22: Hoare triple {598#true} [86] L10-->L10-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[] {598#true} is VALID [2022-04-14 23:00:21,129 INFO L290 TraceCheckUtils]: 23: Hoare triple {598#true} [90] L10-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {598#true} is VALID [2022-04-14 23:00:21,130 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {598#true} {658#(and (= (+ (- 1) main_~y~0) 0) (< 0 main_~k~0) (<= main_~c~0 1))} [94] __VERIFIER_assertEXIT-->L28-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {658#(and (= (+ (- 1) main_~y~0) 0) (< 0 main_~k~0) (<= main_~c~0 1))} is VALID [2022-04-14 23:00:21,130 INFO L290 TraceCheckUtils]: 25: Hoare triple {658#(and (= (+ (- 1) main_~y~0) 0) (< 0 main_~k~0) (<= main_~c~0 1))} [82] L28-1-->L27-3: Formula: (not (< v_main_~c~0_3 v_main_~k~0_5)) InVars {main_~c~0=v_main_~c~0_3, main_~k~0=v_main_~k~0_5} OutVars{main_~c~0=v_main_~c~0_3, main_~k~0=v_main_~k~0_5} AuxVars[] AssignedVars[] {680#(and (= (+ (- 1) main_~y~0) 0) (<= main_~k~0 1) (< 0 main_~k~0))} is VALID [2022-04-14 23:00:21,131 INFO L272 TraceCheckUtils]: 26: Hoare triple {680#(and (= (+ (- 1) main_~y~0) 0) (<= main_~k~0 1) (< 0 main_~k~0))} [77] L27-3-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= (+ (* v_main_~k~0_9 v_main_~y~0_9) (* (- 1) (* v_main_~y~0_9 v_main_~y~0_9))) 0) 1 0)) InVars {main_~y~0=v_main_~y~0_9, main_~k~0=v_main_~k~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~k~0, main_~y~0] {684#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 23:00:21,131 INFO L290 TraceCheckUtils]: 27: Hoare triple {684#(<= 1 |__VERIFIER_assert_#in~cond|)} [81] __VERIFIER_assertENTRY-->L10: 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] {688#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 23:00:21,132 INFO L290 TraceCheckUtils]: 28: Hoare triple {688#(<= 1 __VERIFIER_assert_~cond)} [85] L10-->L11: 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[] {599#false} is VALID [2022-04-14 23:00:21,132 INFO L290 TraceCheckUtils]: 29: Hoare triple {599#false} [88] L11-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {599#false} is VALID [2022-04-14 23:00:21,132 INFO L134 CoverageAnalysis]: Checked inductivity of 11 backedges. 4 proven. 3 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-14 23:00:21,132 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 23:00:21,419 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 23:00:21,419 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [329808947] [2022-04-14 23:00:21,419 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 23:00:21,419 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [362044114] [2022-04-14 23:00:21,419 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [362044114] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-14 23:00:21,419 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-14 23:00:21,419 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7] total 7 [2022-04-14 23:00:21,419 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [470901134] [2022-04-14 23:00:21,419 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-14 23:00:21,420 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 6 states have (on average 2.8333333333333335) internal successors, (17), 6 states have internal predecessors, (17), 4 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) Word has length 30 [2022-04-14 23:00:21,420 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 23:00:21,420 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 6 states have (on average 2.8333333333333335) internal successors, (17), 6 states have internal predecessors, (17), 4 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-14 23:00:21,439 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 23:00:21,439 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-14 23:00:21,439 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 23:00:21,440 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-14 23:00:21,440 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=66, Unknown=0, NotChecked=0, Total=90 [2022-04-14 23:00:21,440 INFO L87 Difference]: Start difference. First operand 31 states and 31 transitions. Second operand has 7 states, 6 states have (on average 2.8333333333333335) internal successors, (17), 6 states have internal predecessors, (17), 4 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-14 23:00:21,617 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 23:00:21,617 INFO L93 Difference]: Finished difference Result 37 states and 38 transitions. [2022-04-14 23:00:21,617 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-14 23:00:21,617 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 6 states have (on average 2.8333333333333335) internal successors, (17), 6 states have internal predecessors, (17), 4 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) Word has length 30 [2022-04-14 23:00:21,618 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 23:00:21,618 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 2.8333333333333335) internal successors, (17), 6 states have internal predecessors, (17), 4 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-14 23:00:21,619 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 35 transitions. [2022-04-14 23:00:21,620 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 2.8333333333333335) internal successors, (17), 6 states have internal predecessors, (17), 4 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-14 23:00:21,621 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 35 transitions. [2022-04-14 23:00:21,621 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 35 transitions. [2022-04-14 23:00:21,645 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 35 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 23:00:21,647 INFO L225 Difference]: With dead ends: 37 [2022-04-14 23:00:21,647 INFO L226 Difference]: Without dead ends: 34 [2022-04-14 23:00:21,647 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 44 GetRequests, 33 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=34, Invalid=98, Unknown=0, NotChecked=0, Total=132 [2022-04-14 23:00:21,650 INFO L913 BasicCegarLoop]: 25 mSDtfsCounter, 2 mSDsluCounter, 90 mSDsCounter, 0 mSdLazyCounter, 51 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 2 SdHoareTripleChecker+Valid, 115 SdHoareTripleChecker+Invalid, 51 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 51 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-14 23:00:21,652 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [2 Valid, 115 Invalid, 51 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 51 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-14 23:00:21,653 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-14 23:00:21,657 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 34. [2022-04-14 23:00:21,658 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 23:00:21,658 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand has 34 states, 22 states have (on average 1.0454545454545454) internal successors, (23), 22 states have internal predecessors, (23), 7 states have call successors, (7), 6 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-14 23:00:21,659 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand has 34 states, 22 states have (on average 1.0454545454545454) internal successors, (23), 22 states have internal predecessors, (23), 7 states have call successors, (7), 6 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-14 23:00:21,660 INFO L87 Difference]: Start difference. First operand 34 states. Second operand has 34 states, 22 states have (on average 1.0454545454545454) internal successors, (23), 22 states have internal predecessors, (23), 7 states have call successors, (7), 6 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-14 23:00:21,662 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 23:00:21,662 INFO L93 Difference]: Finished difference Result 34 states and 35 transitions. [2022-04-14 23:00:21,662 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 35 transitions. [2022-04-14 23:00:21,663 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 23:00:21,663 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 23:00:21,663 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 22 states have (on average 1.0454545454545454) internal successors, (23), 22 states have internal predecessors, (23), 7 states have call successors, (7), 6 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 34 states. [2022-04-14 23:00:21,663 INFO L87 Difference]: Start difference. First operand has 34 states, 22 states have (on average 1.0454545454545454) internal successors, (23), 22 states have internal predecessors, (23), 7 states have call successors, (7), 6 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 34 states. [2022-04-14 23:00:21,664 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 23:00:21,664 INFO L93 Difference]: Finished difference Result 34 states and 35 transitions. [2022-04-14 23:00:21,664 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 35 transitions. [2022-04-14 23:00:21,664 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 23:00:21,665 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 23:00:21,665 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 23:00:21,665 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 23:00:21,665 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 22 states have (on average 1.0454545454545454) internal successors, (23), 22 states have internal predecessors, (23), 7 states have call successors, (7), 6 states have call predecessors, (7), 4 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-14 23:00:21,666 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 35 transitions. [2022-04-14 23:00:21,666 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 35 transitions. Word has length 30 [2022-04-14 23:00:21,666 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 23:00:21,666 INFO L478 AbstractCegarLoop]: Abstraction has 34 states and 35 transitions. [2022-04-14 23:00:21,666 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 6 states have (on average 2.8333333333333335) internal successors, (17), 6 states have internal predecessors, (17), 4 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-14 23:00:21,666 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 35 transitions. [2022-04-14 23:00:21,666 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-04-14 23:00:21,667 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 23:00:21,667 INFO L499 BasicCegarLoop]: trace histogram [4, 3, 3, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 23:00:21,682 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-14 23:00:21,875 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 23:00:21,876 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 23:00:21,876 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 23:00:21,876 INFO L85 PathProgramCache]: Analyzing trace with hash 725792896, now seen corresponding path program 2 times [2022-04-14 23:00:21,876 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 23:00:21,876 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1054542745] [2022-04-14 23:00:21,876 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 23:00:21,876 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 23:00:21,894 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 23:00:21,894 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [286238526] [2022-04-14 23:00:21,894 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-14 23:00:21,894 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 23:00:21,894 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 23:00:21,900 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 23:00:21,901 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-14 23:00:21,935 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-14 23:00:21,935 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-14 23:00:21,935 INFO L263 TraceCheckSpWp]: Trace formula consists of 112 conjuncts, 16 conjunts are in the unsatisfiable core [2022-04-14 23:00:21,943 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 23:00:21,944 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 23:00:22,153 INFO L272 TraceCheckUtils]: 0: Hoare triple {879#true} [63] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {879#true} is VALID [2022-04-14 23:00:22,153 INFO L290 TraceCheckUtils]: 1: Hoare triple {879#true} [65] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 2) 9) (= (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{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {879#true} is VALID [2022-04-14 23:00:22,154 INFO L290 TraceCheckUtils]: 2: Hoare triple {879#true} [68] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {879#true} is VALID [2022-04-14 23:00:22,154 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {879#true} {879#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {879#true} is VALID [2022-04-14 23:00:22,154 INFO L272 TraceCheckUtils]: 4: Hoare triple {879#true} [64] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {879#true} is VALID [2022-04-14 23:00:22,154 INFO L290 TraceCheckUtils]: 5: Hoare triple {879#true} [67] mainENTRY-->L21: Formula: (and (<= |v_main_#t~nondet4_2| 32767) (<= 0 (+ |v_main_#t~nondet4_2| 32768)) (= v_main_~k~0_1 |v_main_#t~nondet4_2|)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~c~0=v_main_~c~0_1, main_~y~0=v_main_~y~0_2, main_~x~0=v_main_~x~0_2, main_~k~0=v_main_~k~0_1} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~k~0, main_~c~0, main_~y~0] {879#true} is VALID [2022-04-14 23:00:22,154 INFO L272 TraceCheckUtils]: 6: Hoare triple {879#true} [69] L21-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~k~0_8) (<= v_main_~k~0_8 5)) 1 0)) InVars {main_~k~0=v_main_~k~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~k~0, assume_abort_if_not_#in~cond] {879#true} is VALID [2022-04-14 23:00:22,154 INFO L290 TraceCheckUtils]: 7: Hoare triple {879#true} [71] assume_abort_if_notENTRY-->L7: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {879#true} is VALID [2022-04-14 23:00:22,154 INFO L290 TraceCheckUtils]: 8: Hoare triple {879#true} [76] L7-->L7-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {879#true} is VALID [2022-04-14 23:00:22,154 INFO L290 TraceCheckUtils]: 9: Hoare triple {879#true} [79] L7-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {879#true} is VALID [2022-04-14 23:00:22,154 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {879#true} {879#true} [92] assume_abort_if_notEXIT-->L21-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~k~0_8) (<= v_main_~k~0_8 5)) 1 0)) InVars {main_~k~0=v_main_~k~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~k~0, assume_abort_if_not_#in~cond] {879#true} is VALID [2022-04-14 23:00:22,160 INFO L290 TraceCheckUtils]: 11: Hoare triple {879#true} [70] L21-1-->L27-2: Formula: (and (= v_main_~c~0_2 0) (= v_main_~y~0_3 0) (= v_main_~x~0_3 0)) InVars {} OutVars{main_~c~0=v_main_~c~0_2, main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3} AuxVars[] AssignedVars[main_~x~0, main_~c~0, main_~y~0] {917#(and (= main_~c~0 0) (= main_~y~0 0))} is VALID [2022-04-14 23:00:22,163 INFO L290 TraceCheckUtils]: 12: Hoare triple {917#(and (= main_~c~0 0) (= main_~y~0 0))} [74] L27-2-->L28: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {917#(and (= main_~c~0 0) (= main_~y~0 0))} is VALID [2022-04-14 23:00:22,163 INFO L272 TraceCheckUtils]: 13: Hoare triple {917#(and (= main_~c~0 0) (= main_~y~0 0))} [78] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {879#true} is VALID [2022-04-14 23:00:22,163 INFO L290 TraceCheckUtils]: 14: Hoare triple {879#true} [81] __VERIFIER_assertENTRY-->L10: 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] {879#true} is VALID [2022-04-14 23:00:22,164 INFO L290 TraceCheckUtils]: 15: Hoare triple {879#true} [86] L10-->L10-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[] {879#true} is VALID [2022-04-14 23:00:22,164 INFO L290 TraceCheckUtils]: 16: Hoare triple {879#true} [90] L10-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {879#true} is VALID [2022-04-14 23:00:22,164 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {879#true} {917#(and (= main_~c~0 0) (= main_~y~0 0))} [94] __VERIFIER_assertEXIT-->L28-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {917#(and (= main_~c~0 0) (= main_~y~0 0))} is VALID [2022-04-14 23:00:22,165 INFO L290 TraceCheckUtils]: 18: Hoare triple {917#(and (= main_~c~0 0) (= main_~y~0 0))} [83] L28-1-->L27-2: Formula: (and (= v_main_~c~0_4 (+ v_main_~c~0_5 1)) (< v_main_~c~0_5 v_main_~k~0_6) (= v_main_~y~0_5 (+ v_main_~y~0_6 1)) (= v_main_~x~0_5 (+ v_main_~x~0_6 (* v_main_~y~0_5 (* v_main_~y~0_5 v_main_~y~0_5))))) InVars {main_~y~0=v_main_~y~0_6, main_~c~0=v_main_~c~0_5, main_~x~0=v_main_~x~0_6, main_~k~0=v_main_~k~0_6} OutVars{main_~y~0=v_main_~y~0_5, main_~c~0=v_main_~c~0_4, main_~x~0=v_main_~x~0_5, main_~k~0=v_main_~k~0_6} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_~c~0] {939#(and (= main_~y~0 1) (= main_~c~0 1))} is VALID [2022-04-14 23:00:22,165 INFO L290 TraceCheckUtils]: 19: Hoare triple {939#(and (= main_~y~0 1) (= main_~c~0 1))} [74] L27-2-->L28: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {939#(and (= main_~y~0 1) (= main_~c~0 1))} is VALID [2022-04-14 23:00:22,165 INFO L272 TraceCheckUtils]: 20: Hoare triple {939#(and (= main_~y~0 1) (= main_~c~0 1))} [78] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {879#true} is VALID [2022-04-14 23:00:22,165 INFO L290 TraceCheckUtils]: 21: Hoare triple {879#true} [81] __VERIFIER_assertENTRY-->L10: 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] {879#true} is VALID [2022-04-14 23:00:22,166 INFO L290 TraceCheckUtils]: 22: Hoare triple {879#true} [86] L10-->L10-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[] {879#true} is VALID [2022-04-14 23:00:22,166 INFO L290 TraceCheckUtils]: 23: Hoare triple {879#true} [90] L10-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {879#true} is VALID [2022-04-14 23:00:22,166 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {879#true} {939#(and (= main_~y~0 1) (= main_~c~0 1))} [94] __VERIFIER_assertEXIT-->L28-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {939#(and (= main_~y~0 1) (= main_~c~0 1))} is VALID [2022-04-14 23:00:22,167 INFO L290 TraceCheckUtils]: 25: Hoare triple {939#(and (= main_~y~0 1) (= main_~c~0 1))} [83] L28-1-->L27-2: Formula: (and (= v_main_~c~0_4 (+ v_main_~c~0_5 1)) (< v_main_~c~0_5 v_main_~k~0_6) (= v_main_~y~0_5 (+ v_main_~y~0_6 1)) (= v_main_~x~0_5 (+ v_main_~x~0_6 (* v_main_~y~0_5 (* v_main_~y~0_5 v_main_~y~0_5))))) InVars {main_~y~0=v_main_~y~0_6, main_~c~0=v_main_~c~0_5, main_~x~0=v_main_~x~0_6, main_~k~0=v_main_~k~0_6} OutVars{main_~y~0=v_main_~y~0_5, main_~c~0=v_main_~c~0_4, main_~x~0=v_main_~x~0_5, main_~k~0=v_main_~k~0_6} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_~c~0] {961#(and (< 1 main_~k~0) (= (+ (- 1) main_~y~0) 1) (<= main_~c~0 2))} is VALID [2022-04-14 23:00:22,168 INFO L290 TraceCheckUtils]: 26: Hoare triple {961#(and (< 1 main_~k~0) (= (+ (- 1) main_~y~0) 1) (<= main_~c~0 2))} [74] L27-2-->L28: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {961#(and (< 1 main_~k~0) (= (+ (- 1) main_~y~0) 1) (<= main_~c~0 2))} is VALID [2022-04-14 23:00:22,168 INFO L272 TraceCheckUtils]: 27: Hoare triple {961#(and (< 1 main_~k~0) (= (+ (- 1) main_~y~0) 1) (<= main_~c~0 2))} [78] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {879#true} is VALID [2022-04-14 23:00:22,168 INFO L290 TraceCheckUtils]: 28: Hoare triple {879#true} [81] __VERIFIER_assertENTRY-->L10: 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] {879#true} is VALID [2022-04-14 23:00:22,168 INFO L290 TraceCheckUtils]: 29: Hoare triple {879#true} [86] L10-->L10-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[] {879#true} is VALID [2022-04-14 23:00:22,168 INFO L290 TraceCheckUtils]: 30: Hoare triple {879#true} [90] L10-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {879#true} is VALID [2022-04-14 23:00:22,169 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {879#true} {961#(and (< 1 main_~k~0) (= (+ (- 1) main_~y~0) 1) (<= main_~c~0 2))} [94] __VERIFIER_assertEXIT-->L28-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {961#(and (< 1 main_~k~0) (= (+ (- 1) main_~y~0) 1) (<= main_~c~0 2))} is VALID [2022-04-14 23:00:22,169 INFO L290 TraceCheckUtils]: 32: Hoare triple {961#(and (< 1 main_~k~0) (= (+ (- 1) main_~y~0) 1) (<= main_~c~0 2))} [82] L28-1-->L27-3: Formula: (not (< v_main_~c~0_3 v_main_~k~0_5)) InVars {main_~c~0=v_main_~c~0_3, main_~k~0=v_main_~k~0_5} OutVars{main_~c~0=v_main_~c~0_3, main_~k~0=v_main_~k~0_5} AuxVars[] AssignedVars[] {983#(and (< 1 main_~k~0) (= (+ (- 1) main_~y~0) 1) (<= main_~k~0 2))} is VALID [2022-04-14 23:00:22,170 INFO L272 TraceCheckUtils]: 33: Hoare triple {983#(and (< 1 main_~k~0) (= (+ (- 1) main_~y~0) 1) (<= main_~k~0 2))} [77] L27-3-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= (+ (* v_main_~k~0_9 v_main_~y~0_9) (* (- 1) (* v_main_~y~0_9 v_main_~y~0_9))) 0) 1 0)) InVars {main_~y~0=v_main_~y~0_9, main_~k~0=v_main_~k~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~k~0, main_~y~0] {987#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 23:00:22,170 INFO L290 TraceCheckUtils]: 34: Hoare triple {987#(<= 1 |__VERIFIER_assert_#in~cond|)} [81] __VERIFIER_assertENTRY-->L10: 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] {991#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 23:00:22,171 INFO L290 TraceCheckUtils]: 35: Hoare triple {991#(<= 1 __VERIFIER_assert_~cond)} [85] L10-->L11: 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[] {880#false} is VALID [2022-04-14 23:00:22,171 INFO L290 TraceCheckUtils]: 36: Hoare triple {880#false} [88] L11-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {880#false} is VALID [2022-04-14 23:00:22,171 INFO L134 CoverageAnalysis]: Checked inductivity of 27 backedges. 6 proven. 9 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-14 23:00:22,171 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 23:00:22,400 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 23:00:22,400 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1054542745] [2022-04-14 23:00:22,400 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 23:00:22,400 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [286238526] [2022-04-14 23:00:22,400 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [286238526] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-14 23:00:22,400 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-14 23:00:22,400 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8] total 8 [2022-04-14 23:00:22,401 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1488777517] [2022-04-14 23:00:22,401 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-14 23:00:22,403 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 7 states have internal predecessors, (19), 5 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) Word has length 37 [2022-04-14 23:00:22,405 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 23:00:22,405 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 7 states have internal predecessors, (19), 5 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-14 23:00:22,422 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 23:00:22,422 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-14 23:00:22,422 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 23:00:22,423 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-14 23:00:22,423 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=27, Invalid=83, Unknown=0, NotChecked=0, Total=110 [2022-04-14 23:00:22,423 INFO L87 Difference]: Start difference. First operand 34 states and 35 transitions. Second operand has 8 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 7 states have internal predecessors, (19), 5 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-14 23:00:22,613 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 23:00:22,614 INFO L93 Difference]: Finished difference Result 40 states and 42 transitions. [2022-04-14 23:00:22,614 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-14 23:00:22,614 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 7 states have internal predecessors, (19), 5 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) Word has length 37 [2022-04-14 23:00:22,614 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 23:00:22,614 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 7 states have internal predecessors, (19), 5 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-14 23:00:22,615 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 39 transitions. [2022-04-14 23:00:22,615 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 7 states have internal predecessors, (19), 5 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-14 23:00:22,616 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 39 transitions. [2022-04-14 23:00:22,616 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 39 transitions. [2022-04-14 23:00:22,638 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 23:00:22,639 INFO L225 Difference]: With dead ends: 40 [2022-04-14 23:00:22,639 INFO L226 Difference]: Without dead ends: 37 [2022-04-14 23:00:22,639 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 51 GetRequests, 39 SyntacticMatches, 1 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=37, Invalid=119, Unknown=0, NotChecked=0, Total=156 [2022-04-14 23:00:22,640 INFO L913 BasicCegarLoop]: 28 mSDtfsCounter, 2 mSDsluCounter, 115 mSDsCounter, 0 mSdLazyCounter, 77 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 2 SdHoareTripleChecker+Valid, 143 SdHoareTripleChecker+Invalid, 77 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 77 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-14 23:00:22,640 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [2 Valid, 143 Invalid, 77 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 77 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-14 23:00:22,640 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2022-04-14 23:00:22,642 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 37. [2022-04-14 23:00:22,642 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 23:00:22,642 INFO L82 GeneralOperation]: Start isEquivalent. First operand 37 states. Second operand has 37 states, 24 states have (on average 1.0416666666666667) internal successors, (25), 24 states have internal predecessors, (25), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-14 23:00:22,643 INFO L74 IsIncluded]: Start isIncluded. First operand 37 states. Second operand has 37 states, 24 states have (on average 1.0416666666666667) internal successors, (25), 24 states have internal predecessors, (25), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-14 23:00:22,643 INFO L87 Difference]: Start difference. First operand 37 states. Second operand has 37 states, 24 states have (on average 1.0416666666666667) internal successors, (25), 24 states have internal predecessors, (25), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-14 23:00:22,644 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 23:00:22,644 INFO L93 Difference]: Finished difference Result 37 states and 39 transitions. [2022-04-14 23:00:22,644 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 39 transitions. [2022-04-14 23:00:22,644 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 23:00:22,644 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 23:00:22,645 INFO L74 IsIncluded]: Start isIncluded. First operand has 37 states, 24 states have (on average 1.0416666666666667) internal successors, (25), 24 states have internal predecessors, (25), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 37 states. [2022-04-14 23:00:22,645 INFO L87 Difference]: Start difference. First operand has 37 states, 24 states have (on average 1.0416666666666667) internal successors, (25), 24 states have internal predecessors, (25), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 37 states. [2022-04-14 23:00:22,646 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 23:00:22,646 INFO L93 Difference]: Finished difference Result 37 states and 39 transitions. [2022-04-14 23:00:22,646 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 39 transitions. [2022-04-14 23:00:22,646 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 23:00:22,646 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 23:00:22,646 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 23:00:22,646 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 23:00:22,646 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 24 states have (on average 1.0416666666666667) internal successors, (25), 24 states have internal predecessors, (25), 8 states have call successors, (8), 6 states have call predecessors, (8), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-14 23:00:22,647 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 39 transitions. [2022-04-14 23:00:22,647 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 39 transitions. Word has length 37 [2022-04-14 23:00:22,648 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 23:00:22,648 INFO L478 AbstractCegarLoop]: Abstraction has 37 states and 39 transitions. [2022-04-14 23:00:22,648 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 7 states have internal predecessors, (19), 5 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-14 23:00:22,648 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 39 transitions. [2022-04-14 23:00:22,648 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-04-14 23:00:22,648 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 23:00:22,649 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 23:00:22,668 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-14 23:00:22,849 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 23:00:22,849 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 23:00:22,849 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 23:00:22,850 INFO L85 PathProgramCache]: Analyzing trace with hash 1487404370, now seen corresponding path program 3 times [2022-04-14 23:00:22,850 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 23:00:22,850 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [829881768] [2022-04-14 23:00:22,850 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 23:00:22,850 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 23:00:22,861 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 23:00:22,861 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [455232582] [2022-04-14 23:00:22,861 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-14 23:00:22,862 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 23:00:22,862 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 23:00:22,862 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 23:00:22,863 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-14 23:00:22,958 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2022-04-14 23:00:22,958 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-14 23:00:22,959 INFO L263 TraceCheckSpWp]: Trace formula consists of 129 conjuncts, 20 conjunts are in the unsatisfiable core [2022-04-14 23:00:22,983 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 23:00:22,984 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 23:00:23,278 INFO L272 TraceCheckUtils]: 0: Hoare triple {1194#true} [63] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1194#true} is VALID [2022-04-14 23:00:23,278 INFO L290 TraceCheckUtils]: 1: Hoare triple {1194#true} [65] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 2) 9) (= (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{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1194#true} is VALID [2022-04-14 23:00:23,278 INFO L290 TraceCheckUtils]: 2: Hoare triple {1194#true} [68] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1194#true} is VALID [2022-04-14 23:00:23,278 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1194#true} {1194#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1194#true} is VALID [2022-04-14 23:00:23,278 INFO L272 TraceCheckUtils]: 4: Hoare triple {1194#true} [64] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1194#true} is VALID [2022-04-14 23:00:23,278 INFO L290 TraceCheckUtils]: 5: Hoare triple {1194#true} [67] mainENTRY-->L21: Formula: (and (<= |v_main_#t~nondet4_2| 32767) (<= 0 (+ |v_main_#t~nondet4_2| 32768)) (= v_main_~k~0_1 |v_main_#t~nondet4_2|)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~c~0=v_main_~c~0_1, main_~y~0=v_main_~y~0_2, main_~x~0=v_main_~x~0_2, main_~k~0=v_main_~k~0_1} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~k~0, main_~c~0, main_~y~0] {1194#true} is VALID [2022-04-14 23:00:23,279 INFO L272 TraceCheckUtils]: 6: Hoare triple {1194#true} [69] L21-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~k~0_8) (<= v_main_~k~0_8 5)) 1 0)) InVars {main_~k~0=v_main_~k~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~k~0, assume_abort_if_not_#in~cond] {1194#true} is VALID [2022-04-14 23:00:23,279 INFO L290 TraceCheckUtils]: 7: Hoare triple {1194#true} [71] assume_abort_if_notENTRY-->L7: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1194#true} is VALID [2022-04-14 23:00:23,279 INFO L290 TraceCheckUtils]: 8: Hoare triple {1194#true} [76] L7-->L7-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1194#true} is VALID [2022-04-14 23:00:23,279 INFO L290 TraceCheckUtils]: 9: Hoare triple {1194#true} [79] L7-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1194#true} is VALID [2022-04-14 23:00:23,279 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1194#true} {1194#true} [92] assume_abort_if_notEXIT-->L21-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~k~0_8) (<= v_main_~k~0_8 5)) 1 0)) InVars {main_~k~0=v_main_~k~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~k~0, assume_abort_if_not_#in~cond] {1194#true} is VALID [2022-04-14 23:00:23,279 INFO L290 TraceCheckUtils]: 11: Hoare triple {1194#true} [70] L21-1-->L27-2: Formula: (and (= v_main_~c~0_2 0) (= v_main_~y~0_3 0) (= v_main_~x~0_3 0)) InVars {} OutVars{main_~c~0=v_main_~c~0_2, main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3} AuxVars[] AssignedVars[main_~x~0, main_~c~0, main_~y~0] {1232#(and (= main_~c~0 0) (= main_~y~0 0))} is VALID [2022-04-14 23:00:23,280 INFO L290 TraceCheckUtils]: 12: Hoare triple {1232#(and (= main_~c~0 0) (= main_~y~0 0))} [74] L27-2-->L28: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1232#(and (= main_~c~0 0) (= main_~y~0 0))} is VALID [2022-04-14 23:00:23,280 INFO L272 TraceCheckUtils]: 13: Hoare triple {1232#(and (= main_~c~0 0) (= main_~y~0 0))} [78] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {1194#true} is VALID [2022-04-14 23:00:23,280 INFO L290 TraceCheckUtils]: 14: Hoare triple {1194#true} [81] __VERIFIER_assertENTRY-->L10: 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] {1194#true} is VALID [2022-04-14 23:00:23,280 INFO L290 TraceCheckUtils]: 15: Hoare triple {1194#true} [86] L10-->L10-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[] {1194#true} is VALID [2022-04-14 23:00:23,280 INFO L290 TraceCheckUtils]: 16: Hoare triple {1194#true} [90] L10-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1194#true} is VALID [2022-04-14 23:00:23,281 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {1194#true} {1232#(and (= main_~c~0 0) (= main_~y~0 0))} [94] __VERIFIER_assertEXIT-->L28-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {1232#(and (= main_~c~0 0) (= main_~y~0 0))} is VALID [2022-04-14 23:00:23,281 INFO L290 TraceCheckUtils]: 18: Hoare triple {1232#(and (= main_~c~0 0) (= main_~y~0 0))} [83] L28-1-->L27-2: Formula: (and (= v_main_~c~0_4 (+ v_main_~c~0_5 1)) (< v_main_~c~0_5 v_main_~k~0_6) (= v_main_~y~0_5 (+ v_main_~y~0_6 1)) (= v_main_~x~0_5 (+ v_main_~x~0_6 (* v_main_~y~0_5 (* v_main_~y~0_5 v_main_~y~0_5))))) InVars {main_~y~0=v_main_~y~0_6, main_~c~0=v_main_~c~0_5, main_~x~0=v_main_~x~0_6, main_~k~0=v_main_~k~0_6} OutVars{main_~y~0=v_main_~y~0_5, main_~c~0=v_main_~c~0_4, main_~x~0=v_main_~x~0_5, main_~k~0=v_main_~k~0_6} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_~c~0] {1254#(and (= (+ (- 1) main_~y~0) 0) (= (+ (- 1) main_~c~0) 0))} is VALID [2022-04-14 23:00:23,282 INFO L290 TraceCheckUtils]: 19: Hoare triple {1254#(and (= (+ (- 1) main_~y~0) 0) (= (+ (- 1) main_~c~0) 0))} [74] L27-2-->L28: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1254#(and (= (+ (- 1) main_~y~0) 0) (= (+ (- 1) main_~c~0) 0))} is VALID [2022-04-14 23:00:23,282 INFO L272 TraceCheckUtils]: 20: Hoare triple {1254#(and (= (+ (- 1) main_~y~0) 0) (= (+ (- 1) main_~c~0) 0))} [78] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {1194#true} is VALID [2022-04-14 23:00:23,282 INFO L290 TraceCheckUtils]: 21: Hoare triple {1194#true} [81] __VERIFIER_assertENTRY-->L10: 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] {1194#true} is VALID [2022-04-14 23:00:23,282 INFO L290 TraceCheckUtils]: 22: Hoare triple {1194#true} [86] L10-->L10-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[] {1194#true} is VALID [2022-04-14 23:00:23,282 INFO L290 TraceCheckUtils]: 23: Hoare triple {1194#true} [90] L10-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1194#true} is VALID [2022-04-14 23:00:23,283 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {1194#true} {1254#(and (= (+ (- 1) main_~y~0) 0) (= (+ (- 1) main_~c~0) 0))} [94] __VERIFIER_assertEXIT-->L28-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {1254#(and (= (+ (- 1) main_~y~0) 0) (= (+ (- 1) main_~c~0) 0))} is VALID [2022-04-14 23:00:23,284 INFO L290 TraceCheckUtils]: 25: Hoare triple {1254#(and (= (+ (- 1) main_~y~0) 0) (= (+ (- 1) main_~c~0) 0))} [83] L28-1-->L27-2: Formula: (and (= v_main_~c~0_4 (+ v_main_~c~0_5 1)) (< v_main_~c~0_5 v_main_~k~0_6) (= v_main_~y~0_5 (+ v_main_~y~0_6 1)) (= v_main_~x~0_5 (+ v_main_~x~0_6 (* v_main_~y~0_5 (* v_main_~y~0_5 v_main_~y~0_5))))) InVars {main_~y~0=v_main_~y~0_6, main_~c~0=v_main_~c~0_5, main_~x~0=v_main_~x~0_6, main_~k~0=v_main_~k~0_6} OutVars{main_~y~0=v_main_~y~0_5, main_~c~0=v_main_~c~0_4, main_~x~0=v_main_~x~0_5, main_~k~0=v_main_~k~0_6} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_~c~0] {1276#(and (= (+ (- 2) main_~y~0) 0) (= 0 (+ (- 2) main_~c~0)))} is VALID [2022-04-14 23:00:23,284 INFO L290 TraceCheckUtils]: 26: Hoare triple {1276#(and (= (+ (- 2) main_~y~0) 0) (= 0 (+ (- 2) main_~c~0)))} [74] L27-2-->L28: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1276#(and (= (+ (- 2) main_~y~0) 0) (= 0 (+ (- 2) main_~c~0)))} is VALID [2022-04-14 23:00:23,284 INFO L272 TraceCheckUtils]: 27: Hoare triple {1276#(and (= (+ (- 2) main_~y~0) 0) (= 0 (+ (- 2) main_~c~0)))} [78] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {1194#true} is VALID [2022-04-14 23:00:23,284 INFO L290 TraceCheckUtils]: 28: Hoare triple {1194#true} [81] __VERIFIER_assertENTRY-->L10: 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] {1194#true} is VALID [2022-04-14 23:00:23,284 INFO L290 TraceCheckUtils]: 29: Hoare triple {1194#true} [86] L10-->L10-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[] {1194#true} is VALID [2022-04-14 23:00:23,284 INFO L290 TraceCheckUtils]: 30: Hoare triple {1194#true} [90] L10-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1194#true} is VALID [2022-04-14 23:00:23,287 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {1194#true} {1276#(and (= (+ (- 2) main_~y~0) 0) (= 0 (+ (- 2) main_~c~0)))} [94] __VERIFIER_assertEXIT-->L28-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {1276#(and (= (+ (- 2) main_~y~0) 0) (= 0 (+ (- 2) main_~c~0)))} is VALID [2022-04-14 23:00:23,288 INFO L290 TraceCheckUtils]: 32: Hoare triple {1276#(and (= (+ (- 2) main_~y~0) 0) (= 0 (+ (- 2) main_~c~0)))} [83] L28-1-->L27-2: Formula: (and (= v_main_~c~0_4 (+ v_main_~c~0_5 1)) (< v_main_~c~0_5 v_main_~k~0_6) (= v_main_~y~0_5 (+ v_main_~y~0_6 1)) (= v_main_~x~0_5 (+ v_main_~x~0_6 (* v_main_~y~0_5 (* v_main_~y~0_5 v_main_~y~0_5))))) InVars {main_~y~0=v_main_~y~0_6, main_~c~0=v_main_~c~0_5, main_~x~0=v_main_~x~0_6, main_~k~0=v_main_~k~0_6} OutVars{main_~y~0=v_main_~y~0_5, main_~c~0=v_main_~c~0_4, main_~x~0=v_main_~x~0_5, main_~k~0=v_main_~k~0_6} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_~c~0] {1298#(and (<= main_~c~0 3) (= (+ main_~y~0 (- 3)) 0) (< 2 main_~k~0))} is VALID [2022-04-14 23:00:23,288 INFO L290 TraceCheckUtils]: 33: Hoare triple {1298#(and (<= main_~c~0 3) (= (+ main_~y~0 (- 3)) 0) (< 2 main_~k~0))} [74] L27-2-->L28: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1298#(and (<= main_~c~0 3) (= (+ main_~y~0 (- 3)) 0) (< 2 main_~k~0))} is VALID [2022-04-14 23:00:23,288 INFO L272 TraceCheckUtils]: 34: Hoare triple {1298#(and (<= main_~c~0 3) (= (+ main_~y~0 (- 3)) 0) (< 2 main_~k~0))} [78] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {1194#true} is VALID [2022-04-14 23:00:23,288 INFO L290 TraceCheckUtils]: 35: Hoare triple {1194#true} [81] __VERIFIER_assertENTRY-->L10: 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] {1194#true} is VALID [2022-04-14 23:00:23,289 INFO L290 TraceCheckUtils]: 36: Hoare triple {1194#true} [86] L10-->L10-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[] {1194#true} is VALID [2022-04-14 23:00:23,289 INFO L290 TraceCheckUtils]: 37: Hoare triple {1194#true} [90] L10-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1194#true} is VALID [2022-04-14 23:00:23,289 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {1194#true} {1298#(and (<= main_~c~0 3) (= (+ main_~y~0 (- 3)) 0) (< 2 main_~k~0))} [94] __VERIFIER_assertEXIT-->L28-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {1298#(and (<= main_~c~0 3) (= (+ main_~y~0 (- 3)) 0) (< 2 main_~k~0))} is VALID [2022-04-14 23:00:23,290 INFO L290 TraceCheckUtils]: 39: Hoare triple {1298#(and (<= main_~c~0 3) (= (+ main_~y~0 (- 3)) 0) (< 2 main_~k~0))} [82] L28-1-->L27-3: Formula: (not (< v_main_~c~0_3 v_main_~k~0_5)) InVars {main_~c~0=v_main_~c~0_3, main_~k~0=v_main_~k~0_5} OutVars{main_~c~0=v_main_~c~0_3, main_~k~0=v_main_~k~0_5} AuxVars[] AssignedVars[] {1320#(and (<= main_~k~0 3) (= (+ main_~y~0 (- 3)) 0) (< 2 main_~k~0))} is VALID [2022-04-14 23:00:23,290 INFO L272 TraceCheckUtils]: 40: Hoare triple {1320#(and (<= main_~k~0 3) (= (+ main_~y~0 (- 3)) 0) (< 2 main_~k~0))} [77] L27-3-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= (+ (* v_main_~k~0_9 v_main_~y~0_9) (* (- 1) (* v_main_~y~0_9 v_main_~y~0_9))) 0) 1 0)) InVars {main_~y~0=v_main_~y~0_9, main_~k~0=v_main_~k~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~k~0, main_~y~0] {1324#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 23:00:23,291 INFO L290 TraceCheckUtils]: 41: Hoare triple {1324#(<= 1 |__VERIFIER_assert_#in~cond|)} [81] __VERIFIER_assertENTRY-->L10: 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] {1328#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 23:00:23,291 INFO L290 TraceCheckUtils]: 42: Hoare triple {1328#(<= 1 __VERIFIER_assert_~cond)} [85] L10-->L11: 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[] {1195#false} is VALID [2022-04-14 23:00:23,291 INFO L290 TraceCheckUtils]: 43: Hoare triple {1195#false} [88] L11-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1195#false} is VALID [2022-04-14 23:00:23,291 INFO L134 CoverageAnalysis]: Checked inductivity of 50 backedges. 8 proven. 18 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-14 23:00:23,292 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 23:00:23,527 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 23:00:23,527 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [829881768] [2022-04-14 23:00:23,527 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 23:00:23,528 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [455232582] [2022-04-14 23:00:23,528 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [455232582] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-14 23:00:23,528 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-14 23:00:23,528 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9] total 9 [2022-04-14 23:00:23,528 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2054048502] [2022-04-14 23:00:23,528 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-14 23:00:23,528 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.625) internal successors, (21), 8 states have internal predecessors, (21), 6 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 5 states have call predecessors, (6), 5 states have call successors, (6) Word has length 44 [2022-04-14 23:00:23,528 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 23:00:23,529 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.625) internal successors, (21), 8 states have internal predecessors, (21), 6 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 5 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-14 23:00:23,549 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 35 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 23:00:23,550 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-14 23:00:23,550 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 23:00:23,550 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-14 23:00:23,550 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=30, Invalid=102, Unknown=0, NotChecked=0, Total=132 [2022-04-14 23:00:23,550 INFO L87 Difference]: Start difference. First operand 37 states and 39 transitions. Second operand has 9 states, 8 states have (on average 2.625) internal successors, (21), 8 states have internal predecessors, (21), 6 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 5 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-14 23:00:23,832 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 23:00:23,832 INFO L93 Difference]: Finished difference Result 43 states and 46 transitions. [2022-04-14 23:00:23,832 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-14 23:00:23,832 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.625) internal successors, (21), 8 states have internal predecessors, (21), 6 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 5 states have call predecessors, (6), 5 states have call successors, (6) Word has length 44 [2022-04-14 23:00:23,833 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 23:00:23,833 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.625) internal successors, (21), 8 states have internal predecessors, (21), 6 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 5 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-14 23:00:23,834 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 43 transitions. [2022-04-14 23:00:23,834 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.625) internal successors, (21), 8 states have internal predecessors, (21), 6 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 5 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-14 23:00:23,835 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 43 transitions. [2022-04-14 23:00:23,835 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 43 transitions. [2022-04-14 23:00:23,868 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-14 23:00:23,869 INFO L225 Difference]: With dead ends: 43 [2022-04-14 23:00:23,869 INFO L226 Difference]: Without dead ends: 40 [2022-04-14 23:00:23,869 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 58 GetRequests, 45 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=40, Invalid=142, Unknown=0, NotChecked=0, Total=182 [2022-04-14 23:00:23,870 INFO L913 BasicCegarLoop]: 31 mSDtfsCounter, 2 mSDsluCounter, 142 mSDsCounter, 0 mSdLazyCounter, 109 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 2 SdHoareTripleChecker+Valid, 173 SdHoareTripleChecker+Invalid, 109 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 109 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-14 23:00:23,870 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [2 Valid, 173 Invalid, 109 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 109 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-14 23:00:23,870 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 40 states. [2022-04-14 23:00:23,872 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 40 to 40. [2022-04-14 23:00:23,872 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 23:00:23,872 INFO L82 GeneralOperation]: Start isEquivalent. First operand 40 states. Second operand has 40 states, 26 states have (on average 1.0384615384615385) internal successors, (27), 26 states have internal predecessors, (27), 9 states have call successors, (9), 6 states have call predecessors, (9), 4 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-14 23:00:23,872 INFO L74 IsIncluded]: Start isIncluded. First operand 40 states. Second operand has 40 states, 26 states have (on average 1.0384615384615385) internal successors, (27), 26 states have internal predecessors, (27), 9 states have call successors, (9), 6 states have call predecessors, (9), 4 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-14 23:00:23,872 INFO L87 Difference]: Start difference. First operand 40 states. Second operand has 40 states, 26 states have (on average 1.0384615384615385) internal successors, (27), 26 states have internal predecessors, (27), 9 states have call successors, (9), 6 states have call predecessors, (9), 4 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-14 23:00:23,873 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 23:00:23,873 INFO L93 Difference]: Finished difference Result 40 states and 43 transitions. [2022-04-14 23:00:23,873 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 43 transitions. [2022-04-14 23:00:23,874 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 23:00:23,874 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 23:00:23,874 INFO L74 IsIncluded]: Start isIncluded. First operand has 40 states, 26 states have (on average 1.0384615384615385) internal successors, (27), 26 states have internal predecessors, (27), 9 states have call successors, (9), 6 states have call predecessors, (9), 4 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 40 states. [2022-04-14 23:00:23,874 INFO L87 Difference]: Start difference. First operand has 40 states, 26 states have (on average 1.0384615384615385) internal successors, (27), 26 states have internal predecessors, (27), 9 states have call successors, (9), 6 states have call predecessors, (9), 4 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 40 states. [2022-04-14 23:00:23,875 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 23:00:23,875 INFO L93 Difference]: Finished difference Result 40 states and 43 transitions. [2022-04-14 23:00:23,875 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 43 transitions. [2022-04-14 23:00:23,875 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 23:00:23,875 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 23:00:23,875 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 23:00:23,876 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 23:00:23,876 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 40 states, 26 states have (on average 1.0384615384615385) internal successors, (27), 26 states have internal predecessors, (27), 9 states have call successors, (9), 6 states have call predecessors, (9), 4 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-14 23:00:23,877 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 43 transitions. [2022-04-14 23:00:23,877 INFO L78 Accepts]: Start accepts. Automaton has 40 states and 43 transitions. Word has length 44 [2022-04-14 23:00:23,877 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 23:00:23,877 INFO L478 AbstractCegarLoop]: Abstraction has 40 states and 43 transitions. [2022-04-14 23:00:23,877 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.625) internal successors, (21), 8 states have internal predecessors, (21), 6 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 5 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-14 23:00:23,877 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 43 transitions. [2022-04-14 23:00:23,878 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 52 [2022-04-14 23:00:23,878 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 23:00:23,878 INFO L499 BasicCegarLoop]: trace histogram [6, 5, 5, 5, 5, 5, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 23:00:23,889 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-14 23:00:24,078 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 23:00:24,078 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 23:00:24,079 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 23:00:24,079 INFO L85 PathProgramCache]: Analyzing trace with hash 1178929216, now seen corresponding path program 4 times [2022-04-14 23:00:24,079 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 23:00:24,079 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [600402867] [2022-04-14 23:00:24,079 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 23:00:24,079 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 23:00:24,096 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 23:00:24,096 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [974078885] [2022-04-14 23:00:24,096 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-14 23:00:24,096 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 23:00:24,096 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 23:00:24,097 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 23:00:24,098 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-14 23:00:24,190 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-14 23:00:24,190 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-14 23:00:24,191 INFO L263 TraceCheckSpWp]: Trace formula consists of 119 conjuncts, 24 conjunts are in the unsatisfiable core [2022-04-14 23:00:24,204 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 23:00:24,205 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 23:00:24,489 INFO L272 TraceCheckUtils]: 0: Hoare triple {1543#true} [63] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1543#true} is VALID [2022-04-14 23:00:24,489 INFO L290 TraceCheckUtils]: 1: Hoare triple {1543#true} [65] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 2) 9) (= (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{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1543#true} is VALID [2022-04-14 23:00:24,489 INFO L290 TraceCheckUtils]: 2: Hoare triple {1543#true} [68] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1543#true} is VALID [2022-04-14 23:00:24,489 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1543#true} {1543#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1543#true} is VALID [2022-04-14 23:00:24,489 INFO L272 TraceCheckUtils]: 4: Hoare triple {1543#true} [64] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1543#true} is VALID [2022-04-14 23:00:24,489 INFO L290 TraceCheckUtils]: 5: Hoare triple {1543#true} [67] mainENTRY-->L21: Formula: (and (<= |v_main_#t~nondet4_2| 32767) (<= 0 (+ |v_main_#t~nondet4_2| 32768)) (= v_main_~k~0_1 |v_main_#t~nondet4_2|)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~c~0=v_main_~c~0_1, main_~y~0=v_main_~y~0_2, main_~x~0=v_main_~x~0_2, main_~k~0=v_main_~k~0_1} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~k~0, main_~c~0, main_~y~0] {1543#true} is VALID [2022-04-14 23:00:24,489 INFO L272 TraceCheckUtils]: 6: Hoare triple {1543#true} [69] L21-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~k~0_8) (<= v_main_~k~0_8 5)) 1 0)) InVars {main_~k~0=v_main_~k~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~k~0, assume_abort_if_not_#in~cond] {1543#true} is VALID [2022-04-14 23:00:24,490 INFO L290 TraceCheckUtils]: 7: Hoare triple {1543#true} [71] assume_abort_if_notENTRY-->L7: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1543#true} is VALID [2022-04-14 23:00:24,490 INFO L290 TraceCheckUtils]: 8: Hoare triple {1543#true} [76] L7-->L7-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1543#true} is VALID [2022-04-14 23:00:24,490 INFO L290 TraceCheckUtils]: 9: Hoare triple {1543#true} [79] L7-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1543#true} is VALID [2022-04-14 23:00:24,490 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1543#true} {1543#true} [92] assume_abort_if_notEXIT-->L21-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~k~0_8) (<= v_main_~k~0_8 5)) 1 0)) InVars {main_~k~0=v_main_~k~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~k~0, assume_abort_if_not_#in~cond] {1543#true} is VALID [2022-04-14 23:00:24,490 INFO L290 TraceCheckUtils]: 11: Hoare triple {1543#true} [70] L21-1-->L27-2: Formula: (and (= v_main_~c~0_2 0) (= v_main_~y~0_3 0) (= v_main_~x~0_3 0)) InVars {} OutVars{main_~c~0=v_main_~c~0_2, main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3} AuxVars[] AssignedVars[main_~x~0, main_~c~0, main_~y~0] {1581#(and (= main_~c~0 0) (= main_~y~0 0))} is VALID [2022-04-14 23:00:24,491 INFO L290 TraceCheckUtils]: 12: Hoare triple {1581#(and (= main_~c~0 0) (= main_~y~0 0))} [74] L27-2-->L28: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1581#(and (= main_~c~0 0) (= main_~y~0 0))} is VALID [2022-04-14 23:00:24,491 INFO L272 TraceCheckUtils]: 13: Hoare triple {1581#(and (= main_~c~0 0) (= main_~y~0 0))} [78] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {1543#true} is VALID [2022-04-14 23:00:24,491 INFO L290 TraceCheckUtils]: 14: Hoare triple {1543#true} [81] __VERIFIER_assertENTRY-->L10: 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] {1543#true} is VALID [2022-04-14 23:00:24,491 INFO L290 TraceCheckUtils]: 15: Hoare triple {1543#true} [86] L10-->L10-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[] {1543#true} is VALID [2022-04-14 23:00:24,491 INFO L290 TraceCheckUtils]: 16: Hoare triple {1543#true} [90] L10-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1543#true} is VALID [2022-04-14 23:00:24,491 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {1543#true} {1581#(and (= main_~c~0 0) (= main_~y~0 0))} [94] __VERIFIER_assertEXIT-->L28-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {1581#(and (= main_~c~0 0) (= main_~y~0 0))} is VALID [2022-04-14 23:00:24,492 INFO L290 TraceCheckUtils]: 18: Hoare triple {1581#(and (= main_~c~0 0) (= main_~y~0 0))} [83] L28-1-->L27-2: Formula: (and (= v_main_~c~0_4 (+ v_main_~c~0_5 1)) (< v_main_~c~0_5 v_main_~k~0_6) (= v_main_~y~0_5 (+ v_main_~y~0_6 1)) (= v_main_~x~0_5 (+ v_main_~x~0_6 (* v_main_~y~0_5 (* v_main_~y~0_5 v_main_~y~0_5))))) InVars {main_~y~0=v_main_~y~0_6, main_~c~0=v_main_~c~0_5, main_~x~0=v_main_~x~0_6, main_~k~0=v_main_~k~0_6} OutVars{main_~y~0=v_main_~y~0_5, main_~c~0=v_main_~c~0_4, main_~x~0=v_main_~x~0_5, main_~k~0=v_main_~k~0_6} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_~c~0] {1603#(and (= (+ (- 1) main_~c~0) 0) (= main_~y~0 1))} is VALID [2022-04-14 23:00:24,492 INFO L290 TraceCheckUtils]: 19: Hoare triple {1603#(and (= (+ (- 1) main_~c~0) 0) (= main_~y~0 1))} [74] L27-2-->L28: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1603#(and (= (+ (- 1) main_~c~0) 0) (= main_~y~0 1))} is VALID [2022-04-14 23:00:24,492 INFO L272 TraceCheckUtils]: 20: Hoare triple {1603#(and (= (+ (- 1) main_~c~0) 0) (= main_~y~0 1))} [78] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {1543#true} is VALID [2022-04-14 23:00:24,492 INFO L290 TraceCheckUtils]: 21: Hoare triple {1543#true} [81] __VERIFIER_assertENTRY-->L10: 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] {1543#true} is VALID [2022-04-14 23:00:24,493 INFO L290 TraceCheckUtils]: 22: Hoare triple {1543#true} [86] L10-->L10-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[] {1543#true} is VALID [2022-04-14 23:00:24,493 INFO L290 TraceCheckUtils]: 23: Hoare triple {1543#true} [90] L10-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1543#true} is VALID [2022-04-14 23:00:24,494 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {1543#true} {1603#(and (= (+ (- 1) main_~c~0) 0) (= main_~y~0 1))} [94] __VERIFIER_assertEXIT-->L28-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {1603#(and (= (+ (- 1) main_~c~0) 0) (= main_~y~0 1))} is VALID [2022-04-14 23:00:24,494 INFO L290 TraceCheckUtils]: 25: Hoare triple {1603#(and (= (+ (- 1) main_~c~0) 0) (= main_~y~0 1))} [83] L28-1-->L27-2: Formula: (and (= v_main_~c~0_4 (+ v_main_~c~0_5 1)) (< v_main_~c~0_5 v_main_~k~0_6) (= v_main_~y~0_5 (+ v_main_~y~0_6 1)) (= v_main_~x~0_5 (+ v_main_~x~0_6 (* v_main_~y~0_5 (* v_main_~y~0_5 v_main_~y~0_5))))) InVars {main_~y~0=v_main_~y~0_6, main_~c~0=v_main_~c~0_5, main_~x~0=v_main_~x~0_6, main_~k~0=v_main_~k~0_6} OutVars{main_~y~0=v_main_~y~0_5, main_~c~0=v_main_~c~0_4, main_~x~0=v_main_~x~0_5, main_~k~0=v_main_~k~0_6} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_~c~0] {1625#(and (= (+ (- 1) main_~y~0) 1) (= 0 (+ (- 2) main_~c~0)))} is VALID [2022-04-14 23:00:24,494 INFO L290 TraceCheckUtils]: 26: Hoare triple {1625#(and (= (+ (- 1) main_~y~0) 1) (= 0 (+ (- 2) main_~c~0)))} [74] L27-2-->L28: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1625#(and (= (+ (- 1) main_~y~0) 1) (= 0 (+ (- 2) main_~c~0)))} is VALID [2022-04-14 23:00:24,494 INFO L272 TraceCheckUtils]: 27: Hoare triple {1625#(and (= (+ (- 1) main_~y~0) 1) (= 0 (+ (- 2) main_~c~0)))} [78] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {1543#true} is VALID [2022-04-14 23:00:24,495 INFO L290 TraceCheckUtils]: 28: Hoare triple {1543#true} [81] __VERIFIER_assertENTRY-->L10: 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] {1543#true} is VALID [2022-04-14 23:00:24,495 INFO L290 TraceCheckUtils]: 29: Hoare triple {1543#true} [86] L10-->L10-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[] {1543#true} is VALID [2022-04-14 23:00:24,495 INFO L290 TraceCheckUtils]: 30: Hoare triple {1543#true} [90] L10-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1543#true} is VALID [2022-04-14 23:00:24,496 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {1543#true} {1625#(and (= (+ (- 1) main_~y~0) 1) (= 0 (+ (- 2) main_~c~0)))} [94] __VERIFIER_assertEXIT-->L28-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {1625#(and (= (+ (- 1) main_~y~0) 1) (= 0 (+ (- 2) main_~c~0)))} is VALID [2022-04-14 23:00:24,496 INFO L290 TraceCheckUtils]: 32: Hoare triple {1625#(and (= (+ (- 1) main_~y~0) 1) (= 0 (+ (- 2) main_~c~0)))} [83] L28-1-->L27-2: Formula: (and (= v_main_~c~0_4 (+ v_main_~c~0_5 1)) (< v_main_~c~0_5 v_main_~k~0_6) (= v_main_~y~0_5 (+ v_main_~y~0_6 1)) (= v_main_~x~0_5 (+ v_main_~x~0_6 (* v_main_~y~0_5 (* v_main_~y~0_5 v_main_~y~0_5))))) InVars {main_~y~0=v_main_~y~0_6, main_~c~0=v_main_~c~0_5, main_~x~0=v_main_~x~0_6, main_~k~0=v_main_~k~0_6} OutVars{main_~y~0=v_main_~y~0_5, main_~c~0=v_main_~c~0_4, main_~x~0=v_main_~x~0_5, main_~k~0=v_main_~k~0_6} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_~c~0] {1647#(and (= (+ (- 2) main_~y~0) 1) (= (+ main_~c~0 (- 3)) 0))} is VALID [2022-04-14 23:00:24,496 INFO L290 TraceCheckUtils]: 33: Hoare triple {1647#(and (= (+ (- 2) main_~y~0) 1) (= (+ main_~c~0 (- 3)) 0))} [74] L27-2-->L28: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1647#(and (= (+ (- 2) main_~y~0) 1) (= (+ main_~c~0 (- 3)) 0))} is VALID [2022-04-14 23:00:24,496 INFO L272 TraceCheckUtils]: 34: Hoare triple {1647#(and (= (+ (- 2) main_~y~0) 1) (= (+ main_~c~0 (- 3)) 0))} [78] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {1543#true} is VALID [2022-04-14 23:00:24,497 INFO L290 TraceCheckUtils]: 35: Hoare triple {1543#true} [81] __VERIFIER_assertENTRY-->L10: 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] {1543#true} is VALID [2022-04-14 23:00:24,497 INFO L290 TraceCheckUtils]: 36: Hoare triple {1543#true} [86] L10-->L10-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[] {1543#true} is VALID [2022-04-14 23:00:24,497 INFO L290 TraceCheckUtils]: 37: Hoare triple {1543#true} [90] L10-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1543#true} is VALID [2022-04-14 23:00:24,497 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {1543#true} {1647#(and (= (+ (- 2) main_~y~0) 1) (= (+ main_~c~0 (- 3)) 0))} [94] __VERIFIER_assertEXIT-->L28-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {1647#(and (= (+ (- 2) main_~y~0) 1) (= (+ main_~c~0 (- 3)) 0))} is VALID [2022-04-14 23:00:24,498 INFO L290 TraceCheckUtils]: 39: Hoare triple {1647#(and (= (+ (- 2) main_~y~0) 1) (= (+ main_~c~0 (- 3)) 0))} [83] L28-1-->L27-2: Formula: (and (= v_main_~c~0_4 (+ v_main_~c~0_5 1)) (< v_main_~c~0_5 v_main_~k~0_6) (= v_main_~y~0_5 (+ v_main_~y~0_6 1)) (= v_main_~x~0_5 (+ v_main_~x~0_6 (* v_main_~y~0_5 (* v_main_~y~0_5 v_main_~y~0_5))))) InVars {main_~y~0=v_main_~y~0_6, main_~c~0=v_main_~c~0_5, main_~x~0=v_main_~x~0_6, main_~k~0=v_main_~k~0_6} OutVars{main_~y~0=v_main_~y~0_5, main_~c~0=v_main_~c~0_4, main_~x~0=v_main_~x~0_5, main_~k~0=v_main_~k~0_6} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_~c~0] {1669#(and (= main_~y~0 4) (< 3 main_~k~0) (<= main_~c~0 4))} is VALID [2022-04-14 23:00:24,498 INFO L290 TraceCheckUtils]: 40: Hoare triple {1669#(and (= main_~y~0 4) (< 3 main_~k~0) (<= main_~c~0 4))} [74] L27-2-->L28: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1669#(and (= main_~y~0 4) (< 3 main_~k~0) (<= main_~c~0 4))} is VALID [2022-04-14 23:00:24,498 INFO L272 TraceCheckUtils]: 41: Hoare triple {1669#(and (= main_~y~0 4) (< 3 main_~k~0) (<= main_~c~0 4))} [78] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {1543#true} is VALID [2022-04-14 23:00:24,499 INFO L290 TraceCheckUtils]: 42: Hoare triple {1543#true} [81] __VERIFIER_assertENTRY-->L10: 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] {1543#true} is VALID [2022-04-14 23:00:24,499 INFO L290 TraceCheckUtils]: 43: Hoare triple {1543#true} [86] L10-->L10-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[] {1543#true} is VALID [2022-04-14 23:00:24,499 INFO L290 TraceCheckUtils]: 44: Hoare triple {1543#true} [90] L10-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1543#true} is VALID [2022-04-14 23:00:24,500 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {1543#true} {1669#(and (= main_~y~0 4) (< 3 main_~k~0) (<= main_~c~0 4))} [94] __VERIFIER_assertEXIT-->L28-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {1669#(and (= main_~y~0 4) (< 3 main_~k~0) (<= main_~c~0 4))} is VALID [2022-04-14 23:00:24,503 INFO L290 TraceCheckUtils]: 46: Hoare triple {1669#(and (= main_~y~0 4) (< 3 main_~k~0) (<= main_~c~0 4))} [82] L28-1-->L27-3: Formula: (not (< v_main_~c~0_3 v_main_~k~0_5)) InVars {main_~c~0=v_main_~c~0_3, main_~k~0=v_main_~k~0_5} OutVars{main_~c~0=v_main_~c~0_3, main_~k~0=v_main_~k~0_5} AuxVars[] AssignedVars[] {1691#(and (= main_~y~0 4) (< 3 main_~k~0) (<= main_~k~0 4))} is VALID [2022-04-14 23:00:24,504 INFO L272 TraceCheckUtils]: 47: Hoare triple {1691#(and (= main_~y~0 4) (< 3 main_~k~0) (<= main_~k~0 4))} [77] L27-3-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= (+ (* v_main_~k~0_9 v_main_~y~0_9) (* (- 1) (* v_main_~y~0_9 v_main_~y~0_9))) 0) 1 0)) InVars {main_~y~0=v_main_~y~0_9, main_~k~0=v_main_~k~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~k~0, main_~y~0] {1695#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 23:00:24,507 INFO L290 TraceCheckUtils]: 48: Hoare triple {1695#(<= 1 |__VERIFIER_assert_#in~cond|)} [81] __VERIFIER_assertENTRY-->L10: 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] {1699#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 23:00:24,507 INFO L290 TraceCheckUtils]: 49: Hoare triple {1699#(<= 1 __VERIFIER_assert_~cond)} [85] L10-->L11: 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[] {1544#false} is VALID [2022-04-14 23:00:24,508 INFO L290 TraceCheckUtils]: 50: Hoare triple {1544#false} [88] L11-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1544#false} is VALID [2022-04-14 23:00:24,508 INFO L134 CoverageAnalysis]: Checked inductivity of 80 backedges. 10 proven. 30 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-04-14 23:00:24,508 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 23:00:24,730 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 23:00:24,730 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [600402867] [2022-04-14 23:00:24,730 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 23:00:24,730 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [974078885] [2022-04-14 23:00:24,730 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [974078885] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-14 23:00:24,730 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-14 23:00:24,730 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10] total 10 [2022-04-14 23:00:24,731 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1163298800] [2022-04-14 23:00:24,731 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-14 23:00:24,731 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 9 states have internal predecessors, (23), 7 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 6 states have call predecessors, (7), 6 states have call successors, (7) Word has length 51 [2022-04-14 23:00:24,731 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 23:00:24,743 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 9 states have internal predecessors, (23), 7 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 6 states have call predecessors, (7), 6 states have call successors, (7) [2022-04-14 23:00:24,768 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 23:00:24,768 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-14 23:00:24,768 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 23:00:24,769 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-14 23:00:24,769 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=123, Unknown=0, NotChecked=0, Total=156 [2022-04-14 23:00:24,769 INFO L87 Difference]: Start difference. First operand 40 states and 43 transitions. Second operand has 10 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 9 states have internal predecessors, (23), 7 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 6 states have call predecessors, (7), 6 states have call successors, (7) [2022-04-14 23:00:25,099 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 23:00:25,100 INFO L93 Difference]: Finished difference Result 46 states and 50 transitions. [2022-04-14 23:00:25,100 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-14 23:00:25,100 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 9 states have internal predecessors, (23), 7 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 6 states have call predecessors, (7), 6 states have call successors, (7) Word has length 51 [2022-04-14 23:00:25,100 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 23:00:25,100 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 9 states have internal predecessors, (23), 7 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 6 states have call predecessors, (7), 6 states have call successors, (7) [2022-04-14 23:00:25,101 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 47 transitions. [2022-04-14 23:00:25,101 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 9 states have internal predecessors, (23), 7 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 6 states have call predecessors, (7), 6 states have call successors, (7) [2022-04-14 23:00:25,102 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 47 transitions. [2022-04-14 23:00:25,103 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 47 transitions. [2022-04-14 23:00:25,134 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 23:00:25,135 INFO L225 Difference]: With dead ends: 46 [2022-04-14 23:00:25,135 INFO L226 Difference]: Without dead ends: 43 [2022-04-14 23:00:25,135 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 65 GetRequests, 51 SyntacticMatches, 1 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=43, Invalid=167, Unknown=0, NotChecked=0, Total=210 [2022-04-14 23:00:25,136 INFO L913 BasicCegarLoop]: 34 mSDtfsCounter, 2 mSDsluCounter, 171 mSDsCounter, 0 mSdLazyCounter, 147 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 2 SdHoareTripleChecker+Valid, 205 SdHoareTripleChecker+Invalid, 147 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 147 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-14 23:00:25,136 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [2 Valid, 205 Invalid, 147 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 147 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-14 23:00:25,136 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 43 states. [2022-04-14 23:00:25,138 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 43 to 43. [2022-04-14 23:00:25,138 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 23:00:25,138 INFO L82 GeneralOperation]: Start isEquivalent. First operand 43 states. Second operand has 43 states, 28 states have (on average 1.0357142857142858) internal successors, (29), 28 states have internal predecessors, (29), 10 states have call successors, (10), 6 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-14 23:00:25,139 INFO L74 IsIncluded]: Start isIncluded. First operand 43 states. Second operand has 43 states, 28 states have (on average 1.0357142857142858) internal successors, (29), 28 states have internal predecessors, (29), 10 states have call successors, (10), 6 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-14 23:00:25,139 INFO L87 Difference]: Start difference. First operand 43 states. Second operand has 43 states, 28 states have (on average 1.0357142857142858) internal successors, (29), 28 states have internal predecessors, (29), 10 states have call successors, (10), 6 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-14 23:00:25,140 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 23:00:25,140 INFO L93 Difference]: Finished difference Result 43 states and 47 transitions. [2022-04-14 23:00:25,140 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 47 transitions. [2022-04-14 23:00:25,140 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 23:00:25,141 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 23:00:25,141 INFO L74 IsIncluded]: Start isIncluded. First operand has 43 states, 28 states have (on average 1.0357142857142858) internal successors, (29), 28 states have internal predecessors, (29), 10 states have call successors, (10), 6 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 43 states. [2022-04-14 23:00:25,141 INFO L87 Difference]: Start difference. First operand has 43 states, 28 states have (on average 1.0357142857142858) internal successors, (29), 28 states have internal predecessors, (29), 10 states have call successors, (10), 6 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 43 states. [2022-04-14 23:00:25,142 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 23:00:25,142 INFO L93 Difference]: Finished difference Result 43 states and 47 transitions. [2022-04-14 23:00:25,142 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 47 transitions. [2022-04-14 23:00:25,142 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 23:00:25,142 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 23:00:25,142 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 23:00:25,143 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 23:00:25,143 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 43 states, 28 states have (on average 1.0357142857142858) internal successors, (29), 28 states have internal predecessors, (29), 10 states have call successors, (10), 6 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-14 23:00:25,144 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 43 states to 43 states and 47 transitions. [2022-04-14 23:00:25,144 INFO L78 Accepts]: Start accepts. Automaton has 43 states and 47 transitions. Word has length 51 [2022-04-14 23:00:25,144 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 23:00:25,144 INFO L478 AbstractCegarLoop]: Abstraction has 43 states and 47 transitions. [2022-04-14 23:00:25,144 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 9 states have internal predecessors, (23), 7 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 6 states have call predecessors, (7), 6 states have call successors, (7) [2022-04-14 23:00:25,144 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 47 transitions. [2022-04-14 23:00:25,145 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-14 23:00:25,145 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 23:00:25,145 INFO L499 BasicCegarLoop]: trace histogram [7, 6, 6, 6, 6, 6, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 23:00:25,161 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-14 23:00:25,353 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 23:00:25,353 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 23:00:25,353 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 23:00:25,354 INFO L85 PathProgramCache]: Analyzing trace with hash -1658817134, now seen corresponding path program 5 times [2022-04-14 23:00:25,354 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 23:00:25,354 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1420397541] [2022-04-14 23:00:25,354 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 23:00:25,354 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 23:00:25,363 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 23:00:25,363 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [513649472] [2022-04-14 23:00:25,363 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-04-14 23:00:25,363 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 23:00:25,363 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 23:00:25,364 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 23:00:25,367 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-14 23:00:25,471 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 6 check-sat command(s) [2022-04-14 23:00:25,472 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-14 23:00:25,472 INFO L263 TraceCheckSpWp]: Trace formula consists of 163 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-14 23:00:25,483 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 23:00:25,484 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 23:00:25,848 INFO L272 TraceCheckUtils]: 0: Hoare triple {1926#true} [63] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1926#true} is VALID [2022-04-14 23:00:25,849 INFO L290 TraceCheckUtils]: 1: Hoare triple {1926#true} [65] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 2) 9) (= (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{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {1926#true} is VALID [2022-04-14 23:00:25,849 INFO L290 TraceCheckUtils]: 2: Hoare triple {1926#true} [68] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1926#true} is VALID [2022-04-14 23:00:25,849 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1926#true} {1926#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1926#true} is VALID [2022-04-14 23:00:25,849 INFO L272 TraceCheckUtils]: 4: Hoare triple {1926#true} [64] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1926#true} is VALID [2022-04-14 23:00:25,849 INFO L290 TraceCheckUtils]: 5: Hoare triple {1926#true} [67] mainENTRY-->L21: Formula: (and (<= |v_main_#t~nondet4_2| 32767) (<= 0 (+ |v_main_#t~nondet4_2| 32768)) (= v_main_~k~0_1 |v_main_#t~nondet4_2|)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~c~0=v_main_~c~0_1, main_~y~0=v_main_~y~0_2, main_~x~0=v_main_~x~0_2, main_~k~0=v_main_~k~0_1} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~k~0, main_~c~0, main_~y~0] {1926#true} is VALID [2022-04-14 23:00:25,849 INFO L272 TraceCheckUtils]: 6: Hoare triple {1926#true} [69] L21-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~k~0_8) (<= v_main_~k~0_8 5)) 1 0)) InVars {main_~k~0=v_main_~k~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~k~0, assume_abort_if_not_#in~cond] {1926#true} is VALID [2022-04-14 23:00:25,849 INFO L290 TraceCheckUtils]: 7: Hoare triple {1926#true} [71] assume_abort_if_notENTRY-->L7: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1926#true} is VALID [2022-04-14 23:00:25,849 INFO L290 TraceCheckUtils]: 8: Hoare triple {1926#true} [76] L7-->L7-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1926#true} is VALID [2022-04-14 23:00:25,849 INFO L290 TraceCheckUtils]: 9: Hoare triple {1926#true} [79] L7-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1926#true} is VALID [2022-04-14 23:00:25,849 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1926#true} {1926#true} [92] assume_abort_if_notEXIT-->L21-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~k~0_8) (<= v_main_~k~0_8 5)) 1 0)) InVars {main_~k~0=v_main_~k~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~k~0, assume_abort_if_not_#in~cond] {1926#true} is VALID [2022-04-14 23:00:25,850 INFO L290 TraceCheckUtils]: 11: Hoare triple {1926#true} [70] L21-1-->L27-2: Formula: (and (= v_main_~c~0_2 0) (= v_main_~y~0_3 0) (= v_main_~x~0_3 0)) InVars {} OutVars{main_~c~0=v_main_~c~0_2, main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3} AuxVars[] AssignedVars[main_~x~0, main_~c~0, main_~y~0] {1964#(and (= main_~c~0 0) (= main_~y~0 0))} is VALID [2022-04-14 23:00:25,850 INFO L290 TraceCheckUtils]: 12: Hoare triple {1964#(and (= main_~c~0 0) (= main_~y~0 0))} [74] L27-2-->L28: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1964#(and (= main_~c~0 0) (= main_~y~0 0))} is VALID [2022-04-14 23:00:25,850 INFO L272 TraceCheckUtils]: 13: Hoare triple {1964#(and (= main_~c~0 0) (= main_~y~0 0))} [78] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {1926#true} is VALID [2022-04-14 23:00:25,850 INFO L290 TraceCheckUtils]: 14: Hoare triple {1926#true} [81] __VERIFIER_assertENTRY-->L10: 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] {1926#true} is VALID [2022-04-14 23:00:25,851 INFO L290 TraceCheckUtils]: 15: Hoare triple {1926#true} [86] L10-->L10-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[] {1926#true} is VALID [2022-04-14 23:00:25,851 INFO L290 TraceCheckUtils]: 16: Hoare triple {1926#true} [90] L10-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1926#true} is VALID [2022-04-14 23:00:25,851 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {1926#true} {1964#(and (= main_~c~0 0) (= main_~y~0 0))} [94] __VERIFIER_assertEXIT-->L28-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {1964#(and (= main_~c~0 0) (= main_~y~0 0))} is VALID [2022-04-14 23:00:25,852 INFO L290 TraceCheckUtils]: 18: Hoare triple {1964#(and (= main_~c~0 0) (= main_~y~0 0))} [83] L28-1-->L27-2: Formula: (and (= v_main_~c~0_4 (+ v_main_~c~0_5 1)) (< v_main_~c~0_5 v_main_~k~0_6) (= v_main_~y~0_5 (+ v_main_~y~0_6 1)) (= v_main_~x~0_5 (+ v_main_~x~0_6 (* v_main_~y~0_5 (* v_main_~y~0_5 v_main_~y~0_5))))) InVars {main_~y~0=v_main_~y~0_6, main_~c~0=v_main_~c~0_5, main_~x~0=v_main_~x~0_6, main_~k~0=v_main_~k~0_6} OutVars{main_~y~0=v_main_~y~0_5, main_~c~0=v_main_~c~0_4, main_~x~0=v_main_~x~0_5, main_~k~0=v_main_~k~0_6} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_~c~0] {1986#(and (= (+ (- 1) main_~y~0) 0) (= (+ (- 1) main_~c~0) 0))} is VALID [2022-04-14 23:00:25,852 INFO L290 TraceCheckUtils]: 19: Hoare triple {1986#(and (= (+ (- 1) main_~y~0) 0) (= (+ (- 1) main_~c~0) 0))} [74] L27-2-->L28: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1986#(and (= (+ (- 1) main_~y~0) 0) (= (+ (- 1) main_~c~0) 0))} is VALID [2022-04-14 23:00:25,852 INFO L272 TraceCheckUtils]: 20: Hoare triple {1986#(and (= (+ (- 1) main_~y~0) 0) (= (+ (- 1) main_~c~0) 0))} [78] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {1926#true} is VALID [2022-04-14 23:00:25,852 INFO L290 TraceCheckUtils]: 21: Hoare triple {1926#true} [81] __VERIFIER_assertENTRY-->L10: 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] {1926#true} is VALID [2022-04-14 23:00:25,852 INFO L290 TraceCheckUtils]: 22: Hoare triple {1926#true} [86] L10-->L10-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[] {1926#true} is VALID [2022-04-14 23:00:25,853 INFO L290 TraceCheckUtils]: 23: Hoare triple {1926#true} [90] L10-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1926#true} is VALID [2022-04-14 23:00:25,853 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {1926#true} {1986#(and (= (+ (- 1) main_~y~0) 0) (= (+ (- 1) main_~c~0) 0))} [94] __VERIFIER_assertEXIT-->L28-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {1986#(and (= (+ (- 1) main_~y~0) 0) (= (+ (- 1) main_~c~0) 0))} is VALID [2022-04-14 23:00:25,854 INFO L290 TraceCheckUtils]: 25: Hoare triple {1986#(and (= (+ (- 1) main_~y~0) 0) (= (+ (- 1) main_~c~0) 0))} [83] L28-1-->L27-2: Formula: (and (= v_main_~c~0_4 (+ v_main_~c~0_5 1)) (< v_main_~c~0_5 v_main_~k~0_6) (= v_main_~y~0_5 (+ v_main_~y~0_6 1)) (= v_main_~x~0_5 (+ v_main_~x~0_6 (* v_main_~y~0_5 (* v_main_~y~0_5 v_main_~y~0_5))))) InVars {main_~y~0=v_main_~y~0_6, main_~c~0=v_main_~c~0_5, main_~x~0=v_main_~x~0_6, main_~k~0=v_main_~k~0_6} OutVars{main_~y~0=v_main_~y~0_5, main_~c~0=v_main_~c~0_4, main_~x~0=v_main_~x~0_5, main_~k~0=v_main_~k~0_6} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_~c~0] {2008#(and (= (+ (- 2) main_~y~0) 0) (= main_~c~0 2))} is VALID [2022-04-14 23:00:25,854 INFO L290 TraceCheckUtils]: 26: Hoare triple {2008#(and (= (+ (- 2) main_~y~0) 0) (= main_~c~0 2))} [74] L27-2-->L28: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2008#(and (= (+ (- 2) main_~y~0) 0) (= main_~c~0 2))} is VALID [2022-04-14 23:00:25,854 INFO L272 TraceCheckUtils]: 27: Hoare triple {2008#(and (= (+ (- 2) main_~y~0) 0) (= main_~c~0 2))} [78] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {1926#true} is VALID [2022-04-14 23:00:25,854 INFO L290 TraceCheckUtils]: 28: Hoare triple {1926#true} [81] __VERIFIER_assertENTRY-->L10: 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] {1926#true} is VALID [2022-04-14 23:00:25,854 INFO L290 TraceCheckUtils]: 29: Hoare triple {1926#true} [86] L10-->L10-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[] {1926#true} is VALID [2022-04-14 23:00:25,854 INFO L290 TraceCheckUtils]: 30: Hoare triple {1926#true} [90] L10-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1926#true} is VALID [2022-04-14 23:00:25,855 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {1926#true} {2008#(and (= (+ (- 2) main_~y~0) 0) (= main_~c~0 2))} [94] __VERIFIER_assertEXIT-->L28-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {2008#(and (= (+ (- 2) main_~y~0) 0) (= main_~c~0 2))} is VALID [2022-04-14 23:00:25,855 INFO L290 TraceCheckUtils]: 32: Hoare triple {2008#(and (= (+ (- 2) main_~y~0) 0) (= main_~c~0 2))} [83] L28-1-->L27-2: Formula: (and (= v_main_~c~0_4 (+ v_main_~c~0_5 1)) (< v_main_~c~0_5 v_main_~k~0_6) (= v_main_~y~0_5 (+ v_main_~y~0_6 1)) (= v_main_~x~0_5 (+ v_main_~x~0_6 (* v_main_~y~0_5 (* v_main_~y~0_5 v_main_~y~0_5))))) InVars {main_~y~0=v_main_~y~0_6, main_~c~0=v_main_~c~0_5, main_~x~0=v_main_~x~0_6, main_~k~0=v_main_~k~0_6} OutVars{main_~y~0=v_main_~y~0_5, main_~c~0=v_main_~c~0_4, main_~x~0=v_main_~x~0_5, main_~k~0=v_main_~k~0_6} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_~c~0] {2030#(and (= main_~y~0 3) (= (+ (- 1) main_~c~0) 2))} is VALID [2022-04-14 23:00:25,856 INFO L290 TraceCheckUtils]: 33: Hoare triple {2030#(and (= main_~y~0 3) (= (+ (- 1) main_~c~0) 2))} [74] L27-2-->L28: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2030#(and (= main_~y~0 3) (= (+ (- 1) main_~c~0) 2))} is VALID [2022-04-14 23:00:25,856 INFO L272 TraceCheckUtils]: 34: Hoare triple {2030#(and (= main_~y~0 3) (= (+ (- 1) main_~c~0) 2))} [78] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {1926#true} is VALID [2022-04-14 23:00:25,856 INFO L290 TraceCheckUtils]: 35: Hoare triple {1926#true} [81] __VERIFIER_assertENTRY-->L10: 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] {1926#true} is VALID [2022-04-14 23:00:25,856 INFO L290 TraceCheckUtils]: 36: Hoare triple {1926#true} [86] L10-->L10-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[] {1926#true} is VALID [2022-04-14 23:00:25,856 INFO L290 TraceCheckUtils]: 37: Hoare triple {1926#true} [90] L10-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1926#true} is VALID [2022-04-14 23:00:25,856 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {1926#true} {2030#(and (= main_~y~0 3) (= (+ (- 1) main_~c~0) 2))} [94] __VERIFIER_assertEXIT-->L28-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {2030#(and (= main_~y~0 3) (= (+ (- 1) main_~c~0) 2))} is VALID [2022-04-14 23:00:25,857 INFO L290 TraceCheckUtils]: 39: Hoare triple {2030#(and (= main_~y~0 3) (= (+ (- 1) main_~c~0) 2))} [83] L28-1-->L27-2: Formula: (and (= v_main_~c~0_4 (+ v_main_~c~0_5 1)) (< v_main_~c~0_5 v_main_~k~0_6) (= v_main_~y~0_5 (+ v_main_~y~0_6 1)) (= v_main_~x~0_5 (+ v_main_~x~0_6 (* v_main_~y~0_5 (* v_main_~y~0_5 v_main_~y~0_5))))) InVars {main_~y~0=v_main_~y~0_6, main_~c~0=v_main_~c~0_5, main_~x~0=v_main_~x~0_6, main_~k~0=v_main_~k~0_6} OutVars{main_~y~0=v_main_~y~0_5, main_~c~0=v_main_~c~0_4, main_~x~0=v_main_~x~0_5, main_~k~0=v_main_~k~0_6} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_~c~0] {2052#(and (= 2 (+ (- 2) main_~c~0)) (= 3 (+ (- 1) main_~y~0)))} is VALID [2022-04-14 23:00:25,857 INFO L290 TraceCheckUtils]: 40: Hoare triple {2052#(and (= 2 (+ (- 2) main_~c~0)) (= 3 (+ (- 1) main_~y~0)))} [74] L27-2-->L28: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2052#(and (= 2 (+ (- 2) main_~c~0)) (= 3 (+ (- 1) main_~y~0)))} is VALID [2022-04-14 23:00:25,857 INFO L272 TraceCheckUtils]: 41: Hoare triple {2052#(and (= 2 (+ (- 2) main_~c~0)) (= 3 (+ (- 1) main_~y~0)))} [78] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {1926#true} is VALID [2022-04-14 23:00:25,857 INFO L290 TraceCheckUtils]: 42: Hoare triple {1926#true} [81] __VERIFIER_assertENTRY-->L10: 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] {1926#true} is VALID [2022-04-14 23:00:25,858 INFO L290 TraceCheckUtils]: 43: Hoare triple {1926#true} [86] L10-->L10-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[] {1926#true} is VALID [2022-04-14 23:00:25,858 INFO L290 TraceCheckUtils]: 44: Hoare triple {1926#true} [90] L10-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1926#true} is VALID [2022-04-14 23:00:25,858 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {1926#true} {2052#(and (= 2 (+ (- 2) main_~c~0)) (= 3 (+ (- 1) main_~y~0)))} [94] __VERIFIER_assertEXIT-->L28-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {2052#(and (= 2 (+ (- 2) main_~c~0)) (= 3 (+ (- 1) main_~y~0)))} is VALID [2022-04-14 23:00:25,859 INFO L290 TraceCheckUtils]: 46: Hoare triple {2052#(and (= 2 (+ (- 2) main_~c~0)) (= 3 (+ (- 1) main_~y~0)))} [83] L28-1-->L27-2: Formula: (and (= v_main_~c~0_4 (+ v_main_~c~0_5 1)) (< v_main_~c~0_5 v_main_~k~0_6) (= v_main_~y~0_5 (+ v_main_~y~0_6 1)) (= v_main_~x~0_5 (+ v_main_~x~0_6 (* v_main_~y~0_5 (* v_main_~y~0_5 v_main_~y~0_5))))) InVars {main_~y~0=v_main_~y~0_6, main_~c~0=v_main_~c~0_5, main_~x~0=v_main_~x~0_6, main_~k~0=v_main_~k~0_6} OutVars{main_~y~0=v_main_~y~0_5, main_~c~0=v_main_~c~0_4, main_~x~0=v_main_~x~0_5, main_~k~0=v_main_~k~0_6} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_~c~0] {2074#(and (<= main_~c~0 5) (= (+ (- 2) main_~y~0) 3) (< 4 main_~k~0))} is VALID [2022-04-14 23:00:25,859 INFO L290 TraceCheckUtils]: 47: Hoare triple {2074#(and (<= main_~c~0 5) (= (+ (- 2) main_~y~0) 3) (< 4 main_~k~0))} [74] L27-2-->L28: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2074#(and (<= main_~c~0 5) (= (+ (- 2) main_~y~0) 3) (< 4 main_~k~0))} is VALID [2022-04-14 23:00:25,859 INFO L272 TraceCheckUtils]: 48: Hoare triple {2074#(and (<= main_~c~0 5) (= (+ (- 2) main_~y~0) 3) (< 4 main_~k~0))} [78] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {1926#true} is VALID [2022-04-14 23:00:25,859 INFO L290 TraceCheckUtils]: 49: Hoare triple {1926#true} [81] __VERIFIER_assertENTRY-->L10: 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] {1926#true} is VALID [2022-04-14 23:00:25,859 INFO L290 TraceCheckUtils]: 50: Hoare triple {1926#true} [86] L10-->L10-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[] {1926#true} is VALID [2022-04-14 23:00:25,859 INFO L290 TraceCheckUtils]: 51: Hoare triple {1926#true} [90] L10-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1926#true} is VALID [2022-04-14 23:00:25,860 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {1926#true} {2074#(and (<= main_~c~0 5) (= (+ (- 2) main_~y~0) 3) (< 4 main_~k~0))} [94] __VERIFIER_assertEXIT-->L28-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {2074#(and (<= main_~c~0 5) (= (+ (- 2) main_~y~0) 3) (< 4 main_~k~0))} is VALID [2022-04-14 23:00:25,860 INFO L290 TraceCheckUtils]: 53: Hoare triple {2074#(and (<= main_~c~0 5) (= (+ (- 2) main_~y~0) 3) (< 4 main_~k~0))} [82] L28-1-->L27-3: Formula: (not (< v_main_~c~0_3 v_main_~k~0_5)) InVars {main_~c~0=v_main_~c~0_3, main_~k~0=v_main_~k~0_5} OutVars{main_~c~0=v_main_~c~0_3, main_~k~0=v_main_~k~0_5} AuxVars[] AssignedVars[] {2096#(and (<= main_~k~0 5) (= (+ (- 2) main_~y~0) 3) (< 4 main_~k~0))} is VALID [2022-04-14 23:00:25,861 INFO L272 TraceCheckUtils]: 54: Hoare triple {2096#(and (<= main_~k~0 5) (= (+ (- 2) main_~y~0) 3) (< 4 main_~k~0))} [77] L27-3-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= (+ (* v_main_~k~0_9 v_main_~y~0_9) (* (- 1) (* v_main_~y~0_9 v_main_~y~0_9))) 0) 1 0)) InVars {main_~y~0=v_main_~y~0_9, main_~k~0=v_main_~k~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~k~0, main_~y~0] {2100#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 23:00:25,861 INFO L290 TraceCheckUtils]: 55: Hoare triple {2100#(<= 1 |__VERIFIER_assert_#in~cond|)} [81] __VERIFIER_assertENTRY-->L10: 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] {2104#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 23:00:25,862 INFO L290 TraceCheckUtils]: 56: Hoare triple {2104#(<= 1 __VERIFIER_assert_~cond)} [85] L10-->L11: 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[] {1927#false} is VALID [2022-04-14 23:00:25,862 INFO L290 TraceCheckUtils]: 57: Hoare triple {1927#false} [88] L11-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1927#false} is VALID [2022-04-14 23:00:25,862 INFO L134 CoverageAnalysis]: Checked inductivity of 117 backedges. 12 proven. 45 refuted. 0 times theorem prover too weak. 60 trivial. 0 not checked. [2022-04-14 23:00:25,862 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 23:00:26,252 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 23:00:26,252 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1420397541] [2022-04-14 23:00:26,252 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 23:00:26,252 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [513649472] [2022-04-14 23:00:26,252 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [513649472] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-14 23:00:26,252 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-14 23:00:26,252 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11] total 11 [2022-04-14 23:00:26,253 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1648584867] [2022-04-14 23:00:26,253 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-14 23:00:26,253 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 2.5) internal successors, (25), 10 states have internal predecessors, (25), 8 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 7 states have call predecessors, (8), 7 states have call successors, (8) Word has length 58 [2022-04-14 23:00:26,253 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 23:00:26,253 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 10 states have (on average 2.5) internal successors, (25), 10 states have internal predecessors, (25), 8 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 7 states have call predecessors, (8), 7 states have call successors, (8) [2022-04-14 23:00:26,280 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-14 23:00:26,281 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-14 23:00:26,281 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 23:00:26,281 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-14 23:00:26,281 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=36, Invalid=146, Unknown=0, NotChecked=0, Total=182 [2022-04-14 23:00:26,281 INFO L87 Difference]: Start difference. First operand 43 states and 47 transitions. Second operand has 11 states, 10 states have (on average 2.5) internal successors, (25), 10 states have internal predecessors, (25), 8 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 7 states have call predecessors, (8), 7 states have call successors, (8) [2022-04-14 23:00:26,714 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 23:00:26,714 INFO L93 Difference]: Finished difference Result 49 states and 54 transitions. [2022-04-14 23:00:26,714 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-14 23:00:26,714 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 2.5) internal successors, (25), 10 states have internal predecessors, (25), 8 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 7 states have call predecessors, (8), 7 states have call successors, (8) Word has length 58 [2022-04-14 23:00:26,714 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 23:00:26,714 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 2.5) internal successors, (25), 10 states have internal predecessors, (25), 8 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 7 states have call predecessors, (8), 7 states have call successors, (8) [2022-04-14 23:00:26,715 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 51 transitions. [2022-04-14 23:00:26,716 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 2.5) internal successors, (25), 10 states have internal predecessors, (25), 8 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 7 states have call predecessors, (8), 7 states have call successors, (8) [2022-04-14 23:00:26,728 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 51 transitions. [2022-04-14 23:00:26,729 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 51 transitions. [2022-04-14 23:00:26,763 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 23:00:26,763 INFO L225 Difference]: With dead ends: 49 [2022-04-14 23:00:26,764 INFO L226 Difference]: Without dead ends: 46 [2022-04-14 23:00:26,764 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 72 GetRequests, 57 SyntacticMatches, 1 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=46, Invalid=194, Unknown=0, NotChecked=0, Total=240 [2022-04-14 23:00:26,764 INFO L913 BasicCegarLoop]: 37 mSDtfsCounter, 2 mSDsluCounter, 202 mSDsCounter, 0 mSdLazyCounter, 191 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 2 SdHoareTripleChecker+Valid, 239 SdHoareTripleChecker+Invalid, 191 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 191 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-14 23:00:26,764 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [2 Valid, 239 Invalid, 191 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 191 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-14 23:00:26,765 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 46 states. [2022-04-14 23:00:26,766 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 46 to 46. [2022-04-14 23:00:26,766 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 23:00:26,766 INFO L82 GeneralOperation]: Start isEquivalent. First operand 46 states. Second operand has 46 states, 30 states have (on average 1.0333333333333334) internal successors, (31), 30 states have internal predecessors, (31), 11 states have call successors, (11), 6 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-14 23:00:26,767 INFO L74 IsIncluded]: Start isIncluded. First operand 46 states. Second operand has 46 states, 30 states have (on average 1.0333333333333334) internal successors, (31), 30 states have internal predecessors, (31), 11 states have call successors, (11), 6 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-14 23:00:26,767 INFO L87 Difference]: Start difference. First operand 46 states. Second operand has 46 states, 30 states have (on average 1.0333333333333334) internal successors, (31), 30 states have internal predecessors, (31), 11 states have call successors, (11), 6 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-14 23:00:26,768 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 23:00:26,768 INFO L93 Difference]: Finished difference Result 46 states and 51 transitions. [2022-04-14 23:00:26,768 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 51 transitions. [2022-04-14 23:00:26,768 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 23:00:26,768 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 23:00:26,768 INFO L74 IsIncluded]: Start isIncluded. First operand has 46 states, 30 states have (on average 1.0333333333333334) internal successors, (31), 30 states have internal predecessors, (31), 11 states have call successors, (11), 6 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 46 states. [2022-04-14 23:00:26,769 INFO L87 Difference]: Start difference. First operand has 46 states, 30 states have (on average 1.0333333333333334) internal successors, (31), 30 states have internal predecessors, (31), 11 states have call successors, (11), 6 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 46 states. [2022-04-14 23:00:26,770 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 23:00:26,770 INFO L93 Difference]: Finished difference Result 46 states and 51 transitions. [2022-04-14 23:00:26,770 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 51 transitions. [2022-04-14 23:00:26,770 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 23:00:26,770 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 23:00:26,770 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 23:00:26,770 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 23:00:26,770 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 46 states, 30 states have (on average 1.0333333333333334) internal successors, (31), 30 states have internal predecessors, (31), 11 states have call successors, (11), 6 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-14 23:00:26,771 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 46 states to 46 states and 51 transitions. [2022-04-14 23:00:26,771 INFO L78 Accepts]: Start accepts. Automaton has 46 states and 51 transitions. Word has length 58 [2022-04-14 23:00:26,771 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 23:00:26,771 INFO L478 AbstractCegarLoop]: Abstraction has 46 states and 51 transitions. [2022-04-14 23:00:26,772 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 10 states have (on average 2.5) internal successors, (25), 10 states have internal predecessors, (25), 8 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 7 states have call predecessors, (8), 7 states have call successors, (8) [2022-04-14 23:00:26,772 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 51 transitions. [2022-04-14 23:00:26,772 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 66 [2022-04-14 23:00:26,772 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 23:00:26,772 INFO L499 BasicCegarLoop]: trace histogram [8, 7, 7, 7, 7, 7, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 23:00:26,780 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-14 23:00:26,978 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 23:00:26,978 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 23:00:26,978 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 23:00:26,978 INFO L85 PathProgramCache]: Analyzing trace with hash 270583808, now seen corresponding path program 6 times [2022-04-14 23:00:26,978 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 23:00:26,979 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2014771228] [2022-04-14 23:00:26,979 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 23:00:26,979 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 23:00:26,987 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 23:00:26,987 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1133158775] [2022-04-14 23:00:26,987 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-14 23:00:26,987 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 23:00:26,987 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 23:00:27,040 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 23:00:27,040 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-04-14 23:00:27,142 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-14 23:00:27,142 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-14 23:00:27,143 INFO L263 TraceCheckSpWp]: Trace formula consists of 180 conjuncts, 12 conjunts are in the unsatisfiable core [2022-04-14 23:00:27,153 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 23:00:27,154 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 23:00:27,552 INFO L272 TraceCheckUtils]: 0: Hoare triple {2343#true} [63] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2343#true} is VALID [2022-04-14 23:00:27,552 INFO L290 TraceCheckUtils]: 1: Hoare triple {2343#true} [65] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 2) 9) (= (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{#StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[#NULL.offset, #NULL.base] {2343#true} is VALID [2022-04-14 23:00:27,552 INFO L290 TraceCheckUtils]: 2: Hoare triple {2343#true} [68] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2343#true} is VALID [2022-04-14 23:00:27,560 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2343#true} {2343#true} [91] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2343#true} is VALID [2022-04-14 23:00:27,560 INFO L272 TraceCheckUtils]: 4: Hoare triple {2343#true} [64] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2343#true} is VALID [2022-04-14 23:00:27,560 INFO L290 TraceCheckUtils]: 5: Hoare triple {2343#true} [67] mainENTRY-->L21: Formula: (and (<= |v_main_#t~nondet4_2| 32767) (<= 0 (+ |v_main_#t~nondet4_2| 32768)) (= v_main_~k~0_1 |v_main_#t~nondet4_2|)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~c~0=v_main_~c~0_1, main_~y~0=v_main_~y~0_2, main_~x~0=v_main_~x~0_2, main_~k~0=v_main_~k~0_1} AuxVars[] AssignedVars[main_#t~nondet4, main_~x~0, main_~k~0, main_~c~0, main_~y~0] {2343#true} is VALID [2022-04-14 23:00:27,560 INFO L272 TraceCheckUtils]: 6: Hoare triple {2343#true} [69] L21-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~k~0_8) (<= v_main_~k~0_8 5)) 1 0)) InVars {main_~k~0=v_main_~k~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~k~0, assume_abort_if_not_#in~cond] {2343#true} is VALID [2022-04-14 23:00:27,560 INFO L290 TraceCheckUtils]: 7: Hoare triple {2343#true} [71] assume_abort_if_notENTRY-->L7: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2369#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-14 23:00:27,561 INFO L290 TraceCheckUtils]: 8: Hoare triple {2369#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [76] L7-->L7-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2373#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 23:00:27,561 INFO L290 TraceCheckUtils]: 9: Hoare triple {2373#(not (= |assume_abort_if_not_#in~cond| 0))} [79] L7-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2373#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-14 23:00:27,562 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2373#(not (= |assume_abort_if_not_#in~cond| 0))} {2343#true} [92] assume_abort_if_notEXIT-->L21-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~k~0_8) (<= v_main_~k~0_8 5)) 1 0)) InVars {main_~k~0=v_main_~k~0_8} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~k~0, assume_abort_if_not_#in~cond] {2380#(and (<= main_~k~0 5) (<= 0 main_~k~0))} is VALID [2022-04-14 23:00:27,562 INFO L290 TraceCheckUtils]: 11: Hoare triple {2380#(and (<= main_~k~0 5) (<= 0 main_~k~0))} [70] L21-1-->L27-2: Formula: (and (= v_main_~c~0_2 0) (= v_main_~y~0_3 0) (= v_main_~x~0_3 0)) InVars {} OutVars{main_~c~0=v_main_~c~0_2, main_~y~0=v_main_~y~0_3, main_~x~0=v_main_~x~0_3} AuxVars[] AssignedVars[main_~x~0, main_~c~0, main_~y~0] {2384#(and (<= main_~k~0 5) (<= 0 main_~k~0) (<= 0 main_~c~0))} is VALID [2022-04-14 23:00:27,563 INFO L290 TraceCheckUtils]: 12: Hoare triple {2384#(and (<= main_~k~0 5) (<= 0 main_~k~0) (<= 0 main_~c~0))} [74] L27-2-->L28: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2384#(and (<= main_~k~0 5) (<= 0 main_~k~0) (<= 0 main_~c~0))} is VALID [2022-04-14 23:00:27,563 INFO L272 TraceCheckUtils]: 13: Hoare triple {2384#(and (<= main_~k~0 5) (<= 0 main_~k~0) (<= 0 main_~c~0))} [78] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {2343#true} is VALID [2022-04-14 23:00:27,563 INFO L290 TraceCheckUtils]: 14: Hoare triple {2343#true} [81] __VERIFIER_assertENTRY-->L10: 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] {2343#true} is VALID [2022-04-14 23:00:27,563 INFO L290 TraceCheckUtils]: 15: Hoare triple {2343#true} [86] L10-->L10-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[] {2343#true} is VALID [2022-04-14 23:00:27,563 INFO L290 TraceCheckUtils]: 16: Hoare triple {2343#true} [90] L10-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2343#true} is VALID [2022-04-14 23:00:27,567 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {2343#true} {2384#(and (<= main_~k~0 5) (<= 0 main_~k~0) (<= 0 main_~c~0))} [94] __VERIFIER_assertEXIT-->L28-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {2384#(and (<= main_~k~0 5) (<= 0 main_~k~0) (<= 0 main_~c~0))} is VALID [2022-04-14 23:00:27,568 INFO L290 TraceCheckUtils]: 18: Hoare triple {2384#(and (<= main_~k~0 5) (<= 0 main_~k~0) (<= 0 main_~c~0))} [83] L28-1-->L27-2: Formula: (and (= v_main_~c~0_4 (+ v_main_~c~0_5 1)) (< v_main_~c~0_5 v_main_~k~0_6) (= v_main_~y~0_5 (+ v_main_~y~0_6 1)) (= v_main_~x~0_5 (+ v_main_~x~0_6 (* v_main_~y~0_5 (* v_main_~y~0_5 v_main_~y~0_5))))) InVars {main_~y~0=v_main_~y~0_6, main_~c~0=v_main_~c~0_5, main_~x~0=v_main_~x~0_6, main_~k~0=v_main_~k~0_6} OutVars{main_~y~0=v_main_~y~0_5, main_~c~0=v_main_~c~0_4, main_~x~0=v_main_~x~0_5, main_~k~0=v_main_~k~0_6} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_~c~0] {2406#(and (<= main_~k~0 5) (<= 1 main_~c~0) (<= 0 main_~k~0))} is VALID [2022-04-14 23:00:27,569 INFO L290 TraceCheckUtils]: 19: Hoare triple {2406#(and (<= main_~k~0 5) (<= 1 main_~c~0) (<= 0 main_~k~0))} [74] L27-2-->L28: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2406#(and (<= main_~k~0 5) (<= 1 main_~c~0) (<= 0 main_~k~0))} is VALID [2022-04-14 23:00:27,569 INFO L272 TraceCheckUtils]: 20: Hoare triple {2406#(and (<= main_~k~0 5) (<= 1 main_~c~0) (<= 0 main_~k~0))} [78] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {2343#true} is VALID [2022-04-14 23:00:27,569 INFO L290 TraceCheckUtils]: 21: Hoare triple {2343#true} [81] __VERIFIER_assertENTRY-->L10: 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] {2343#true} is VALID [2022-04-14 23:00:27,569 INFO L290 TraceCheckUtils]: 22: Hoare triple {2343#true} [86] L10-->L10-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[] {2343#true} is VALID [2022-04-14 23:00:27,569 INFO L290 TraceCheckUtils]: 23: Hoare triple {2343#true} [90] L10-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2343#true} is VALID [2022-04-14 23:00:27,570 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {2343#true} {2406#(and (<= main_~k~0 5) (<= 1 main_~c~0) (<= 0 main_~k~0))} [94] __VERIFIER_assertEXIT-->L28-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {2406#(and (<= main_~k~0 5) (<= 1 main_~c~0) (<= 0 main_~k~0))} is VALID [2022-04-14 23:00:27,570 INFO L290 TraceCheckUtils]: 25: Hoare triple {2406#(and (<= main_~k~0 5) (<= 1 main_~c~0) (<= 0 main_~k~0))} [83] L28-1-->L27-2: Formula: (and (= v_main_~c~0_4 (+ v_main_~c~0_5 1)) (< v_main_~c~0_5 v_main_~k~0_6) (= v_main_~y~0_5 (+ v_main_~y~0_6 1)) (= v_main_~x~0_5 (+ v_main_~x~0_6 (* v_main_~y~0_5 (* v_main_~y~0_5 v_main_~y~0_5))))) InVars {main_~y~0=v_main_~y~0_6, main_~c~0=v_main_~c~0_5, main_~x~0=v_main_~x~0_6, main_~k~0=v_main_~k~0_6} OutVars{main_~y~0=v_main_~y~0_5, main_~c~0=v_main_~c~0_4, main_~x~0=v_main_~x~0_5, main_~k~0=v_main_~k~0_6} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_~c~0] {2428#(and (<= main_~k~0 5) (<= 0 main_~k~0) (<= 2 main_~c~0))} is VALID [2022-04-14 23:00:27,571 INFO L290 TraceCheckUtils]: 26: Hoare triple {2428#(and (<= main_~k~0 5) (<= 0 main_~k~0) (<= 2 main_~c~0))} [74] L27-2-->L28: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2428#(and (<= main_~k~0 5) (<= 0 main_~k~0) (<= 2 main_~c~0))} is VALID [2022-04-14 23:00:27,572 INFO L272 TraceCheckUtils]: 27: Hoare triple {2428#(and (<= main_~k~0 5) (<= 0 main_~k~0) (<= 2 main_~c~0))} [78] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {2343#true} is VALID [2022-04-14 23:00:27,572 INFO L290 TraceCheckUtils]: 28: Hoare triple {2343#true} [81] __VERIFIER_assertENTRY-->L10: 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] {2343#true} is VALID [2022-04-14 23:00:27,572 INFO L290 TraceCheckUtils]: 29: Hoare triple {2343#true} [86] L10-->L10-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[] {2343#true} is VALID [2022-04-14 23:00:27,572 INFO L290 TraceCheckUtils]: 30: Hoare triple {2343#true} [90] L10-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2343#true} is VALID [2022-04-14 23:00:27,573 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {2343#true} {2428#(and (<= main_~k~0 5) (<= 0 main_~k~0) (<= 2 main_~c~0))} [94] __VERIFIER_assertEXIT-->L28-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {2428#(and (<= main_~k~0 5) (<= 0 main_~k~0) (<= 2 main_~c~0))} is VALID [2022-04-14 23:00:27,573 INFO L290 TraceCheckUtils]: 32: Hoare triple {2428#(and (<= main_~k~0 5) (<= 0 main_~k~0) (<= 2 main_~c~0))} [83] L28-1-->L27-2: Formula: (and (= v_main_~c~0_4 (+ v_main_~c~0_5 1)) (< v_main_~c~0_5 v_main_~k~0_6) (= v_main_~y~0_5 (+ v_main_~y~0_6 1)) (= v_main_~x~0_5 (+ v_main_~x~0_6 (* v_main_~y~0_5 (* v_main_~y~0_5 v_main_~y~0_5))))) InVars {main_~y~0=v_main_~y~0_6, main_~c~0=v_main_~c~0_5, main_~x~0=v_main_~x~0_6, main_~k~0=v_main_~k~0_6} OutVars{main_~y~0=v_main_~y~0_5, main_~c~0=v_main_~c~0_4, main_~x~0=v_main_~x~0_5, main_~k~0=v_main_~k~0_6} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_~c~0] {2450#(and (<= main_~k~0 5) (<= 0 main_~k~0) (<= 3 main_~c~0))} is VALID [2022-04-14 23:00:27,574 INFO L290 TraceCheckUtils]: 33: Hoare triple {2450#(and (<= main_~k~0 5) (<= 0 main_~k~0) (<= 3 main_~c~0))} [74] L27-2-->L28: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2450#(and (<= main_~k~0 5) (<= 0 main_~k~0) (<= 3 main_~c~0))} is VALID [2022-04-14 23:00:27,574 INFO L272 TraceCheckUtils]: 34: Hoare triple {2450#(and (<= main_~k~0 5) (<= 0 main_~k~0) (<= 3 main_~c~0))} [78] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {2343#true} is VALID [2022-04-14 23:00:27,574 INFO L290 TraceCheckUtils]: 35: Hoare triple {2343#true} [81] __VERIFIER_assertENTRY-->L10: 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] {2343#true} is VALID [2022-04-14 23:00:27,574 INFO L290 TraceCheckUtils]: 36: Hoare triple {2343#true} [86] L10-->L10-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[] {2343#true} is VALID [2022-04-14 23:00:27,574 INFO L290 TraceCheckUtils]: 37: Hoare triple {2343#true} [90] L10-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2343#true} is VALID [2022-04-14 23:00:27,575 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {2343#true} {2450#(and (<= main_~k~0 5) (<= 0 main_~k~0) (<= 3 main_~c~0))} [94] __VERIFIER_assertEXIT-->L28-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {2450#(and (<= main_~k~0 5) (<= 0 main_~k~0) (<= 3 main_~c~0))} is VALID [2022-04-14 23:00:27,575 INFO L290 TraceCheckUtils]: 39: Hoare triple {2450#(and (<= main_~k~0 5) (<= 0 main_~k~0) (<= 3 main_~c~0))} [83] L28-1-->L27-2: Formula: (and (= v_main_~c~0_4 (+ v_main_~c~0_5 1)) (< v_main_~c~0_5 v_main_~k~0_6) (= v_main_~y~0_5 (+ v_main_~y~0_6 1)) (= v_main_~x~0_5 (+ v_main_~x~0_6 (* v_main_~y~0_5 (* v_main_~y~0_5 v_main_~y~0_5))))) InVars {main_~y~0=v_main_~y~0_6, main_~c~0=v_main_~c~0_5, main_~x~0=v_main_~x~0_6, main_~k~0=v_main_~k~0_6} OutVars{main_~y~0=v_main_~y~0_5, main_~c~0=v_main_~c~0_4, main_~x~0=v_main_~x~0_5, main_~k~0=v_main_~k~0_6} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_~c~0] {2472#(and (<= main_~k~0 5) (<= 0 main_~k~0) (<= 4 main_~c~0))} is VALID [2022-04-14 23:00:27,576 INFO L290 TraceCheckUtils]: 40: Hoare triple {2472#(and (<= main_~k~0 5) (<= 0 main_~k~0) (<= 4 main_~c~0))} [74] L27-2-->L28: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2472#(and (<= main_~k~0 5) (<= 0 main_~k~0) (<= 4 main_~c~0))} is VALID [2022-04-14 23:00:27,576 INFO L272 TraceCheckUtils]: 41: Hoare triple {2472#(and (<= main_~k~0 5) (<= 0 main_~k~0) (<= 4 main_~c~0))} [78] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {2343#true} is VALID [2022-04-14 23:00:27,576 INFO L290 TraceCheckUtils]: 42: Hoare triple {2343#true} [81] __VERIFIER_assertENTRY-->L10: 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] {2343#true} is VALID [2022-04-14 23:00:27,576 INFO L290 TraceCheckUtils]: 43: Hoare triple {2343#true} [86] L10-->L10-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[] {2343#true} is VALID [2022-04-14 23:00:27,576 INFO L290 TraceCheckUtils]: 44: Hoare triple {2343#true} [90] L10-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2343#true} is VALID [2022-04-14 23:00:27,577 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {2343#true} {2472#(and (<= main_~k~0 5) (<= 0 main_~k~0) (<= 4 main_~c~0))} [94] __VERIFIER_assertEXIT-->L28-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {2472#(and (<= main_~k~0 5) (<= 0 main_~k~0) (<= 4 main_~c~0))} is VALID [2022-04-14 23:00:27,577 INFO L290 TraceCheckUtils]: 46: Hoare triple {2472#(and (<= main_~k~0 5) (<= 0 main_~k~0) (<= 4 main_~c~0))} [83] L28-1-->L27-2: Formula: (and (= v_main_~c~0_4 (+ v_main_~c~0_5 1)) (< v_main_~c~0_5 v_main_~k~0_6) (= v_main_~y~0_5 (+ v_main_~y~0_6 1)) (= v_main_~x~0_5 (+ v_main_~x~0_6 (* v_main_~y~0_5 (* v_main_~y~0_5 v_main_~y~0_5))))) InVars {main_~y~0=v_main_~y~0_6, main_~c~0=v_main_~c~0_5, main_~x~0=v_main_~x~0_6, main_~k~0=v_main_~k~0_6} OutVars{main_~y~0=v_main_~y~0_5, main_~c~0=v_main_~c~0_4, main_~x~0=v_main_~x~0_5, main_~k~0=v_main_~k~0_6} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_~c~0] {2494#(and (<= main_~k~0 5) (<= 0 main_~k~0) (<= 5 main_~c~0))} is VALID [2022-04-14 23:00:27,578 INFO L290 TraceCheckUtils]: 47: Hoare triple {2494#(and (<= main_~k~0 5) (<= 0 main_~k~0) (<= 5 main_~c~0))} [74] L27-2-->L28: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2494#(and (<= main_~k~0 5) (<= 0 main_~k~0) (<= 5 main_~c~0))} is VALID [2022-04-14 23:00:27,578 INFO L272 TraceCheckUtils]: 48: Hoare triple {2494#(and (<= main_~k~0 5) (<= 0 main_~k~0) (<= 5 main_~c~0))} [78] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {2343#true} is VALID [2022-04-14 23:00:27,578 INFO L290 TraceCheckUtils]: 49: Hoare triple {2343#true} [81] __VERIFIER_assertENTRY-->L10: 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] {2343#true} is VALID [2022-04-14 23:00:27,578 INFO L290 TraceCheckUtils]: 50: Hoare triple {2343#true} [86] L10-->L10-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[] {2343#true} is VALID [2022-04-14 23:00:27,578 INFO L290 TraceCheckUtils]: 51: Hoare triple {2343#true} [90] L10-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2343#true} is VALID [2022-04-14 23:00:27,579 INFO L284 TraceCheckUtils]: 52: Hoare quadruple {2343#true} {2494#(and (<= main_~k~0 5) (<= 0 main_~k~0) (<= 5 main_~c~0))} [94] __VERIFIER_assertEXIT-->L28-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {2494#(and (<= main_~k~0 5) (<= 0 main_~k~0) (<= 5 main_~c~0))} is VALID [2022-04-14 23:00:27,579 INFO L290 TraceCheckUtils]: 53: Hoare triple {2494#(and (<= main_~k~0 5) (<= 0 main_~k~0) (<= 5 main_~c~0))} [83] L28-1-->L27-2: Formula: (and (= v_main_~c~0_4 (+ v_main_~c~0_5 1)) (< v_main_~c~0_5 v_main_~k~0_6) (= v_main_~y~0_5 (+ v_main_~y~0_6 1)) (= v_main_~x~0_5 (+ v_main_~x~0_6 (* v_main_~y~0_5 (* v_main_~y~0_5 v_main_~y~0_5))))) InVars {main_~y~0=v_main_~y~0_6, main_~c~0=v_main_~c~0_5, main_~x~0=v_main_~x~0_6, main_~k~0=v_main_~k~0_6} OutVars{main_~y~0=v_main_~y~0_5, main_~c~0=v_main_~c~0_4, main_~x~0=v_main_~x~0_5, main_~k~0=v_main_~k~0_6} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_~c~0] {2344#false} is VALID [2022-04-14 23:00:27,579 INFO L290 TraceCheckUtils]: 54: Hoare triple {2344#false} [74] L27-2-->L28: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2344#false} is VALID [2022-04-14 23:00:27,579 INFO L272 TraceCheckUtils]: 55: Hoare triple {2344#false} [78] L28-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {2344#false} is VALID [2022-04-14 23:00:27,579 INFO L290 TraceCheckUtils]: 56: Hoare triple {2344#false} [81] __VERIFIER_assertENTRY-->L10: 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] {2344#false} is VALID [2022-04-14 23:00:27,580 INFO L290 TraceCheckUtils]: 57: Hoare triple {2344#false} [86] L10-->L10-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[] {2344#false} is VALID [2022-04-14 23:00:27,580 INFO L290 TraceCheckUtils]: 58: Hoare triple {2344#false} [90] L10-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2344#false} is VALID [2022-04-14 23:00:27,580 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {2344#false} {2344#false} [94] __VERIFIER_assertEXIT-->L28-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (let ((.cse0 (* v_main_~y~0_8 v_main_~y~0_8))) (+ (* v_main_~x~0_7 4) (* (- 1) (* v_main_~y~0_8 (* (* v_main_~y~0_8 2) v_main_~y~0_8))) (* (- 1) (* (* v_main_~y~0_8 .cse0) v_main_~y~0_8)) (* (- 1) .cse0))) 0) 1 0)) InVars {main_~x~0=v_main_~x~0_7, main_~y~0=v_main_~y~0_8} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~x~0, main_~y~0] {2344#false} is VALID [2022-04-14 23:00:27,580 INFO L290 TraceCheckUtils]: 60: Hoare triple {2344#false} [82] L28-1-->L27-3: Formula: (not (< v_main_~c~0_3 v_main_~k~0_5)) InVars {main_~c~0=v_main_~c~0_3, main_~k~0=v_main_~k~0_5} OutVars{main_~c~0=v_main_~c~0_3, main_~k~0=v_main_~k~0_5} AuxVars[] AssignedVars[] {2344#false} is VALID [2022-04-14 23:00:27,580 INFO L272 TraceCheckUtils]: 61: Hoare triple {2344#false} [77] L27-3-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= (+ (* v_main_~k~0_9 v_main_~y~0_9) (* (- 1) (* v_main_~y~0_9 v_main_~y~0_9))) 0) 1 0)) InVars {main_~y~0=v_main_~y~0_9, main_~k~0=v_main_~k~0_9} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~k~0, main_~y~0] {2344#false} is VALID [2022-04-14 23:00:27,580 INFO L290 TraceCheckUtils]: 62: Hoare triple {2344#false} [81] __VERIFIER_assertENTRY-->L10: 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] {2344#false} is VALID [2022-04-14 23:00:27,580 INFO L290 TraceCheckUtils]: 63: Hoare triple {2344#false} [85] L10-->L11: 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[] {2344#false} is VALID [2022-04-14 23:00:27,582 INFO L290 TraceCheckUtils]: 64: Hoare triple {2344#false} [88] L11-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2344#false} is VALID [2022-04-14 23:00:27,583 INFO L134 CoverageAnalysis]: Checked inductivity of 161 backedges. 99 proven. 0 refuted. 0 times theorem prover too weak. 62 trivial. 0 not checked. [2022-04-14 23:00:27,583 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 23:00:27,583 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 23:00:27,583 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2014771228] [2022-04-14 23:00:27,583 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 23:00:27,583 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1133158775] [2022-04-14 23:00:27,583 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1133158775] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 23:00:27,584 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 23:00:27,584 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-14 23:00:27,585 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [319834939] [2022-04-14 23:00:27,585 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 23:00:27,586 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 10 states have internal predecessors, (29), 8 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 8 states have call successors, (9) Word has length 65 [2022-04-14 23:00:27,586 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 23:00:27,586 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 10 states have internal predecessors, (29), 8 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 8 states have call successors, (9) [2022-04-14 23:00:27,617 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 23:00:27,617 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-14 23:00:27,617 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 23:00:27,617 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-14 23:00:27,617 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=40, Invalid=70, Unknown=0, NotChecked=0, Total=110 [2022-04-14 23:00:27,618 INFO L87 Difference]: Start difference. First operand 46 states and 51 transitions. Second operand has 11 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 10 states have internal predecessors, (29), 8 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 8 states have call successors, (9) [2022-04-14 23:00:27,830 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 23:00:27,830 INFO L93 Difference]: Finished difference Result 38 states and 41 transitions. [2022-04-14 23:00:27,830 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-14 23:00:27,830 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 10 states have internal predecessors, (29), 8 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 8 states have call successors, (9) Word has length 65 [2022-04-14 23:00:27,831 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 23:00:27,831 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 10 states have internal predecessors, (29), 8 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 8 states have call successors, (9) [2022-04-14 23:00:27,837 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 39 transitions. [2022-04-14 23:00:27,837 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 10 states have internal predecessors, (29), 8 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 8 states have call successors, (9) [2022-04-14 23:00:27,838 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 39 transitions. [2022-04-14 23:00:27,838 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 39 transitions. [2022-04-14 23:00:27,862 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 23:00:27,863 INFO L225 Difference]: With dead ends: 38 [2022-04-14 23:00:27,863 INFO L226 Difference]: Without dead ends: 0 [2022-04-14 23:00:27,863 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 65 GetRequests, 55 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 6 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=44, Invalid=88, Unknown=0, NotChecked=0, Total=132 [2022-04-14 23:00:27,863 INFO L913 BasicCegarLoop]: 31 mSDtfsCounter, 4 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 48 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 4 SdHoareTripleChecker+Valid, 128 SdHoareTripleChecker+Invalid, 56 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 48 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-14 23:00:27,863 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [4 Valid, 128 Invalid, 56 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 48 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-14 23:00:27,864 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-14 23:00:27,864 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-14 23:00:27,864 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 23:00:27,864 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-14 23:00:27,864 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-14 23:00:27,864 INFO L87 Difference]: Start difference. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-14 23:00:27,864 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 23:00:27,864 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-14 23:00:27,864 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-14 23:00:27,864 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 23:00:27,864 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 23:00:27,864 INFO L74 IsIncluded]: Start isIncluded. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-14 23:00:27,865 INFO L87 Difference]: Start difference. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-14 23:00:27,865 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 23:00:27,865 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-14 23:00:27,865 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-14 23:00:27,865 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 23:00:27,865 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 23:00:27,865 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 23:00:27,865 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 23:00:27,865 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-14 23:00:27,865 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-14 23:00:27,865 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 65 [2022-04-14 23:00:27,865 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 23:00:27,865 INFO L478 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-14 23:00:27,865 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 10 states have internal predecessors, (29), 8 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 8 states have call successors, (9) [2022-04-14 23:00:27,865 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-14 23:00:27,866 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 23:00:27,867 INFO L788 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-14 23:00:27,873 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-04-14 23:00:28,073 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable8 [2022-04-14 23:00:28,075 INFO L719 BasicCegarLoop]: Path program histogram: [6, 1, 1, 1] [2022-04-14 23:00:28,076 INFO L177 ceAbstractionStarter]: Computing trace abstraction results [2022-04-14 23:00:28,077 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 14.04 11:00:28 BasicIcfg [2022-04-14 23:00:28,077 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-14 23:00:28,078 INFO L158 Benchmark]: Toolchain (without parser) took 9731.85ms. Allocated memory was 187.7MB in the beginning and 287.3MB in the end (delta: 99.6MB). Free memory was 132.2MB in the beginning and 167.6MB in the end (delta: -35.3MB). Peak memory consumption was 64.7MB. Max. memory is 8.0GB. [2022-04-14 23:00:28,078 INFO L158 Benchmark]: CDTParser took 0.09ms. Allocated memory is still 187.7MB. Free memory is still 149.0MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-14 23:00:28,078 INFO L158 Benchmark]: CACSL2BoogieTranslator took 189.17ms. Allocated memory was 187.7MB in the beginning and 232.8MB in the end (delta: 45.1MB). Free memory was 132.0MB in the beginning and 204.1MB in the end (delta: -72.0MB). Peak memory consumption was 6.3MB. Max. memory is 8.0GB. [2022-04-14 23:00:28,078 INFO L158 Benchmark]: Boogie Preprocessor took 36.94ms. Allocated memory is still 232.8MB. Free memory was 204.1MB in the beginning and 202.6MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-14 23:00:28,079 INFO L158 Benchmark]: RCFGBuilder took 232.46ms. Allocated memory is still 232.8MB. Free memory was 202.6MB in the beginning and 191.9MB in the end (delta: 10.7MB). Peak memory consumption was 10.5MB. Max. memory is 8.0GB. [2022-04-14 23:00:28,079 INFO L158 Benchmark]: IcfgTransformer took 32.05ms. Allocated memory is still 232.8MB. Free memory was 191.9MB in the beginning and 190.1MB in the end (delta: 1.8MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-14 23:00:28,079 INFO L158 Benchmark]: TraceAbstraction took 9226.03ms. Allocated memory was 232.8MB in the beginning and 287.3MB in the end (delta: 54.5MB). Free memory was 189.8MB in the beginning and 167.6MB in the end (delta: 22.2MB). Peak memory consumption was 77.3MB. Max. memory is 8.0GB. [2022-04-14 23:00:28,080 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.09ms. Allocated memory is still 187.7MB. Free memory is still 149.0MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 189.17ms. Allocated memory was 187.7MB in the beginning and 232.8MB in the end (delta: 45.1MB). Free memory was 132.0MB in the beginning and 204.1MB in the end (delta: -72.0MB). Peak memory consumption was 6.3MB. Max. memory is 8.0GB. * Boogie Preprocessor took 36.94ms. Allocated memory is still 232.8MB. Free memory was 204.1MB in the beginning and 202.6MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 232.46ms. Allocated memory is still 232.8MB. Free memory was 202.6MB in the beginning and 191.9MB in the end (delta: 10.7MB). Peak memory consumption was 10.5MB. Max. memory is 8.0GB. * IcfgTransformer took 32.05ms. Allocated memory is still 232.8MB. Free memory was 191.9MB in the beginning and 190.1MB in the end (delta: 1.8MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * TraceAbstraction took 9226.03ms. Allocated memory was 232.8MB in the beginning and 287.3MB in the end (delta: 54.5MB). Free memory was 189.8MB in the beginning and 167.6MB in the end (delta: 22.2MB). Peak memory consumption was 77.3MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - PositiveResult [Line: 12]: call to reach_error is unreachable For all program executions holds that call to reach_error is unreachable at this location - StatisticsResult: Ultimate Automizer benchmark data CFG has 5 procedures, 28 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 9.2s, OverallIterations: 9, TraceHistogramMax: 8, PathProgramHistogramMax: 6, EmptinessCheckTime: 0.0s, AutomataDifference: 2.3s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 48 SdHoareTripleChecker+Valid, 0.7s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 41 mSDsluCounter, 1179 SdHoareTripleChecker+Invalid, 0.6s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 924 mSDsCounter, 16 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 679 IncrementalHoareTripleChecker+Invalid, 695 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 16 mSolverCounterUnsat, 255 mSDtfsCounter, 679 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 427 GetRequests, 339 SyntacticMatches, 7 SemanticMatches, 81 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 21 ImplicationChecksByTransitivity, 0.8s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=46occurred in iteration=8, InterpolantAutomatonStates: 69, 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, 9 MinimizatonAttempts, 0 StatesRemovedByMinimization, 0 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.4s SatisfiabilityAnalysisTime, 4.0s InterpolantComputationTime, 343 NumberOfCodeBlocks, 341 NumberOfCodeBlocksAsserted, 24 NumberOfCheckSat, 357 ConstructedInterpolants, 0 QuantifiedInterpolants, 1287 SizeOfPredicates, 13 NumberOfNonLiveVariables, 951 ConjunctsInSsa, 130 ConjunctsInUnsatCore, 10 InterpolantComputations, 4 PerfectInterpolantSequences, 347/454 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold RESULT: Ultimate proved your program to be correct! [2022-04-14 23:00:28,095 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...