/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-fb4f59a-m [2022-04-27 20:02:31,345 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-27 20:02:31,347 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-27 20:02:31,378 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-27 20:02:31,379 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-27 20:02:31,380 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-27 20:02:31,384 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-27 20:02:31,385 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-27 20:02:31,386 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-27 20:02:31,389 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-27 20:02:31,390 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-27 20:02:31,391 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-27 20:02:31,391 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-27 20:02:31,392 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-27 20:02:31,393 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-27 20:02:31,395 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-27 20:02:31,395 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-27 20:02:31,396 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-27 20:02:31,397 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-27 20:02:31,401 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-27 20:02:31,402 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-27 20:02:31,403 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-27 20:02:31,403 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-27 20:02:31,404 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-27 20:02:31,405 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-27 20:02:31,409 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-27 20:02:31,409 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-27 20:02:31,410 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-27 20:02:31,410 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-27 20:02:31,410 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-27 20:02:31,411 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-27 20:02:31,411 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-27 20:02:31,412 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-27 20:02:31,413 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-27 20:02:31,413 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-27 20:02:31,413 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-27 20:02:31,413 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-27 20:02:31,414 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-27 20:02:31,414 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-27 20:02:31,414 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-27 20:02:31,415 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-27 20:02:31,416 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-27 20:02:31,416 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/LoopAccelerationJordanC.epf [2022-04-27 20:02:31,425 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-27 20:02:31,425 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-27 20:02:31,426 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-27 20:02:31,427 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-27 20:02:31,427 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-27 20:02:31,427 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-27 20:02:31,427 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-27 20:02:31,427 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-27 20:02:31,427 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-27 20:02:31,428 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-27 20:02:31,428 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-27 20:02:31,428 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-27 20:02:31,428 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-27 20:02:31,428 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-27 20:02:31,428 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-27 20:02:31,428 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-27 20:02:31,428 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-27 20:02:31,429 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-27 20:02:31,429 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 20:02:31,429 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-27 20:02:31,429 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-27 20:02:31,429 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-27 20:02:31,429 INFO L138 SettingsManager]: * TransformationType=LOOP_ACCELERATION_JORDAN WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-27 20:02:31,588 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-27 20:02:31,602 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-27 20:02:31,603 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-27 20:02:31,604 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-27 20:02:31,605 INFO L275 PluginConnector]: CDTParser initialized [2022-04-27 20:02:31,605 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-27 20:02:31,643 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4cf6f3b99/7109e094c9ce4afa9b360be592c57785/FLAGf5dadad19 [2022-04-27 20:02:31,989 INFO L306 CDTParser]: Found 1 translation units. [2022-04-27 20:02:31,989 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/ps4-ll_valuebound5.c [2022-04-27 20:02:31,993 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4cf6f3b99/7109e094c9ce4afa9b360be592c57785/FLAGf5dadad19 [2022-04-27 20:02:32,000 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4cf6f3b99/7109e094c9ce4afa9b360be592c57785 [2022-04-27 20:02:32,002 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-27 20:02:32,003 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-27 20:02:32,004 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-27 20:02:32,004 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-27 20:02:32,005 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-27 20:02:32,006 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 08:02:32" (1/1) ... [2022-04-27 20:02:32,007 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2c5c63bb and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 08:02:32, skipping insertion in model container [2022-04-27 20:02:32,007 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 08:02:32" (1/1) ... [2022-04-27 20:02:32,011 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-27 20:02:32,018 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-27 20:02:32,115 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-27 20:02:32,126 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 20:02:32,131 INFO L203 MainTranslator]: Completed pre-run [2022-04-27 20:02:32,138 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-27 20:02:32,142 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 20:02:32,154 INFO L208 MainTranslator]: Completed translation [2022-04-27 20:02:32,154 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 08:02:32 WrapperNode [2022-04-27 20:02:32,155 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-27 20:02:32,155 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-27 20:02:32,155 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-27 20:02:32,155 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-27 20:02:32,161 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 08:02:32" (1/1) ... [2022-04-27 20:02:32,162 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 08:02:32" (1/1) ... [2022-04-27 20:02:32,165 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 08:02:32" (1/1) ... [2022-04-27 20:02:32,165 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 08:02:32" (1/1) ... [2022-04-27 20:02:32,169 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 08:02:32" (1/1) ... [2022-04-27 20:02:32,171 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 08:02:32" (1/1) ... [2022-04-27 20:02:32,172 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 08:02:32" (1/1) ... [2022-04-27 20:02:32,173 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-27 20:02:32,173 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-27 20:02:32,173 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-27 20:02:32,173 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-27 20:02:32,174 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 08:02:32" (1/1) ... [2022-04-27 20:02:32,182 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 20:02:32,191 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 20:02:32,202 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-27 20:02:32,203 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-27 20:02:32,227 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-27 20:02:32,228 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-27 20:02:32,228 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-27 20:02:32,228 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-27 20:02:32,228 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-27 20:02:32,228 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-27 20:02:32,228 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-27 20:02:32,228 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-27 20:02:32,228 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-27 20:02:32,228 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-27 20:02:32,228 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_short [2022-04-27 20:02:32,228 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-27 20:02:32,228 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-27 20:02:32,228 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-27 20:02:32,229 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-27 20:02:32,229 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-27 20:02:32,229 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-27 20:02:32,229 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-27 20:02:32,229 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-27 20:02:32,229 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-27 20:02:32,266 INFO L234 CfgBuilder]: Building ICFG [2022-04-27 20:02:32,267 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-27 20:02:32,409 INFO L275 CfgBuilder]: Performing block encoding [2022-04-27 20:02:32,425 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-27 20:02:32,425 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-27 20:02:32,426 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 08:02:32 BoogieIcfgContainer [2022-04-27 20:02:32,426 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-27 20:02:32,427 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-27 20:02:32,427 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-27 20:02:32,428 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-27 20:02:32,429 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 08:02:32" (1/1) ... [2022-04-27 20:02:32,431 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_JORDAN [2022-04-27 20:02:32,448 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 27.04 08:02:32 BasicIcfg [2022-04-27 20:02:32,448 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-27 20:02:32,449 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-27 20:02:32,449 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-27 20:02:32,452 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-27 20:02:32,452 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 27.04 08:02:32" (1/4) ... [2022-04-27 20:02:32,452 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6e603c36 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 08:02:32, skipping insertion in model container [2022-04-27 20:02:32,452 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 08:02:32" (2/4) ... [2022-04-27 20:02:32,453 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6e603c36 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 08:02:32, skipping insertion in model container [2022-04-27 20:02:32,453 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 08:02:32" (3/4) ... [2022-04-27 20:02:32,453 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6e603c36 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 27.04 08:02:32, skipping insertion in model container [2022-04-27 20:02:32,453 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 27.04 08:02:32" (4/4) ... [2022-04-27 20:02:32,454 INFO L111 eAbstractionObserver]: Analyzing ICFG ps4-ll_valuebound5.cJordan [2022-04-27 20:02:32,463 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:ForwardPredicates Determinization: PREDICATE_ABSTRACTION [2022-04-27 20:02:32,463 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-27 20:02:32,491 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-27 20:02:32,495 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=ForwardPredicates, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=false, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@793d53c3, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@e083d77 [2022-04-27 20:02:32,496 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-27 20:02:32,501 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-27 20:02:32,521 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-04-27 20:02:32,522 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 20:02:32,522 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 20:02:32,522 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 20:02:32,526 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 20:02:32,526 INFO L85 PathProgramCache]: Analyzing trace with hash -1885409022, now seen corresponding path program 1 times [2022-04-27 20:02:32,532 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 20:02:32,532 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [218740333] [2022-04-27 20:02:32,532 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 20:02:32,534 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 20:02:32,629 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 20:02:32,692 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-27 20:02:32,697 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 20:02:32,710 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-27 20:02:32,711 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-27 20:02:32,711 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-27 20:02:32,712 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-27 20:02:32,716 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 20:02:32,723 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-27 20:02:32,724 INFO L290 TraceCheckUtils]: 1: Hoare triple {31#true} [75] L7-->L7-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {32#false} is VALID [2022-04-27 20:02:32,724 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-27 20:02:32,724 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-27 20:02:32,726 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-27 20:02:32,727 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-27 20:02:32,727 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-27 20:02:32,727 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-27 20:02:32,728 INFO L272 TraceCheckUtils]: 4: Hoare triple {31#true} [64] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {31#true} is VALID [2022-04-27 20:02:32,729 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-27 20:02:32,729 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-27 20:02:32,729 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-27 20:02:32,731 INFO L290 TraceCheckUtils]: 8: Hoare triple {31#true} [75] L7-->L7-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {32#false} is VALID [2022-04-27 20:02:32,732 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-27 20:02:32,733 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-27 20:02:32,733 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-27 20:02:32,733 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-27 20:02:32,733 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-27 20:02:32,733 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-27 20:02:32,734 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-27 20:02:32,734 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-27 20:02:32,734 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 20:02:32,735 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 20:02:32,735 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [218740333] [2022-04-27 20:02:32,735 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [218740333] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 20:02:32,736 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 20:02:32,736 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-27 20:02:32,738 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [648502290] [2022-04-27 20:02:32,739 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 20:02:32,743 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 17 [2022-04-27 20:02:32,744 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 20:02:32,746 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 20:02:32,770 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 17 edges. 17 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 20:02:32,770 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-27 20:02:32,770 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 20:02:32,782 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-27 20:02:32,783 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-27 20:02:32,785 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-27 20:02:32,849 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 20:02:32,849 INFO L93 Difference]: Finished difference Result 28 states and 30 transitions. [2022-04-27 20:02:32,849 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-27 20:02:32,850 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 17 [2022-04-27 20:02:32,850 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 20:02:32,851 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 20:02:32,855 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 34 transitions. [2022-04-27 20:02:32,855 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 20:02:32,857 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 34 transitions. [2022-04-27 20:02:32,857 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 34 transitions. [2022-04-27 20:02:32,894 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-27 20:02:32,900 INFO L225 Difference]: With dead ends: 28 [2022-04-27 20:02:32,900 INFO L226 Difference]: Without dead ends: 23 [2022-04-27 20:02:32,901 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 6 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-27 20:02:32,903 INFO L413 NwaCegarLoop]: 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-27 20:02:32,908 INFO L414 NwaCegarLoop]: 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-27 20:02:32,921 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 23 states. [2022-04-27 20:02:32,932 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 23 to 23. [2022-04-27 20:02:32,932 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 20:02:32,933 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-27 20:02:32,933 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-27 20:02:32,934 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-27 20:02:32,940 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 20:02:32,941 INFO L93 Difference]: Finished difference Result 23 states and 25 transitions. [2022-04-27 20:02:32,941 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 25 transitions. [2022-04-27 20:02:32,941 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 20:02:32,941 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 20:02:32,942 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-27 20:02:32,942 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-27 20:02:32,945 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 20:02:32,945 INFO L93 Difference]: Finished difference Result 23 states and 25 transitions. [2022-04-27 20:02:32,945 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 25 transitions. [2022-04-27 20:02:32,946 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 20:02:32,947 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 20:02:32,948 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 20:02:32,948 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 20:02:32,952 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-27 20:02:32,956 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 25 transitions. [2022-04-27 20:02:32,957 INFO L78 Accepts]: Start accepts. Automaton has 23 states and 25 transitions. Word has length 17 [2022-04-27 20:02:32,957 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 20:02:32,957 INFO L495 AbstractCegarLoop]: Abstraction has 23 states and 25 transitions. [2022-04-27 20:02:32,957 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-27 20:02:32,957 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 25 transitions. [2022-04-27 20:02:32,958 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-04-27 20:02:32,958 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 20:02:32,958 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 20:02:32,958 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-27 20:02:32,959 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 20:02:32,960 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 20:02:32,961 INFO L85 PathProgramCache]: Analyzing trace with hash 603980644, now seen corresponding path program 1 times [2022-04-27 20:02:32,961 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 20:02:32,961 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [764542706] [2022-04-27 20:02:32,961 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 20:02:32,962 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 20:02:32,988 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 20:02:32,988 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1177150463] [2022-04-27 20:02:32,988 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 20:02:32,988 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 20:02:32,988 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 20:02:32,992 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 20:02:33,019 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-27 20:02:33,052 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 20:02:33,053 INFO L263 TraceCheckSpWp]: Trace formula consists of 68 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-27 20:02:33,067 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 20:02:33,070 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 20:02:33,214 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-27 20:02:33,215 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-27 20:02:33,215 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-27 20:02:33,215 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-27 20:02:33,215 INFO L272 TraceCheckUtils]: 4: Hoare triple {140#true} [64] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {140#true} is VALID [2022-04-27 20:02:33,215 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-27 20:02:33,216 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-27 20:02:33,216 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-27 20:02:33,216 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-27 20:02:33,216 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-27 20:02:33,216 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-27 20:02:33,217 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-27 20:02:33,217 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-27 20:02:33,218 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-27 20:02:33,219 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-27 20:02:33,220 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-27 20:02:33,220 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-27 20:02:33,221 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 20:02:33,221 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 20:02:33,221 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 20:02:33,221 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [764542706] [2022-04-27 20:02:33,221 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 20:02:33,224 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1177150463] [2022-04-27 20:02:33,224 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1177150463] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 20:02:33,225 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 20:02:33,225 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 20:02:33,225 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [350077637] [2022-04-27 20:02:33,226 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 20:02:33,227 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-27 20:02:33,227 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 20:02:33,228 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-27 20:02:33,243 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 17 edges. 17 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 20:02:33,243 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 20:02:33,243 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 20:02:33,244 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 20:02:33,245 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-27 20:02:33,246 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-27 20:02:33,376 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 20:02:33,376 INFO L93 Difference]: Finished difference Result 32 states and 36 transitions. [2022-04-27 20:02:33,376 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 20:02:33,377 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-27 20:02:33,377 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 20:02:33,378 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-27 20:02:33,382 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 37 transitions. [2022-04-27 20:02:33,382 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-27 20:02:33,387 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 37 transitions. [2022-04-27 20:02:33,387 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 37 transitions. [2022-04-27 20:02:33,412 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 37 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 20:02:33,414 INFO L225 Difference]: With dead ends: 32 [2022-04-27 20:02:33,414 INFO L226 Difference]: Without dead ends: 30 [2022-04-27 20:02:33,414 INFO L412 NwaCegarLoop]: 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-27 20:02:33,416 INFO L413 NwaCegarLoop]: 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-27 20:02:33,416 INFO L414 NwaCegarLoop]: 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-27 20:02:33,418 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 30 states. [2022-04-27 20:02:33,421 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 30 to 30. [2022-04-27 20:02:33,421 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 20:02:33,421 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-27 20:02:33,421 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-27 20:02:33,422 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-27 20:02:33,424 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 20:02:33,424 INFO L93 Difference]: Finished difference Result 30 states and 32 transitions. [2022-04-27 20:02:33,425 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 32 transitions. [2022-04-27 20:02:33,425 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 20:02:33,425 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 20:02:33,426 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-27 20:02:33,426 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-27 20:02:33,430 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 20:02:33,431 INFO L93 Difference]: Finished difference Result 30 states and 32 transitions. [2022-04-27 20:02:33,431 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 32 transitions. [2022-04-27 20:02:33,432 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 20:02:33,432 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 20:02:33,432 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 20:02:33,432 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 20:02:33,434 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-27 20:02:33,435 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 32 transitions. [2022-04-27 20:02:33,435 INFO L78 Accepts]: Start accepts. Automaton has 30 states and 32 transitions. Word has length 17 [2022-04-27 20:02:33,435 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 20:02:33,435 INFO L495 AbstractCegarLoop]: Abstraction has 30 states and 32 transitions. [2022-04-27 20:02:33,436 INFO L496 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-27 20:02:33,436 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 32 transitions. [2022-04-27 20:02:33,437 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-04-27 20:02:33,437 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 20:02:33,437 INFO L195 NwaCegarLoop]: 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-27 20:02:33,467 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-04-27 20:02:33,651 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 20:02:33,652 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 20:02:33,652 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 20:02:33,652 INFO L85 PathProgramCache]: Analyzing trace with hash -169450186, now seen corresponding path program 1 times [2022-04-27 20:02:33,652 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 20:02:33,652 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [89687589] [2022-04-27 20:02:33,652 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 20:02:33,653 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 20:02:33,664 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 20:02:33,664 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1276711235] [2022-04-27 20:02:33,664 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 20:02:33,664 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 20:02:33,665 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 20:02:33,668 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 20:02:33,672 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-27 20:02:33,708 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 20:02:33,709 INFO L263 TraceCheckSpWp]: Trace formula consists of 85 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-27 20:02:33,724 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 20:02:33,725 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 20:02:33,887 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-27 20:02:33,888 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-27 20:02:33,888 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-27 20:02:33,888 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-27 20:02:33,888 INFO L272 TraceCheckUtils]: 4: Hoare triple {319#true} [64] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {319#true} is VALID [2022-04-27 20:02:33,888 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-27 20:02:33,889 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-27 20:02:33,889 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-27 20:02:33,892 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-27 20:02:33,892 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-27 20:02:33,892 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-27 20:02:33,893 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-27 20:02:33,894 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-27 20:02:33,894 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-27 20:02:33,896 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-27 20:02:33,896 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-27 20:02:33,896 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-27 20:02:33,897 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-27 20:02:33,898 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-27 20:02:33,898 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-27 20:02:33,899 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-27 20:02:33,900 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-27 20:02:33,900 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-27 20:02:33,900 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-27 20:02:33,901 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-27 20:02:33,901 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 20:02:34,189 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-27 20:02:34,190 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-27 20:02:34,190 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-27 20:02:34,191 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-27 20:02:34,192 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-27 20:02:34,199 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-27 20:02:34,200 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-27 20:02:34,200 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-27 20:02:34,201 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-27 20:02:34,201 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-27 20:02:34,201 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-27 20:02:34,201 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-27 20:02:34,202 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-27 20:02:34,202 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-27 20:02:34,202 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-27 20:02:34,203 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-27 20:02:34,203 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-27 20:02:34,203 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-27 20:02:34,203 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-27 20:02:34,203 INFO L272 TraceCheckUtils]: 4: Hoare triple {319#true} [64] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {319#true} is VALID [2022-04-27 20:02:34,203 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-27 20:02:34,203 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-27 20:02:34,204 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-27 20:02:34,204 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-27 20:02:34,204 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-27 20:02:34,204 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 20:02:34,204 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [89687589] [2022-04-27 20:02:34,204 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 20:02:34,204 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1276711235] [2022-04-27 20:02:34,204 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1276711235] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-27 20:02:34,204 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-27 20:02:34,205 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [6] total 7 [2022-04-27 20:02:34,205 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1123395715] [2022-04-27 20:02:34,205 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 20:02:34,205 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-27 20:02:34,205 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 20:02:34,206 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-27 20:02:34,232 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-27 20:02:34,232 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 20:02:34,232 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 20:02:34,233 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 20:02:34,233 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-04-27 20:02:34,233 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-27 20:02:34,342 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 20:02:34,342 INFO L93 Difference]: Finished difference Result 34 states and 35 transitions. [2022-04-27 20:02:34,342 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 20:02:34,342 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-27 20:02:34,343 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 20:02:34,343 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-27 20:02:34,344 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 29 transitions. [2022-04-27 20:02:34,344 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-27 20:02:34,346 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 29 transitions. [2022-04-27 20:02:34,346 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 29 transitions. [2022-04-27 20:02:34,373 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-27 20:02:34,374 INFO L225 Difference]: With dead ends: 34 [2022-04-27 20:02:34,374 INFO L226 Difference]: Without dead ends: 31 [2022-04-27 20:02:34,374 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 48 GetRequests, 40 SyntacticMatches, 2 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2022-04-27 20:02:34,375 INFO L413 NwaCegarLoop]: 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-27 20:02:34,375 INFO L414 NwaCegarLoop]: 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-27 20:02:34,376 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 31 states. [2022-04-27 20:02:34,377 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 31 to 31. [2022-04-27 20:02:34,377 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 20:02:34,377 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-27 20:02:34,377 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-27 20:02:34,378 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-27 20:02:34,379 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 20:02:34,379 INFO L93 Difference]: Finished difference Result 31 states and 31 transitions. [2022-04-27 20:02:34,379 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 31 transitions. [2022-04-27 20:02:34,379 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 20:02:34,379 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 20:02:34,379 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-27 20:02:34,379 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-27 20:02:34,380 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 20:02:34,380 INFO L93 Difference]: Finished difference Result 31 states and 31 transitions. [2022-04-27 20:02:34,380 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 31 transitions. [2022-04-27 20:02:34,381 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 20:02:34,381 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 20:02:34,381 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 20:02:34,381 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 20:02:34,381 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-27 20:02:34,382 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 31 transitions. [2022-04-27 20:02:34,382 INFO L78 Accepts]: Start accepts. Automaton has 31 states and 31 transitions. Word has length 24 [2022-04-27 20:02:34,382 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 20:02:34,382 INFO L495 AbstractCegarLoop]: Abstraction has 31 states and 31 transitions. [2022-04-27 20:02:34,382 INFO L496 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-27 20:02:34,382 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 31 transitions. [2022-04-27 20:02:34,382 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 31 [2022-04-27 20:02:34,382 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 20:02:34,383 INFO L195 NwaCegarLoop]: 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-27 20:02:34,399 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-27 20:02:34,599 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-27 20:02:34,599 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 20:02:34,600 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 20:02:34,600 INFO L85 PathProgramCache]: Analyzing trace with hash -434891502, now seen corresponding path program 1 times [2022-04-27 20:02:34,600 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 20:02:34,600 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [535741911] [2022-04-27 20:02:34,600 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 20:02:34,600 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 20:02:34,616 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 20:02:34,616 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1605693908] [2022-04-27 20:02:34,616 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 20:02:34,616 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 20:02:34,616 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 20:02:34,626 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 20:02:34,626 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-27 20:02:34,657 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 20:02:34,658 INFO L263 TraceCheckSpWp]: Trace formula consists of 95 conjuncts, 12 conjunts are in the unsatisfiable core [2022-04-27 20:02:34,665 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 20:02:34,666 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 20:02:34,904 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-27 20:02:34,904 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-27 20:02:34,904 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-27 20:02:34,905 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-27 20:02:34,905 INFO L272 TraceCheckUtils]: 4: Hoare triple {598#true} [64] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {598#true} is VALID [2022-04-27 20:02:34,905 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-27 20:02:34,905 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-27 20:02:34,905 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-27 20:02:34,905 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-27 20:02:34,905 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-27 20:02:34,905 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-27 20:02:34,906 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-27 20:02:34,906 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-27 20:02:34,913 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-27 20:02:34,913 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-27 20:02:34,913 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-27 20:02:34,913 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-27 20:02:34,914 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-27 20:02:34,915 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-27 20:02:34,916 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-27 20:02:34,916 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-27 20:02:34,916 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-27 20:02:34,916 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-27 20:02:34,916 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-27 20:02:34,920 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-27 20:02:34,920 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-27 20:02:34,922 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-27 20:02:34,922 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-27 20:02:34,923 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-27 20:02:34,923 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-27 20:02:34,923 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-27 20:02:34,923 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 20:02:35,251 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 20:02:35,251 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [535741911] [2022-04-27 20:02:35,251 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 20:02:35,251 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1605693908] [2022-04-27 20:02:35,251 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1605693908] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 20:02:35,251 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-27 20:02:35,251 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7] total 7 [2022-04-27 20:02:35,251 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1794126834] [2022-04-27 20:02:35,251 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-27 20:02:35,252 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-27 20:02:35,252 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 20:02:35,252 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-27 20:02:35,268 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-27 20:02:35,269 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-27 20:02:35,269 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 20:02:35,269 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-27 20:02:35,269 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=66, Unknown=0, NotChecked=0, Total=90 [2022-04-27 20:02:35,269 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-27 20:02:35,439 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 20:02:35,440 INFO L93 Difference]: Finished difference Result 37 states and 38 transitions. [2022-04-27 20:02:35,440 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-27 20:02:35,440 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-27 20:02:35,440 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 20:02:35,440 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-27 20:02:35,441 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 35 transitions. [2022-04-27 20:02:35,441 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-27 20:02:35,442 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 35 transitions. [2022-04-27 20:02:35,442 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 35 transitions. [2022-04-27 20:02:35,467 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-27 20:02:35,468 INFO L225 Difference]: With dead ends: 37 [2022-04-27 20:02:35,468 INFO L226 Difference]: Without dead ends: 34 [2022-04-27 20:02:35,468 INFO L412 NwaCegarLoop]: 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-27 20:02:35,469 INFO L413 NwaCegarLoop]: 25 mSDtfsCounter, 2 mSDsluCounter, 90 mSDsCounter, 0 mSdLazyCounter, 51 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s 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.0s IncrementalHoareTripleChecker+Time [2022-04-27 20:02:35,469 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [2 Valid, 115 Invalid, 51 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 51 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-27 20:02:35,469 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-27 20:02:35,471 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 34. [2022-04-27 20:02:35,471 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 20:02:35,471 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-27 20:02:35,471 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-27 20:02:35,471 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-27 20:02:35,473 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 20:02:35,473 INFO L93 Difference]: Finished difference Result 34 states and 35 transitions. [2022-04-27 20:02:35,473 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 35 transitions. [2022-04-27 20:02:35,473 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 20:02:35,473 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 20:02:35,473 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-27 20:02:35,473 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-27 20:02:35,475 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 20:02:35,475 INFO L93 Difference]: Finished difference Result 34 states and 35 transitions. [2022-04-27 20:02:35,475 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 35 transitions. [2022-04-27 20:02:35,475 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 20:02:35,475 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 20:02:35,475 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 20:02:35,475 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 20:02:35,475 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-27 20:02:35,476 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 35 transitions. [2022-04-27 20:02:35,476 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 35 transitions. Word has length 30 [2022-04-27 20:02:35,476 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 20:02:35,476 INFO L495 AbstractCegarLoop]: Abstraction has 34 states and 35 transitions. [2022-04-27 20:02:35,477 INFO L496 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-27 20:02:35,477 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 35 transitions. [2022-04-27 20:02:35,477 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-04-27 20:02:35,477 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 20:02:35,477 INFO L195 NwaCegarLoop]: 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-27 20:02:35,498 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-27 20:02:35,698 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 20:02:35,698 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 20:02:35,699 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 20:02:35,699 INFO L85 PathProgramCache]: Analyzing trace with hash 725792896, now seen corresponding path program 2 times [2022-04-27 20:02:35,699 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 20:02:35,699 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1534121390] [2022-04-27 20:02:35,699 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 20:02:35,699 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 20:02:35,716 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 20:02:35,716 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1912966242] [2022-04-27 20:02:35,716 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 20:02:35,716 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 20:02:35,717 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 20:02:35,717 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 20:02:35,718 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-27 20:02:35,752 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 20:02:35,753 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 20:02:35,753 INFO L263 TraceCheckSpWp]: Trace formula consists of 112 conjuncts, 16 conjunts are in the unsatisfiable core [2022-04-27 20:02:35,764 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 20:02:35,764 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 20:02:36,026 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-27 20:02:36,026 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-27 20:02:36,026 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-27 20:02:36,026 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-27 20:02:36,026 INFO L272 TraceCheckUtils]: 4: Hoare triple {879#true} [64] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {879#true} is VALID [2022-04-27 20:02:36,026 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-27 20:02:36,026 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-27 20:02:36,027 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-27 20:02:36,027 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-27 20:02:36,027 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-27 20:02:36,027 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-27 20:02:36,035 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-27 20:02:36,036 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-27 20:02:36,036 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-27 20:02:36,036 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-27 20:02:36,036 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-27 20:02:36,036 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-27 20:02:36,037 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-27 20:02:36,037 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-27 20:02:36,038 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-27 20:02:36,038 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-27 20:02:36,038 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-27 20:02:36,038 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-27 20:02:36,038 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-27 20:02:36,039 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-27 20:02:36,039 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-27 20:02:36,039 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-27 20:02:36,040 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-27 20:02:36,040 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-27 20:02:36,040 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-27 20:02:36,040 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-27 20:02:36,040 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-27 20:02:36,041 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-27 20:02:36,041 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-27 20:02:36,042 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-27 20:02:36,042 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-27 20:02:36,042 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-27 20:02:36,042 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-27 20:02:36,042 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 20:02:36,312 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 20:02:36,313 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1534121390] [2022-04-27 20:02:36,313 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 20:02:36,313 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1912966242] [2022-04-27 20:02:36,313 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1912966242] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 20:02:36,313 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-27 20:02:36,313 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8] total 8 [2022-04-27 20:02:36,313 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1586568254] [2022-04-27 20:02:36,313 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-27 20:02:36,313 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-27 20:02:36,314 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 20:02:36,314 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-27 20:02:36,337 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-27 20:02:36,337 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-27 20:02:36,337 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 20:02:36,337 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-27 20:02:36,338 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=27, Invalid=83, Unknown=0, NotChecked=0, Total=110 [2022-04-27 20:02:36,338 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-27 20:02:36,550 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 20:02:36,550 INFO L93 Difference]: Finished difference Result 40 states and 42 transitions. [2022-04-27 20:02:36,550 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-27 20:02:36,550 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-27 20:02:36,550 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 20:02:36,551 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-27 20:02:36,552 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 39 transitions. [2022-04-27 20:02:36,552 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-27 20:02:36,553 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 39 transitions. [2022-04-27 20:02:36,553 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 39 transitions. [2022-04-27 20:02:36,581 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-27 20:02:36,582 INFO L225 Difference]: With dead ends: 40 [2022-04-27 20:02:36,582 INFO L226 Difference]: Without dead ends: 37 [2022-04-27 20:02:36,582 INFO L412 NwaCegarLoop]: 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-27 20:02:36,583 INFO L413 NwaCegarLoop]: 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-27 20:02:36,583 INFO L414 NwaCegarLoop]: 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-27 20:02:36,583 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2022-04-27 20:02:36,585 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 37. [2022-04-27 20:02:36,585 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 20:02:36,585 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-27 20:02:36,585 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-27 20:02:36,586 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-27 20:02:36,587 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 20:02:36,587 INFO L93 Difference]: Finished difference Result 37 states and 39 transitions. [2022-04-27 20:02:36,587 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 39 transitions. [2022-04-27 20:02:36,587 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 20:02:36,587 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 20:02:36,587 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-27 20:02:36,588 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-27 20:02:36,589 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 20:02:36,589 INFO L93 Difference]: Finished difference Result 37 states and 39 transitions. [2022-04-27 20:02:36,589 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 39 transitions. [2022-04-27 20:02:36,589 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 20:02:36,589 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 20:02:36,589 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 20:02:36,589 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 20:02:36,589 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-27 20:02:36,590 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 39 transitions. [2022-04-27 20:02:36,590 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 39 transitions. Word has length 37 [2022-04-27 20:02:36,590 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 20:02:36,591 INFO L495 AbstractCegarLoop]: Abstraction has 37 states and 39 transitions. [2022-04-27 20:02:36,591 INFO L496 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-27 20:02:36,591 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 39 transitions. [2022-04-27 20:02:36,591 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-04-27 20:02:36,591 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 20:02:36,591 INFO L195 NwaCegarLoop]: 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-27 20:02:36,610 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-27 20:02:36,808 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 20:02:36,808 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 20:02:36,808 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 20:02:36,809 INFO L85 PathProgramCache]: Analyzing trace with hash 1487404370, now seen corresponding path program 3 times [2022-04-27 20:02:36,809 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 20:02:36,809 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2014242052] [2022-04-27 20:02:36,809 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 20:02:36,809 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 20:02:36,823 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 20:02:36,823 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [428747080] [2022-04-27 20:02:36,823 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-27 20:02:36,823 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 20:02:36,823 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 20:02:36,824 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 20:02:36,825 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-27 20:02:36,917 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2022-04-27 20:02:36,917 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 20:02:36,918 INFO L263 TraceCheckSpWp]: Trace formula consists of 129 conjuncts, 20 conjunts are in the unsatisfiable core [2022-04-27 20:02:36,940 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 20:02:36,941 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 20:02:37,189 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-27 20:02:37,190 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-27 20:02:37,190 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-27 20:02:37,190 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-27 20:02:37,190 INFO L272 TraceCheckUtils]: 4: Hoare triple {1194#true} [64] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1194#true} is VALID [2022-04-27 20:02:37,190 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-27 20:02:37,190 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-27 20:02:37,190 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-27 20:02:37,190 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-27 20:02:37,190 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-27 20:02:37,190 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-27 20:02:37,192 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-27 20:02:37,193 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-27 20:02:37,193 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-27 20:02:37,193 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-27 20:02:37,193 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-27 20:02:37,193 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-27 20:02:37,194 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-27 20:02:37,194 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-27 20:02:37,195 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-27 20:02:37,195 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-27 20:02:37,195 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-27 20:02:37,195 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-27 20:02:37,195 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-27 20:02:37,196 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-27 20:02:37,196 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-27 20:02:37,196 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-27 20:02:37,196 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-27 20:02:37,197 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-27 20:02:37,197 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-27 20:02:37,197 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-27 20:02:37,199 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-27 20:02:37,200 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-27 20:02:37,200 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-27 20:02:37,200 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-27 20:02:37,200 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-27 20:02:37,201 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-27 20:02:37,201 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-27 20:02:37,201 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-27 20:02:37,202 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-27 20:02:37,202 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-27 20:02:37,202 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-27 20:02:37,203 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-27 20:02:37,203 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-27 20:02:37,203 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-27 20:02:37,203 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 20:02:37,448 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 20:02:37,448 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2014242052] [2022-04-27 20:02:37,448 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 20:02:37,448 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [428747080] [2022-04-27 20:02:37,448 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [428747080] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 20:02:37,448 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-27 20:02:37,448 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9] total 9 [2022-04-27 20:02:37,448 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [567941737] [2022-04-27 20:02:37,448 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-27 20:02:37,449 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-27 20:02:37,449 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 20:02:37,449 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-27 20:02:37,473 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-27 20:02:37,473 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-27 20:02:37,473 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 20:02:37,474 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-27 20:02:37,474 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=30, Invalid=102, Unknown=0, NotChecked=0, Total=132 [2022-04-27 20:02:37,474 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-27 20:02:37,760 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 20:02:37,761 INFO L93 Difference]: Finished difference Result 43 states and 46 transitions. [2022-04-27 20:02:37,761 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-27 20:02:37,761 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-27 20:02:37,761 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 20:02:37,761 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-27 20:02:37,762 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 43 transitions. [2022-04-27 20:02:37,762 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-27 20:02:37,763 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 43 transitions. [2022-04-27 20:02:37,763 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 43 transitions. [2022-04-27 20:02:37,791 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 20:02:37,791 INFO L225 Difference]: With dead ends: 43 [2022-04-27 20:02:37,791 INFO L226 Difference]: Without dead ends: 40 [2022-04-27 20:02:37,792 INFO L412 NwaCegarLoop]: 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-27 20:02:37,792 INFO L413 NwaCegarLoop]: 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-27 20:02:37,793 INFO L414 NwaCegarLoop]: 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-27 20:02:37,793 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 40 states. [2022-04-27 20:02:37,795 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 40 to 40. [2022-04-27 20:02:37,795 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 20:02:37,795 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-27 20:02:37,795 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-27 20:02:37,795 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-27 20:02:37,796 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 20:02:37,796 INFO L93 Difference]: Finished difference Result 40 states and 43 transitions. [2022-04-27 20:02:37,797 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 43 transitions. [2022-04-27 20:02:37,797 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 20:02:37,797 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 20:02:37,797 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-27 20:02:37,797 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-27 20:02:37,798 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 20:02:37,798 INFO L93 Difference]: Finished difference Result 40 states and 43 transitions. [2022-04-27 20:02:37,798 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 43 transitions. [2022-04-27 20:02:37,799 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 20:02:37,799 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 20:02:37,799 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 20:02:37,799 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 20:02:37,799 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-27 20:02:37,800 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 43 transitions. [2022-04-27 20:02:37,800 INFO L78 Accepts]: Start accepts. Automaton has 40 states and 43 transitions. Word has length 44 [2022-04-27 20:02:37,800 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 20:02:37,800 INFO L495 AbstractCegarLoop]: Abstraction has 40 states and 43 transitions. [2022-04-27 20:02:37,800 INFO L496 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-27 20:02:37,800 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 43 transitions. [2022-04-27 20:02:37,801 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 52 [2022-04-27 20:02:37,801 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 20:02:37,801 INFO L195 NwaCegarLoop]: 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-27 20:02:37,809 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Ended with exit code 0 [2022-04-27 20:02:38,005 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 20:02:38,006 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 20:02:38,006 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 20:02:38,006 INFO L85 PathProgramCache]: Analyzing trace with hash 1178929216, now seen corresponding path program 4 times [2022-04-27 20:02:38,006 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 20:02:38,006 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1900087164] [2022-04-27 20:02:38,006 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 20:02:38,007 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 20:02:38,018 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 20:02:38,018 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2046412306] [2022-04-27 20:02:38,018 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-27 20:02:38,018 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 20:02:38,018 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 20:02:38,020 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 20:02:38,021 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-27 20:02:38,116 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-27 20:02:38,116 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 20:02:38,117 INFO L263 TraceCheckSpWp]: Trace formula consists of 119 conjuncts, 24 conjunts are in the unsatisfiable core [2022-04-27 20:02:38,131 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 20:02:38,132 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 20:02:38,419 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-27 20:02:38,420 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-27 20:02:38,420 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-27 20:02:38,420 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-27 20:02:38,420 INFO L272 TraceCheckUtils]: 4: Hoare triple {1543#true} [64] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1543#true} is VALID [2022-04-27 20:02:38,420 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-27 20:02:38,420 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-27 20:02:38,420 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-27 20:02:38,420 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-27 20:02:38,420 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-27 20:02:38,420 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-27 20:02:38,421 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-27 20:02:38,421 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-27 20:02:38,421 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-27 20:02:38,421 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-27 20:02:38,421 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-27 20:02:38,421 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-27 20:02:38,422 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-27 20:02:38,422 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-27 20:02:38,423 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-27 20:02:38,423 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-27 20:02:38,423 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-27 20:02:38,423 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-27 20:02:38,423 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-27 20:02:38,424 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-27 20:02:38,424 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-27 20:02:38,424 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-27 20:02:38,425 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-27 20:02:38,425 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-27 20:02:38,425 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-27 20:02:38,425 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-27 20:02:38,425 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-27 20:02:38,426 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-27 20:02:38,426 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-27 20:02:38,426 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-27 20:02:38,426 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-27 20:02:38,426 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-27 20:02:38,426 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-27 20:02:38,427 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-27 20:02:38,427 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-27 20:02:38,428 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-27 20:02:38,428 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-27 20:02:38,428 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-27 20:02:38,428 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-27 20:02:38,428 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-27 20:02:38,429 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-27 20:02:38,429 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-27 20:02:38,430 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-27 20:02:38,430 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-27 20:02:38,430 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-27 20:02:38,431 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-27 20:02:38,431 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-27 20:02:38,431 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 20:02:38,657 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 20:02:38,657 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1900087164] [2022-04-27 20:02:38,657 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 20:02:38,657 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2046412306] [2022-04-27 20:02:38,657 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2046412306] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 20:02:38,657 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-27 20:02:38,657 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10] total 10 [2022-04-27 20:02:38,658 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [303005208] [2022-04-27 20:02:38,658 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-27 20:02:38,658 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-27 20:02:38,658 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 20:02:38,658 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-27 20:02:38,683 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-27 20:02:38,684 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-27 20:02:38,684 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 20:02:38,684 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-27 20:02:38,684 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=123, Unknown=0, NotChecked=0, Total=156 [2022-04-27 20:02:38,684 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-27 20:02:39,050 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 20:02:39,050 INFO L93 Difference]: Finished difference Result 46 states and 50 transitions. [2022-04-27 20:02:39,050 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-27 20:02:39,050 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-27 20:02:39,051 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 20:02:39,051 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-27 20:02:39,054 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 47 transitions. [2022-04-27 20:02:39,054 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-27 20:02:39,055 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 47 transitions. [2022-04-27 20:02:39,055 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 47 transitions. [2022-04-27 20:02:39,090 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-27 20:02:39,091 INFO L225 Difference]: With dead ends: 46 [2022-04-27 20:02:39,091 INFO L226 Difference]: Without dead ends: 43 [2022-04-27 20:02:39,091 INFO L412 NwaCegarLoop]: 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-27 20:02:39,092 INFO L413 NwaCegarLoop]: 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-27 20:02:39,092 INFO L414 NwaCegarLoop]: 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-27 20:02:39,093 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 43 states. [2022-04-27 20:02:39,094 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 43 to 43. [2022-04-27 20:02:39,094 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 20:02:39,095 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-27 20:02:39,095 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-27 20:02:39,095 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-27 20:02:39,096 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 20:02:39,096 INFO L93 Difference]: Finished difference Result 43 states and 47 transitions. [2022-04-27 20:02:39,096 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 47 transitions. [2022-04-27 20:02:39,097 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 20:02:39,097 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 20:02:39,097 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-27 20:02:39,097 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-27 20:02:39,098 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 20:02:39,098 INFO L93 Difference]: Finished difference Result 43 states and 47 transitions. [2022-04-27 20:02:39,098 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 47 transitions. [2022-04-27 20:02:39,098 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 20:02:39,098 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 20:02:39,098 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 20:02:39,098 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 20:02:39,099 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-27 20:02:39,100 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 43 states to 43 states and 47 transitions. [2022-04-27 20:02:39,100 INFO L78 Accepts]: Start accepts. Automaton has 43 states and 47 transitions. Word has length 51 [2022-04-27 20:02:39,100 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 20:02:39,100 INFO L495 AbstractCegarLoop]: Abstraction has 43 states and 47 transitions. [2022-04-27 20:02:39,100 INFO L496 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-27 20:02:39,100 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 47 transitions. [2022-04-27 20:02:39,101 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-27 20:02:39,101 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 20:02:39,101 INFO L195 NwaCegarLoop]: 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-27 20:02:39,129 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-27 20:02:39,307 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 20:02:39,307 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 20:02:39,308 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 20:02:39,308 INFO L85 PathProgramCache]: Analyzing trace with hash -1658817134, now seen corresponding path program 5 times [2022-04-27 20:02:39,308 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 20:02:39,308 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [691622454] [2022-04-27 20:02:39,308 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 20:02:39,308 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 20:02:39,318 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 20:02:39,319 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1219834344] [2022-04-27 20:02:39,319 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-04-27 20:02:39,319 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 20:02:39,319 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 20:02:39,320 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-27 20:02:39,323 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-27 20:02:39,426 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 6 check-sat command(s) [2022-04-27 20:02:39,426 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 20:02:39,427 INFO L263 TraceCheckSpWp]: Trace formula consists of 163 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-27 20:02:39,437 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 20:02:39,438 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 20:02:39,798 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-27 20:02:39,798 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-27 20:02:39,798 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-27 20:02:39,798 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-27 20:02:39,798 INFO L272 TraceCheckUtils]: 4: Hoare triple {1926#true} [64] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1926#true} is VALID [2022-04-27 20:02:39,799 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-27 20:02:39,799 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-27 20:02:39,799 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-27 20:02:39,799 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-27 20:02:39,799 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-27 20:02:39,799 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-27 20:02:39,808 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-27 20:02:39,808 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-27 20:02:39,809 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-27 20:02:39,809 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-27 20:02:39,809 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-27 20:02:39,809 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-27 20:02:39,809 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-27 20:02:39,810 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-27 20:02:39,810 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-27 20:02:39,810 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-27 20:02:39,810 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-27 20:02:39,810 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-27 20:02:39,811 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-27 20:02:39,811 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-27 20:02:39,811 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-27 20:02:39,812 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-27 20:02:39,812 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-27 20:02:39,812 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-27 20:02:39,812 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-27 20:02:39,812 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-27 20:02:39,813 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-27 20:02:39,813 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-27 20:02:39,813 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-27 20:02:39,814 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-27 20:02:39,814 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-27 20:02:39,814 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-27 20:02:39,814 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-27 20:02:39,814 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-27 20:02:39,815 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-27 20:02:39,815 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-27 20:02:39,815 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-27 20:02:39,815 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-27 20:02:39,815 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-27 20:02:39,815 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-27 20:02:39,816 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-27 20:02:39,817 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-27 20:02:39,817 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-27 20:02:39,817 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-27 20:02:39,817 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-27 20:02:39,818 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-27 20:02:39,818 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-27 20:02:39,818 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-27 20:02:39,819 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-27 20:02:39,820 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-27 20:02:39,820 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-27 20:02:39,820 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-27 20:02:39,821 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-27 20:02:39,821 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-27 20:02:39,821 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 20:02:40,116 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 20:02:40,116 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [691622454] [2022-04-27 20:02:40,117 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 20:02:40,117 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1219834344] [2022-04-27 20:02:40,117 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1219834344] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-27 20:02:40,117 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-27 20:02:40,117 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11] total 11 [2022-04-27 20:02:40,117 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1056219574] [2022-04-27 20:02:40,117 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-27 20:02:40,117 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-27 20:02:40,118 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 20:02:40,118 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-27 20:02:40,143 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 20:02:40,144 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-27 20:02:40,144 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 20:02:40,144 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-27 20:02:40,144 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=36, Invalid=146, Unknown=0, NotChecked=0, Total=182 [2022-04-27 20:02:40,144 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-27 20:02:40,578 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 20:02:40,578 INFO L93 Difference]: Finished difference Result 49 states and 54 transitions. [2022-04-27 20:02:40,578 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-27 20:02:40,579 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-27 20:02:40,579 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 20:02:40,579 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-27 20:02:40,580 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 51 transitions. [2022-04-27 20:02:40,580 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-27 20:02:40,581 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 51 transitions. [2022-04-27 20:02:40,582 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 51 transitions. [2022-04-27 20:02:40,617 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-27 20:02:40,618 INFO L225 Difference]: With dead ends: 49 [2022-04-27 20:02:40,618 INFO L226 Difference]: Without dead ends: 46 [2022-04-27 20:02:40,618 INFO L412 NwaCegarLoop]: 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-27 20:02:40,619 INFO L413 NwaCegarLoop]: 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-27 20:02:40,619 INFO L414 NwaCegarLoop]: 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-27 20:02:40,619 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 46 states. [2022-04-27 20:02:40,621 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 46 to 46. [2022-04-27 20:02:40,621 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 20:02:40,622 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-27 20:02:40,622 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-27 20:02:40,622 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-27 20:02:40,623 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 20:02:40,623 INFO L93 Difference]: Finished difference Result 46 states and 51 transitions. [2022-04-27 20:02:40,623 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 51 transitions. [2022-04-27 20:02:40,623 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 20:02:40,624 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 20:02:40,624 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-27 20:02:40,624 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-27 20:02:40,625 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 20:02:40,625 INFO L93 Difference]: Finished difference Result 46 states and 51 transitions. [2022-04-27 20:02:40,625 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 51 transitions. [2022-04-27 20:02:40,625 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 20:02:40,625 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 20:02:40,625 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 20:02:40,625 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 20:02:40,626 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-27 20:02:40,627 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 46 states to 46 states and 51 transitions. [2022-04-27 20:02:40,627 INFO L78 Accepts]: Start accepts. Automaton has 46 states and 51 transitions. Word has length 58 [2022-04-27 20:02:40,627 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 20:02:40,627 INFO L495 AbstractCegarLoop]: Abstraction has 46 states and 51 transitions. [2022-04-27 20:02:40,627 INFO L496 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-27 20:02:40,627 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 51 transitions. [2022-04-27 20:02:40,628 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 66 [2022-04-27 20:02:40,628 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 20:02:40,628 INFO L195 NwaCegarLoop]: 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-27 20:02:40,643 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-27 20:02:40,831 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 20:02:40,831 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 20:02:40,832 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 20:02:40,832 INFO L85 PathProgramCache]: Analyzing trace with hash 270583808, now seen corresponding path program 6 times [2022-04-27 20:02:40,832 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 20:02:40,832 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1635086949] [2022-04-27 20:02:40,832 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 20:02:40,832 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 20:02:40,841 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 20:02:40,841 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [656932979] [2022-04-27 20:02:40,841 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-27 20:02:40,841 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 20:02:40,841 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 20:02:40,842 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-27 20:02:40,843 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-27 20:02:40,935 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-27 20:02:40,935 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 20:02:40,936 INFO L263 TraceCheckSpWp]: Trace formula consists of 180 conjuncts, 12 conjunts are in the unsatisfiable core [2022-04-27 20:02:40,947 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 20:02:40,948 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 20:02:41,381 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-27 20:02:41,381 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-27 20:02:41,381 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-27 20:02:41,381 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-27 20:02:41,381 INFO L272 TraceCheckUtils]: 4: Hoare triple {2343#true} [64] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2343#true} is VALID [2022-04-27 20:02:41,381 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-27 20:02:41,381 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-27 20:02:41,382 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-27 20:02:41,382 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-27 20:02:41,382 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-27 20:02:41,384 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-27 20:02:41,384 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-27 20:02:41,385 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-27 20:02:41,385 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-27 20:02:41,385 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-27 20:02:41,385 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-27 20:02:41,385 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-27 20:02:41,385 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-27 20:02:41,386 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-27 20:02:41,387 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-27 20:02:41,387 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-27 20:02:41,387 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-27 20:02:41,387 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-27 20:02:41,387 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-27 20:02:41,388 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-27 20:02:41,388 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-27 20:02:41,389 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-27 20:02:41,389 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-27 20:02:41,389 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-27 20:02:41,389 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-27 20:02:41,389 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-27 20:02:41,390 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-27 20:02:41,390 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-27 20:02:41,391 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-27 20:02:41,391 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-27 20:02:41,391 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-27 20:02:41,391 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-27 20:02:41,391 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-27 20:02:41,392 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-27 20:02:41,392 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-27 20:02:41,393 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-27 20:02:41,393 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-27 20:02:41,393 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-27 20:02:41,393 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-27 20:02:41,393 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-27 20:02:41,394 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-27 20:02:41,394 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-27 20:02:41,395 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-27 20:02:41,395 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-27 20:02:41,395 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-27 20:02:41,395 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-27 20:02:41,395 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-27 20:02:41,396 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-27 20:02:41,396 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-27 20:02:41,396 INFO L290 TraceCheckUtils]: 54: Hoare triple {2344#false} [74] L27-2-->L28: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2344#false} is VALID [2022-04-27 20:02:41,396 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-27 20:02:41,397 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-27 20:02:41,397 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-27 20:02:41,397 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-27 20:02:41,397 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-27 20:02:41,397 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-27 20:02:41,397 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-27 20:02:41,397 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-27 20:02:41,398 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-27 20:02:41,398 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-27 20:02:41,399 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-27 20:02:41,399 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 20:02:41,399 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 20:02:41,399 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1635086949] [2022-04-27 20:02:41,399 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 20:02:41,399 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [656932979] [2022-04-27 20:02:41,399 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [656932979] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 20:02:41,399 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 20:02:41,399 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-27 20:02:41,401 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [746380632] [2022-04-27 20:02:41,401 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 20:02:41,402 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-27 20:02:41,402 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 20:02:41,402 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-27 20:02:41,436 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-27 20:02:41,437 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-27 20:02:41,437 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 20:02:41,437 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-27 20:02:41,437 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=40, Invalid=70, Unknown=0, NotChecked=0, Total=110 [2022-04-27 20:02:41,437 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-27 20:02:41,618 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 20:02:41,618 INFO L93 Difference]: Finished difference Result 38 states and 41 transitions. [2022-04-27 20:02:41,618 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-27 20:02:41,623 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-27 20:02:41,624 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 20:02:41,624 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-27 20:02:41,626 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 39 transitions. [2022-04-27 20:02:41,627 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-27 20:02:41,633 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 39 transitions. [2022-04-27 20:02:41,633 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 39 transitions. [2022-04-27 20:02:41,655 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-27 20:02:41,655 INFO L225 Difference]: With dead ends: 38 [2022-04-27 20:02:41,655 INFO L226 Difference]: Without dead ends: 0 [2022-04-27 20:02:41,655 INFO L412 NwaCegarLoop]: 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-27 20:02:41,657 INFO L413 NwaCegarLoop]: 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-27 20:02:41,657 INFO L414 NwaCegarLoop]: 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-27 20:02:41,658 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-27 20:02:41,658 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-27 20:02:41,658 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 20:02:41,658 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-27 20:02:41,658 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-27 20:02:41,658 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-27 20:02:41,658 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 20:02:41,658 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-27 20:02:41,658 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-27 20:02:41,658 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 20:02:41,658 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 20:02:41,658 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-27 20:02:41,658 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-27 20:02:41,658 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 20:02:41,658 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-27 20:02:41,658 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-27 20:02:41,659 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 20:02:41,659 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 20:02:41,659 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 20:02:41,659 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 20:02:41,659 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-27 20:02:41,659 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-27 20:02:41,659 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 65 [2022-04-27 20:02:41,659 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 20:02:41,659 INFO L495 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-27 20:02:41,659 INFO L496 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-27 20:02:41,659 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-27 20:02:41,659 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 20:02:41,661 INFO L805 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-27 20:02:41,668 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-27 20:02:41,865 WARN L477 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-27 20:02:41,870 INFO L356 BasicCegarLoop]: Path program histogram: [6, 1, 1, 1] [2022-04-27 20:02:41,871 INFO L176 ceAbstractionStarter]: Computing trace abstraction results [2022-04-27 20:02:41,873 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 27.04 08:02:41 BasicIcfg [2022-04-27 20:02:41,873 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-27 20:02:41,873 INFO L158 Benchmark]: Toolchain (without parser) took 9870.71ms. Allocated memory was 211.8MB in the beginning and 260.0MB in the end (delta: 48.2MB). Free memory was 163.5MB in the beginning and 190.3MB in the end (delta: -26.9MB). Peak memory consumption was 21.6MB. Max. memory is 8.0GB. [2022-04-27 20:02:41,873 INFO L158 Benchmark]: CDTParser took 0.10ms. Allocated memory is still 211.8MB. Free memory is still 179.7MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-27 20:02:41,874 INFO L158 Benchmark]: CACSL2BoogieTranslator took 151.24ms. Allocated memory is still 211.8MB. Free memory was 163.2MB in the beginning and 187.6MB in the end (delta: -24.4MB). Peak memory consumption was 10.5MB. Max. memory is 8.0GB. [2022-04-27 20:02:41,874 INFO L158 Benchmark]: Boogie Preprocessor took 17.54ms. Allocated memory is still 211.8MB. Free memory was 187.6MB in the beginning and 186.1MB in the end (delta: 1.4MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-27 20:02:41,874 INFO L158 Benchmark]: RCFGBuilder took 253.24ms. Allocated memory is still 211.8MB. Free memory was 186.1MB in the beginning and 175.1MB in the end (delta: 11.1MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-27 20:02:41,874 INFO L158 Benchmark]: IcfgTransformer took 21.38ms. Allocated memory is still 211.8MB. Free memory was 175.1MB in the beginning and 173.6MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-27 20:02:41,874 INFO L158 Benchmark]: TraceAbstraction took 9423.45ms. Allocated memory was 211.8MB in the beginning and 260.0MB in the end (delta: 48.2MB). Free memory was 173.0MB in the beginning and 190.3MB in the end (delta: -17.3MB). Peak memory consumption was 31.7MB. Max. memory is 8.0GB. [2022-04-27 20:02:41,875 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.10ms. Allocated memory is still 211.8MB. Free memory is still 179.7MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 151.24ms. Allocated memory is still 211.8MB. Free memory was 163.2MB in the beginning and 187.6MB in the end (delta: -24.4MB). Peak memory consumption was 10.5MB. Max. memory is 8.0GB. * Boogie Preprocessor took 17.54ms. Allocated memory is still 211.8MB. Free memory was 187.6MB in the beginning and 186.1MB in the end (delta: 1.4MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 253.24ms. Allocated memory is still 211.8MB. Free memory was 186.1MB in the beginning and 175.1MB in the end (delta: 11.1MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * IcfgTransformer took 21.38ms. Allocated memory is still 211.8MB. Free memory was 175.1MB in the beginning and 173.6MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * TraceAbstraction took 9423.45ms. Allocated memory was 211.8MB in the beginning and 260.0MB in the end (delta: 48.2MB). Free memory was 173.0MB in the beginning and 190.3MB in the end (delta: -17.3MB). Peak memory consumption was 31.7MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - PositiveResult [Line: 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.4s, OverallIterations: 9, TraceHistogramMax: 8, PathProgramHistogramMax: 6, EmptinessCheckTime: 0.0s, AutomataDifference: 2.3s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 48 SdHoareTripleChecker+Valid, 0.7s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 41 mSDsluCounter, 1179 SdHoareTripleChecker+Invalid, 0.7s 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.9s 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.1s 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-27 20:02:41,889 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Ended with exit code 0 Received shutdown request...