/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-34549b5 [2022-04-07 20:52:21,946 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-07 20:52:21,948 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-07 20:52:21,983 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-07 20:52:21,984 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-07 20:52:21,984 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-07 20:52:21,986 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-07 20:52:21,991 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-07 20:52:21,996 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-07 20:52:22,001 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-07 20:52:22,001 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-07 20:52:22,003 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-07 20:52:22,004 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-07 20:52:22,008 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-07 20:52:22,009 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-07 20:52:22,009 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-07 20:52:22,010 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-07 20:52:22,011 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-07 20:52:22,012 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-07 20:52:22,013 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-07 20:52:22,014 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-07 20:52:22,016 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-07 20:52:22,017 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-07 20:52:22,019 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-07 20:52:22,020 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-07 20:52:22,030 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-07 20:52:22,030 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-07 20:52:22,030 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-07 20:52:22,031 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-07 20:52:22,031 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-07 20:52:22,032 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-07 20:52:22,033 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-07 20:52:22,034 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-07 20:52:22,035 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-07 20:52:22,035 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-07 20:52:22,037 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-07 20:52:22,038 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-07 20:52:22,038 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-07 20:52:22,038 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-07 20:52:22,038 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-07 20:52:22,039 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-07 20:52:22,041 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-07 20:52:22,042 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/LoopAccelerationJordanC.epf [2022-04-07 20:52:22,054 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-07 20:52:22,054 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-07 20:52:22,055 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-07 20:52:22,056 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-07 20:52:22,056 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-07 20:52:22,056 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-07 20:52:22,056 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-07 20:52:22,056 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-07 20:52:22,056 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-07 20:52:22,057 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-07 20:52:22,057 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-07 20:52:22,057 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-07 20:52:22,057 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-07 20:52:22,057 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-07 20:52:22,057 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-07 20:52:22,058 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-07 20:52:22,058 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-07 20:52:22,058 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-07 20:52:22,058 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 20:52:22,058 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-07 20:52:22,058 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-07 20:52:22,059 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-07 20:52:22,059 INFO L138 SettingsManager]: * TransformationType=LOOP_ACCELERATION_JORDAN WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-07 20:52:22,284 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-07 20:52:22,312 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-07 20:52:22,314 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-07 20:52:22,315 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-07 20:52:22,316 INFO L275 PluginConnector]: CDTParser initialized [2022-04-07 20:52:22,317 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-07 20:52:22,382 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a62708e2a/493e94f0275044d280f0869eba1a89d6/FLAG356bef92e [2022-04-07 20:52:22,738 INFO L306 CDTParser]: Found 1 translation units. [2022-04-07 20:52:22,738 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/ps4-ll_valuebound5.c [2022-04-07 20:52:22,743 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a62708e2a/493e94f0275044d280f0869eba1a89d6/FLAG356bef92e [2022-04-07 20:52:22,752 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a62708e2a/493e94f0275044d280f0869eba1a89d6 [2022-04-07 20:52:22,754 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-07 20:52:22,755 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-07 20:52:22,758 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-07 20:52:22,758 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-07 20:52:22,760 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-07 20:52:22,761 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 08:52:22" (1/1) ... [2022-04-07 20:52:22,762 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7ace95a6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 08:52:22, skipping insertion in model container [2022-04-07 20:52:22,762 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 08:52:22" (1/1) ... [2022-04-07 20:52:22,769 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-07 20:52:22,782 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-07 20:52:22,921 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-07 20:52:22,936 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 20:52:22,953 INFO L203 MainTranslator]: Completed pre-run [2022-04-07 20:52:22,962 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-07 20:52:22,967 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 20:52:22,976 INFO L208 MainTranslator]: Completed translation [2022-04-07 20:52:22,977 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 08:52:22 WrapperNode [2022-04-07 20:52:22,977 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-07 20:52:22,978 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-07 20:52:22,978 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-07 20:52:22,978 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-07 20:52:22,991 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 08:52:22" (1/1) ... [2022-04-07 20:52:22,991 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 08:52:22" (1/1) ... [2022-04-07 20:52:22,996 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 08:52:22" (1/1) ... [2022-04-07 20:52:22,996 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 08:52:22" (1/1) ... [2022-04-07 20:52:23,001 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 08:52:22" (1/1) ... [2022-04-07 20:52:23,004 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 08:52:22" (1/1) ... [2022-04-07 20:52:23,005 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 08:52:22" (1/1) ... [2022-04-07 20:52:23,007 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-07 20:52:23,008 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-07 20:52:23,008 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-07 20:52:23,008 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-07 20:52:23,013 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 08:52:22" (1/1) ... [2022-04-07 20:52:23,029 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 20:52:23,039 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 20:52:23,049 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-07 20:52:23,054 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-07 20:52:23,078 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-07 20:52:23,078 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-07 20:52:23,079 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-07 20:52:23,079 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-07 20:52:23,079 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-07 20:52:23,079 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-07 20:52:23,079 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-07 20:52:23,079 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-07 20:52:23,079 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-07 20:52:23,080 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-07 20:52:23,080 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_short [2022-04-07 20:52:23,080 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-07 20:52:23,080 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-07 20:52:23,080 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-07 20:52:23,080 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-07 20:52:23,080 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-07 20:52:23,081 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-07 20:52:23,081 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-07 20:52:23,081 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-07 20:52:23,081 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-07 20:52:23,125 INFO L234 CfgBuilder]: Building ICFG [2022-04-07 20:52:23,126 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-07 20:52:23,255 INFO L275 CfgBuilder]: Performing block encoding [2022-04-07 20:52:23,261 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-07 20:52:23,261 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-07 20:52:23,263 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 08:52:23 BoogieIcfgContainer [2022-04-07 20:52:23,263 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-07 20:52:23,263 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-07 20:52:23,264 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-07 20:52:23,264 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-07 20:52:23,267 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 08:52:23" (1/1) ... [2022-04-07 20:52:23,268 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_JORDAN [2022-04-07 20:52:23,289 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 07.04 08:52:23 BasicIcfg [2022-04-07 20:52:23,290 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-07 20:52:23,291 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-07 20:52:23,291 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-07 20:52:23,294 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-07 20:52:23,294 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 07.04 08:52:22" (1/4) ... [2022-04-07 20:52:23,294 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7dd97552 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 08:52:23, skipping insertion in model container [2022-04-07 20:52:23,295 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 08:52:22" (2/4) ... [2022-04-07 20:52:23,295 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7dd97552 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 08:52:23, skipping insertion in model container [2022-04-07 20:52:23,295 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 08:52:23" (3/4) ... [2022-04-07 20:52:23,295 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7dd97552 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 07.04 08:52:23, skipping insertion in model container [2022-04-07 20:52:23,295 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 07.04 08:52:23" (4/4) ... [2022-04-07 20:52:23,296 INFO L111 eAbstractionObserver]: Analyzing ICFG ps4-ll_valuebound5.cJordan [2022-04-07 20:52:23,304 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:ForwardPredicates Determinization: PREDICATE_ABSTRACTION [2022-04-07 20:52:23,304 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-07 20:52:23,370 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-07 20:52:23,389 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=ForwardPredicates, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=false, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP [2022-04-07 20:52:23,389 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-07 20:52:23,420 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-07 20:52:23,426 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-04-07 20:52:23,426 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 20:52:23,427 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 20:52:23,427 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 20:52:23,439 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 20:52:23,439 INFO L85 PathProgramCache]: Analyzing trace with hash -1885409022, now seen corresponding path program 1 times [2022-04-07 20:52:23,447 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 20:52:23,448 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [685364410] [2022-04-07 20:52:23,449 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:52:23,451 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 20:52:23,572 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:52:23,648 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-07 20:52:23,652 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:52:23,672 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-07 20:52:23,672 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-07 20:52:23,672 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-07 20:52:23,673 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-07 20:52:23,675 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:52:23,693 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-07 20:52:23,695 INFO L290 TraceCheckUtils]: 1: Hoare triple {31#true} [75] L7-->L7-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {32#false} is VALID [2022-04-07 20:52:23,696 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-07 20:52:23,696 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-07 20:52:23,698 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-07 20:52:23,699 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-07 20:52:23,699 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-07 20:52:23,700 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-07 20:52:23,700 INFO L272 TraceCheckUtils]: 4: Hoare triple {31#true} [64] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {31#true} is VALID [2022-04-07 20:52:23,700 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-07 20:52:23,701 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-07 20:52:23,701 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-07 20:52:23,707 INFO L290 TraceCheckUtils]: 8: Hoare triple {31#true} [75] L7-->L7-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {32#false} is VALID [2022-04-07 20:52:23,707 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-07 20:52:23,708 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-07 20:52:23,708 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-07 20:52:23,708 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-07 20:52:23,709 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-07 20:52:23,709 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-07 20:52:23,709 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-07 20:52:23,710 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-07 20:52:23,710 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-07 20:52:23,711 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 20:52:23,711 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [685364410] [2022-04-07 20:52:23,711 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [685364410] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 20:52:23,712 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 20:52:23,712 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-07 20:52:23,713 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [44540808] [2022-04-07 20:52:23,714 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 20:52:23,718 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-07 20:52:23,724 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 20:52:23,727 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-07 20:52:23,766 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 17 edges. 17 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 20:52:23,767 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-07 20:52:23,767 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 20:52:23,790 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-07 20:52:23,790 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-07 20:52:23,792 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-07 20:52:23,921 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:52:23,922 INFO L93 Difference]: Finished difference Result 28 states and 30 transitions. [2022-04-07 20:52:23,922 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-07 20:52:23,923 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-07 20:52:23,924 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 20:52:23,925 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-07 20:52:23,933 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 34 transitions. [2022-04-07 20:52:23,934 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-07 20:52:23,940 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 34 transitions. [2022-04-07 20:52:23,940 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 34 transitions. [2022-04-07 20:52:23,993 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-07 20:52:24,004 INFO L225 Difference]: With dead ends: 28 [2022-04-07 20:52:24,004 INFO L226 Difference]: Without dead ends: 23 [2022-04-07 20:52:24,007 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 6 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-07 20:52:24,012 INFO L913 BasicCegarLoop]: 26 mSDtfsCounter, 15 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 6 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 19 SdHoareTripleChecker+Valid, 29 SdHoareTripleChecker+Invalid, 11 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 6 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-07 20:52:24,013 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [19 Valid, 29 Invalid, 11 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 6 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-07 20:52:24,026 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 23 states. [2022-04-07 20:52:24,033 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 23 to 23. [2022-04-07 20:52:24,033 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 20:52:24,034 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-07 20:52:24,035 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-07 20:52:24,035 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-07 20:52:24,038 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:52:24,038 INFO L93 Difference]: Finished difference Result 23 states and 25 transitions. [2022-04-07 20:52:24,038 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 25 transitions. [2022-04-07 20:52:24,039 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:52:24,039 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:52:24,039 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-07 20:52:24,040 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-07 20:52:24,043 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:52:24,043 INFO L93 Difference]: Finished difference Result 23 states and 25 transitions. [2022-04-07 20:52:24,043 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 25 transitions. [2022-04-07 20:52:24,043 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:52:24,044 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:52:24,044 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 20:52:24,044 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 20:52:24,044 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-07 20:52:24,046 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 25 transitions. [2022-04-07 20:52:24,047 INFO L78 Accepts]: Start accepts. Automaton has 23 states and 25 transitions. Word has length 17 [2022-04-07 20:52:24,047 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 20:52:24,048 INFO L478 AbstractCegarLoop]: Abstraction has 23 states and 25 transitions. [2022-04-07 20:52:24,048 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-07 20:52:24,048 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 25 transitions. [2022-04-07 20:52:24,049 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-04-07 20:52:24,049 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 20:52:24,049 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 20:52:24,049 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-07 20:52:24,049 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 20:52:24,050 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 20:52:24,050 INFO L85 PathProgramCache]: Analyzing trace with hash 603980644, now seen corresponding path program 1 times [2022-04-07 20:52:24,050 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 20:52:24,051 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [733829197] [2022-04-07 20:52:24,051 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:52:24,051 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 20:52:24,069 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 20:52:24,069 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1780152488] [2022-04-07 20:52:24,070 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:52:24,070 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 20:52:24,070 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 20:52:24,078 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 20:52:24,079 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-07 20:52:24,119 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:52:24,121 INFO L263 TraceCheckSpWp]: Trace formula consists of 68 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-07 20:52:24,129 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:52:24,134 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 20:52:24,310 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-07 20:52:24,311 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-07 20:52:24,311 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-07 20:52:24,311 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-07 20:52:24,311 INFO L272 TraceCheckUtils]: 4: Hoare triple {140#true} [64] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {140#true} is VALID [2022-04-07 20:52:24,311 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-07 20:52:24,312 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-07 20:52:24,312 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-07 20:52:24,312 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-07 20:52:24,312 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-07 20:52:24,313 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-07 20:52:24,314 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-07 20:52:24,315 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-07 20:52:24,316 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-07 20:52:24,317 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-07 20:52:24,318 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-07 20:52:24,319 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-07 20:52:24,320 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-07 20:52:24,320 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 20:52:24,320 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 20:52:24,320 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [733829197] [2022-04-07 20:52:24,320 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 20:52:24,321 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1780152488] [2022-04-07 20:52:24,324 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1780152488] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 20:52:24,325 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 20:52:24,325 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-07 20:52:24,326 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [940753275] [2022-04-07 20:52:24,327 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 20:52:24,328 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-07 20:52:24,328 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 20:52:24,329 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-07 20:52:24,344 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 17 edges. 17 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 20:52:24,344 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-07 20:52:24,345 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 20:52:24,345 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-07 20:52:24,345 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-07 20:52:24,346 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-07 20:52:24,502 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:52:24,502 INFO L93 Difference]: Finished difference Result 32 states and 36 transitions. [2022-04-07 20:52:24,502 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-07 20:52:24,503 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-07 20:52:24,503 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 20:52:24,503 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-07 20:52:24,505 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 37 transitions. [2022-04-07 20:52:24,505 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-07 20:52:24,507 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 37 transitions. [2022-04-07 20:52:24,507 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 37 transitions. [2022-04-07 20:52:24,547 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-07 20:52:24,550 INFO L225 Difference]: With dead ends: 32 [2022-04-07 20:52:24,551 INFO L226 Difference]: Without dead ends: 30 [2022-04-07 20:52:24,551 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 13 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-07 20:52:24,554 INFO L913 BasicCegarLoop]: 22 mSDtfsCounter, 6 mSDsluCounter, 55 mSDsCounter, 0 mSdLazyCounter, 28 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 77 SdHoareTripleChecker+Invalid, 30 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 28 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-07 20:52:24,554 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [8 Valid, 77 Invalid, 30 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 28 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-07 20:52:24,556 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 30 states. [2022-04-07 20:52:24,560 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 30 to 30. [2022-04-07 20:52:24,560 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 20:52:24,561 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-07 20:52:24,562 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-07 20:52:24,562 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-07 20:52:24,566 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:52:24,566 INFO L93 Difference]: Finished difference Result 30 states and 32 transitions. [2022-04-07 20:52:24,567 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 32 transitions. [2022-04-07 20:52:24,567 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:52:24,567 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:52:24,568 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-07 20:52:24,569 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-07 20:52:24,574 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:52:24,575 INFO L93 Difference]: Finished difference Result 30 states and 32 transitions. [2022-04-07 20:52:24,575 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 32 transitions. [2022-04-07 20:52:24,576 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:52:24,576 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:52:24,576 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 20:52:24,576 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 20:52:24,579 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-07 20:52:24,581 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 32 transitions. [2022-04-07 20:52:24,581 INFO L78 Accepts]: Start accepts. Automaton has 30 states and 32 transitions. Word has length 17 [2022-04-07 20:52:24,582 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 20:52:24,582 INFO L478 AbstractCegarLoop]: Abstraction has 30 states and 32 transitions. [2022-04-07 20:52:24,582 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-07 20:52:24,582 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 32 transitions. [2022-04-07 20:52:24,584 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-04-07 20:52:24,584 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 20:52:24,584 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 20:52:24,611 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-07 20:52:24,798 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 20:52:24,798 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 20:52:24,799 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 20:52:24,799 INFO L85 PathProgramCache]: Analyzing trace with hash -169450186, now seen corresponding path program 1 times [2022-04-07 20:52:24,800 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 20:52:24,800 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1292903635] [2022-04-07 20:52:24,800 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:52:24,800 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 20:52:24,816 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 20:52:24,816 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [471571635] [2022-04-07 20:52:24,816 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:52:24,817 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 20:52:24,817 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 20:52:24,825 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 20:52:24,827 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-07 20:52:24,880 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:52:24,881 INFO L263 TraceCheckSpWp]: Trace formula consists of 85 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-07 20:52:24,892 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:52:24,893 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 20:52:25,077 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-07 20:52:25,078 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-07 20:52:25,078 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-07 20:52:25,078 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-07 20:52:25,079 INFO L272 TraceCheckUtils]: 4: Hoare triple {319#true} [64] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {319#true} is VALID [2022-04-07 20:52:25,079 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-07 20:52:25,079 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-07 20:52:25,079 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-07 20:52:25,079 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-07 20:52:25,080 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-07 20:52:25,080 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-07 20:52:25,081 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-07 20:52:25,081 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-07 20:52:25,081 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-07 20:52:25,082 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-07 20:52:25,082 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-07 20:52:25,082 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-07 20:52:25,083 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-07 20:52:25,084 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-07 20:52:25,084 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-07 20:52:25,085 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-07 20:52:25,086 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-07 20:52:25,086 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-07 20:52:25,086 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-07 20:52:25,087 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-07 20:52:25,087 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 20:52:25,398 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-07 20:52:25,399 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-07 20:52:25,399 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-07 20:52:25,401 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-07 20:52:25,401 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-07 20:52:25,412 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-07 20:52:25,413 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-07 20:52:25,413 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-07 20:52:25,413 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-07 20:52:25,413 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-07 20:52:25,414 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-07 20:52:25,415 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-07 20:52:25,415 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-07 20:52:25,415 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-07 20:52:25,416 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-07 20:52:25,416 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-07 20:52:25,416 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-07 20:52:25,416 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-07 20:52:25,416 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-07 20:52:25,417 INFO L272 TraceCheckUtils]: 4: Hoare triple {319#true} [64] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {319#true} is VALID [2022-04-07 20:52:25,417 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-07 20:52:25,417 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-07 20:52:25,417 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-07 20:52:25,417 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-07 20:52:25,418 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-07 20:52:25,418 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 20:52:25,418 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1292903635] [2022-04-07 20:52:25,418 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 20:52:25,418 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [471571635] [2022-04-07 20:52:25,419 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [471571635] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-07 20:52:25,419 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-07 20:52:25,419 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [6] total 7 [2022-04-07 20:52:25,419 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1225566329] [2022-04-07 20:52:25,419 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 20:52:25,420 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-07 20:52:25,420 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 20:52:25,420 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-07 20:52:25,453 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-07 20:52:25,453 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-07 20:52:25,453 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 20:52:25,454 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-07 20:52:25,454 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-04-07 20:52:25,454 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-07 20:52:25,565 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:52:25,565 INFO L93 Difference]: Finished difference Result 34 states and 35 transitions. [2022-04-07 20:52:25,565 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-07 20:52:25,566 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-07 20:52:25,566 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 20:52:25,566 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-07 20:52:25,568 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 29 transitions. [2022-04-07 20:52:25,568 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-07 20:52:25,569 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 29 transitions. [2022-04-07 20:52:25,569 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 29 transitions. [2022-04-07 20:52:25,601 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-07 20:52:25,603 INFO L225 Difference]: With dead ends: 34 [2022-04-07 20:52:25,604 INFO L226 Difference]: Without dead ends: 31 [2022-04-07 20:52:25,604 INFO L912 BasicCegarLoop]: 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-07 20:52:25,607 INFO L913 BasicCegarLoop]: 21 mSDtfsCounter, 6 mSDsluCounter, 49 mSDsCounter, 0 mSdLazyCounter, 22 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 7 SdHoareTripleChecker+Valid, 70 SdHoareTripleChecker+Invalid, 23 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 22 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-07 20:52:25,608 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [7 Valid, 70 Invalid, 23 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 22 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-07 20:52:25,609 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 31 states. [2022-04-07 20:52:25,614 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 31 to 31. [2022-04-07 20:52:25,614 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 20:52:25,615 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-07 20:52:25,615 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-07 20:52:25,616 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-07 20:52:25,621 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:52:25,621 INFO L93 Difference]: Finished difference Result 31 states and 31 transitions. [2022-04-07 20:52:25,622 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 31 transitions. [2022-04-07 20:52:25,623 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:52:25,623 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:52:25,624 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-07 20:52:25,625 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-07 20:52:25,629 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:52:25,630 INFO L93 Difference]: Finished difference Result 31 states and 31 transitions. [2022-04-07 20:52:25,630 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 31 transitions. [2022-04-07 20:52:25,633 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:52:25,633 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:52:25,633 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 20:52:25,633 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 20:52:25,634 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-07 20:52:25,635 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 31 transitions. [2022-04-07 20:52:25,635 INFO L78 Accepts]: Start accepts. Automaton has 31 states and 31 transitions. Word has length 24 [2022-04-07 20:52:25,635 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 20:52:25,635 INFO L478 AbstractCegarLoop]: Abstraction has 31 states and 31 transitions. [2022-04-07 20:52:25,635 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-07 20:52:25,636 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 31 transitions. [2022-04-07 20:52:25,636 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 31 [2022-04-07 20:52:25,636 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 20:52:25,636 INFO L499 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 20:52:25,659 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-07 20:52:25,837 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-07 20:52:25,837 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 20:52:25,838 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 20:52:25,838 INFO L85 PathProgramCache]: Analyzing trace with hash -434891502, now seen corresponding path program 1 times [2022-04-07 20:52:25,838 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 20:52:25,838 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [892017909] [2022-04-07 20:52:25,839 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:52:25,839 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 20:52:25,854 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 20:52:25,855 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [827092866] [2022-04-07 20:52:25,855 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:52:25,855 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 20:52:25,855 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 20:52:25,856 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 20:52:25,885 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-07 20:52:25,897 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:52:25,898 INFO L263 TraceCheckSpWp]: Trace formula consists of 95 conjuncts, 12 conjunts are in the unsatisfiable core [2022-04-07 20:52:25,909 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:52:25,910 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 20:52:26,217 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-07 20:52:26,218 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-07 20:52:26,218 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-07 20:52:26,218 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-07 20:52:26,218 INFO L272 TraceCheckUtils]: 4: Hoare triple {598#true} [64] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {598#true} is VALID [2022-04-07 20:52:26,218 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-07 20:52:26,219 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-07 20:52:26,219 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-07 20:52:26,219 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-07 20:52:26,219 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-07 20:52:26,219 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-07 20:52:26,220 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-07 20:52:26,221 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-07 20:52:26,221 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-07 20:52:26,222 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-07 20:52:26,222 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-07 20:52:26,222 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-07 20:52:26,224 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-07 20:52:26,225 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-07 20:52:26,226 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-07 20:52:26,226 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-07 20:52:26,226 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-07 20:52:26,226 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-07 20:52:26,226 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-07 20:52:26,227 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-07 20:52:26,228 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-07 20:52:26,230 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-07 20:52:26,230 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-07 20:52:26,231 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-07 20:52:26,231 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-07 20:52:26,231 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-07 20:52:26,231 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 20:52:26,612 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 20:52:26,612 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [892017909] [2022-04-07 20:52:26,612 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 20:52:26,612 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [827092866] [2022-04-07 20:52:26,613 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [827092866] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-07 20:52:26,613 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-07 20:52:26,613 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7] total 7 [2022-04-07 20:52:26,613 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1218424752] [2022-04-07 20:52:26,613 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-07 20:52:26,614 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-07 20:52:26,614 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 20:52:26,614 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-07 20:52:26,636 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-07 20:52:26,637 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-07 20:52:26,637 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 20:52:26,637 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-07 20:52:26,637 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=66, Unknown=0, NotChecked=0, Total=90 [2022-04-07 20:52:26,638 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-07 20:52:26,850 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:52:26,850 INFO L93 Difference]: Finished difference Result 37 states and 38 transitions. [2022-04-07 20:52:26,850 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-07 20:52:26,850 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-07 20:52:26,851 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 20:52:26,851 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-07 20:52:26,853 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 35 transitions. [2022-04-07 20:52:26,853 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-07 20:52:26,855 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 35 transitions. [2022-04-07 20:52:26,855 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 35 transitions. [2022-04-07 20:52:26,885 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-07 20:52:26,887 INFO L225 Difference]: With dead ends: 37 [2022-04-07 20:52:26,887 INFO L226 Difference]: Without dead ends: 34 [2022-04-07 20:52:26,887 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 44 GetRequests, 33 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=34, Invalid=98, Unknown=0, NotChecked=0, Total=132 [2022-04-07 20:52:26,888 INFO L913 BasicCegarLoop]: 25 mSDtfsCounter, 2 mSDsluCounter, 90 mSDsCounter, 0 mSdLazyCounter, 51 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 2 SdHoareTripleChecker+Valid, 115 SdHoareTripleChecker+Invalid, 51 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 51 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-07 20:52:26,888 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [2 Valid, 115 Invalid, 51 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 51 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-07 20:52:26,889 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-07 20:52:26,891 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 34. [2022-04-07 20:52:26,891 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 20:52:26,891 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-07 20:52:26,892 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-07 20:52:26,892 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-07 20:52:26,893 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:52:26,894 INFO L93 Difference]: Finished difference Result 34 states and 35 transitions. [2022-04-07 20:52:26,894 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 35 transitions. [2022-04-07 20:52:26,894 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:52:26,894 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:52:26,894 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-07 20:52:26,895 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-07 20:52:26,896 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:52:26,896 INFO L93 Difference]: Finished difference Result 34 states and 35 transitions. [2022-04-07 20:52:26,896 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 35 transitions. [2022-04-07 20:52:26,921 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:52:26,922 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:52:26,922 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 20:52:26,922 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 20:52:26,922 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-07 20:52:26,923 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 35 transitions. [2022-04-07 20:52:26,924 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 35 transitions. Word has length 30 [2022-04-07 20:52:26,924 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 20:52:26,924 INFO L478 AbstractCegarLoop]: Abstraction has 34 states and 35 transitions. [2022-04-07 20:52:26,924 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 6 states have (on average 2.8333333333333335) internal successors, (17), 6 states have internal predecessors, (17), 4 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-07 20:52:26,924 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 35 transitions. [2022-04-07 20:52:26,925 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-04-07 20:52:26,925 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 20:52:26,925 INFO L499 BasicCegarLoop]: trace histogram [4, 3, 3, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 20:52:26,952 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-07 20:52:27,125 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 20:52:27,126 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 20:52:27,127 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 20:52:27,128 INFO L85 PathProgramCache]: Analyzing trace with hash 725792896, now seen corresponding path program 2 times [2022-04-07 20:52:27,128 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 20:52:27,128 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [863743006] [2022-04-07 20:52:27,128 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:52:27,128 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 20:52:27,146 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 20:52:27,146 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1936652692] [2022-04-07 20:52:27,146 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-07 20:52:27,146 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 20:52:27,146 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 20:52:27,147 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 20:52:27,151 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-07 20:52:27,191 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-07 20:52:27,191 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-07 20:52:27,192 INFO L263 TraceCheckSpWp]: Trace formula consists of 112 conjuncts, 16 conjunts are in the unsatisfiable core [2022-04-07 20:52:27,205 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:52:27,207 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 20:52:27,501 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-07 20:52:27,502 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-07 20:52:27,502 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-07 20:52:27,502 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-07 20:52:27,502 INFO L272 TraceCheckUtils]: 4: Hoare triple {879#true} [64] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {879#true} is VALID [2022-04-07 20:52:27,503 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-07 20:52:27,503 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-07 20:52:27,503 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-07 20:52:27,503 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-07 20:52:27,503 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-07 20:52:27,503 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-07 20:52:27,507 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-07 20:52:27,508 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-07 20:52:27,508 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-07 20:52:27,508 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-07 20:52:27,508 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-07 20:52:27,508 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-07 20:52:27,509 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-07 20:52:27,510 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-07 20:52:27,510 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-07 20:52:27,510 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-07 20:52:27,510 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-07 20:52:27,510 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-07 20:52:27,511 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-07 20:52:27,511 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-07 20:52:27,512 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-07 20:52:27,512 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-07 20:52:27,513 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-07 20:52:27,513 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-07 20:52:27,513 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-07 20:52:27,513 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-07 20:52:27,514 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-07 20:52:27,514 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-07 20:52:27,515 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-07 20:52:27,516 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-07 20:52:27,516 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-07 20:52:27,516 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-07 20:52:27,516 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-07 20:52:27,517 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 20:52:27,811 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 20:52:27,811 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [863743006] [2022-04-07 20:52:27,811 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 20:52:27,811 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1936652692] [2022-04-07 20:52:27,811 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1936652692] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-07 20:52:27,811 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-07 20:52:27,811 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8] total 8 [2022-04-07 20:52:27,811 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2092237765] [2022-04-07 20:52:27,812 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-07 20:52:27,814 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-07 20:52:27,814 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 20:52:27,814 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-07 20:52:27,843 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 20:52:27,843 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-07 20:52:27,844 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 20:52:27,844 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-07 20:52:27,845 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=27, Invalid=83, Unknown=0, NotChecked=0, Total=110 [2022-04-07 20:52:27,845 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-07 20:52:28,103 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:52:28,103 INFO L93 Difference]: Finished difference Result 40 states and 42 transitions. [2022-04-07 20:52:28,103 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-07 20:52:28,103 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-07 20:52:28,104 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 20:52:28,104 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-07 20:52:28,105 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 39 transitions. [2022-04-07 20:52:28,106 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-07 20:52:28,107 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 39 transitions. [2022-04-07 20:52:28,107 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 39 transitions. [2022-04-07 20:52:28,142 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-07 20:52:28,143 INFO L225 Difference]: With dead ends: 40 [2022-04-07 20:52:28,143 INFO L226 Difference]: Without dead ends: 37 [2022-04-07 20:52:28,143 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 51 GetRequests, 39 SyntacticMatches, 1 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=37, Invalid=119, Unknown=0, NotChecked=0, Total=156 [2022-04-07 20:52:28,144 INFO L913 BasicCegarLoop]: 28 mSDtfsCounter, 2 mSDsluCounter, 115 mSDsCounter, 0 mSdLazyCounter, 77 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 2 SdHoareTripleChecker+Valid, 143 SdHoareTripleChecker+Invalid, 77 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 77 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-07 20:52:28,144 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [2 Valid, 143 Invalid, 77 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 77 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-07 20:52:28,145 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2022-04-07 20:52:28,147 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 37. [2022-04-07 20:52:28,147 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 20:52:28,147 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-07 20:52:28,147 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-07 20:52:28,148 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-07 20:52:28,149 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:52:28,149 INFO L93 Difference]: Finished difference Result 37 states and 39 transitions. [2022-04-07 20:52:28,149 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 39 transitions. [2022-04-07 20:52:28,150 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:52:28,150 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:52:28,150 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-07 20:52:28,150 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-07 20:52:28,152 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:52:28,152 INFO L93 Difference]: Finished difference Result 37 states and 39 transitions. [2022-04-07 20:52:28,152 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 39 transitions. [2022-04-07 20:52:28,152 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:52:28,152 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:52:28,152 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 20:52:28,152 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 20:52:28,153 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-07 20:52:28,154 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 39 transitions. [2022-04-07 20:52:28,154 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 39 transitions. Word has length 37 [2022-04-07 20:52:28,154 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 20:52:28,154 INFO L478 AbstractCegarLoop]: Abstraction has 37 states and 39 transitions. [2022-04-07 20:52:28,154 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 7 states have (on average 2.7142857142857144) internal successors, (19), 7 states have internal predecessors, (19), 5 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 4 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-07 20:52:28,155 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 39 transitions. [2022-04-07 20:52:28,155 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 45 [2022-04-07 20:52:28,155 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 20:52:28,155 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 20:52:28,178 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-07 20:52:28,371 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 20:52:28,371 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 20:52:28,372 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 20:52:28,372 INFO L85 PathProgramCache]: Analyzing trace with hash 1487404370, now seen corresponding path program 3 times [2022-04-07 20:52:28,372 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 20:52:28,372 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [463205856] [2022-04-07 20:52:28,372 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:52:28,372 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 20:52:28,391 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 20:52:28,391 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [164469621] [2022-04-07 20:52:28,392 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-07 20:52:28,392 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 20:52:28,392 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 20:52:28,393 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-07 20:52:28,436 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-07 20:52:28,541 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2022-04-07 20:52:28,542 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-07 20:52:28,543 INFO L263 TraceCheckSpWp]: Trace formula consists of 129 conjuncts, 20 conjunts are in the unsatisfiable core [2022-04-07 20:52:28,554 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:52:28,555 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 20:52:28,894 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-07 20:52:28,894 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-07 20:52:28,894 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-07 20:52:28,894 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-07 20:52:28,894 INFO L272 TraceCheckUtils]: 4: Hoare triple {1194#true} [64] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1194#true} is VALID [2022-04-07 20:52:28,895 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-07 20:52:28,895 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-07 20:52:28,895 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-07 20:52:28,895 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-07 20:52:28,895 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-07 20:52:28,895 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-07 20:52:28,896 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-07 20:52:28,896 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-07 20:52:28,897 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-07 20:52:28,897 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-07 20:52:28,897 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-07 20:52:28,897 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-07 20:52:28,898 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-07 20:52:28,899 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-07 20:52:28,899 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-07 20:52:28,899 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-07 20:52:28,899 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-07 20:52:28,899 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-07 20:52:28,899 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-07 20:52:28,900 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-07 20:52:28,901 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-07 20:52:28,901 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-07 20:52:28,901 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-07 20:52:28,901 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-07 20:52:28,901 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-07 20:52:28,902 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-07 20:52:28,902 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-07 20:52:28,903 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-07 20:52:28,903 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-07 20:52:28,904 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-07 20:52:28,904 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-07 20:52:28,904 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-07 20:52:28,904 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-07 20:52:28,905 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-07 20:52:28,905 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-07 20:52:28,906 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-07 20:52:28,906 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-07 20:52:28,907 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-07 20:52:28,907 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-07 20:52:28,907 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-07 20:52:28,907 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 20:52:29,236 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 20:52:29,236 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [463205856] [2022-04-07 20:52:29,236 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 20:52:29,236 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [164469621] [2022-04-07 20:52:29,237 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [164469621] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-07 20:52:29,237 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-07 20:52:29,237 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9] total 9 [2022-04-07 20:52:29,237 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2124654923] [2022-04-07 20:52:29,237 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-07 20:52:29,237 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-07 20:52:29,238 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 20:52:29,238 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-07 20:52:29,267 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-07 20:52:29,268 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-07 20:52:29,268 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 20:52:29,268 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-07 20:52:29,268 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=30, Invalid=102, Unknown=0, NotChecked=0, Total=132 [2022-04-07 20:52:29,269 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-07 20:52:29,577 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:52:29,577 INFO L93 Difference]: Finished difference Result 43 states and 46 transitions. [2022-04-07 20:52:29,577 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-07 20:52:29,577 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-07 20:52:29,577 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 20:52:29,578 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-07 20:52:29,579 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 43 transitions. [2022-04-07 20:52:29,579 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-07 20:52:29,580 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 43 transitions. [2022-04-07 20:52:29,581 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 43 transitions. [2022-04-07 20:52:29,611 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 20:52:29,612 INFO L225 Difference]: With dead ends: 43 [2022-04-07 20:52:29,612 INFO L226 Difference]: Without dead ends: 40 [2022-04-07 20:52:29,613 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 58 GetRequests, 45 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=40, Invalid=142, Unknown=0, NotChecked=0, Total=182 [2022-04-07 20:52:29,613 INFO L913 BasicCegarLoop]: 31 mSDtfsCounter, 2 mSDsluCounter, 142 mSDsCounter, 0 mSdLazyCounter, 109 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 2 SdHoareTripleChecker+Valid, 173 SdHoareTripleChecker+Invalid, 109 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 109 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-07 20:52:29,613 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [2 Valid, 173 Invalid, 109 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 109 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-07 20:52:29,614 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 40 states. [2022-04-07 20:52:29,616 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 40 to 40. [2022-04-07 20:52:29,616 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 20:52:29,617 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-07 20:52:29,617 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-07 20:52:29,617 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-07 20:52:29,618 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:52:29,619 INFO L93 Difference]: Finished difference Result 40 states and 43 transitions. [2022-04-07 20:52:29,619 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 43 transitions. [2022-04-07 20:52:29,619 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:52:29,619 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:52:29,619 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-07 20:52:29,619 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-07 20:52:29,621 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:52:29,621 INFO L93 Difference]: Finished difference Result 40 states and 43 transitions. [2022-04-07 20:52:29,621 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 43 transitions. [2022-04-07 20:52:29,621 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:52:29,621 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:52:29,621 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 20:52:29,621 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 20:52:29,622 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-07 20:52:29,623 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 43 transitions. [2022-04-07 20:52:29,623 INFO L78 Accepts]: Start accepts. Automaton has 40 states and 43 transitions. Word has length 44 [2022-04-07 20:52:29,623 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 20:52:29,623 INFO L478 AbstractCegarLoop]: Abstraction has 40 states and 43 transitions. [2022-04-07 20:52:29,624 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.625) internal successors, (21), 8 states have internal predecessors, (21), 6 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 5 states have call predecessors, (6), 5 states have call successors, (6) [2022-04-07 20:52:29,624 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 43 transitions. [2022-04-07 20:52:29,624 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 52 [2022-04-07 20:52:29,624 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 20:52:29,625 INFO L499 BasicCegarLoop]: trace histogram [6, 5, 5, 5, 5, 5, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 20:52:29,631 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-07 20:52:29,830 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 20:52:29,830 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 20:52:29,831 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 20:52:29,831 INFO L85 PathProgramCache]: Analyzing trace with hash 1178929216, now seen corresponding path program 4 times [2022-04-07 20:52:29,831 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 20:52:29,831 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1531068131] [2022-04-07 20:52:29,831 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:52:29,831 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 20:52:29,848 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 20:52:29,848 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1710160848] [2022-04-07 20:52:29,848 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-07 20:52:29,848 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 20:52:29,848 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 20:52:29,856 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-07 20:52:29,857 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-07 20:52:29,973 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-07 20:52:29,973 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-07 20:52:29,974 INFO L263 TraceCheckSpWp]: Trace formula consists of 119 conjuncts, 24 conjunts are in the unsatisfiable core [2022-04-07 20:52:29,990 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:52:29,992 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 20:52:30,389 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-07 20:52:30,389 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-07 20:52:30,389 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-07 20:52:30,389 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-07 20:52:30,390 INFO L272 TraceCheckUtils]: 4: Hoare triple {1543#true} [64] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1543#true} is VALID [2022-04-07 20:52:30,390 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-07 20:52:30,390 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-07 20:52:30,390 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-07 20:52:30,390 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-07 20:52:30,390 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-07 20:52:30,390 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-07 20:52:30,391 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-07 20:52:30,391 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-07 20:52:30,391 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-07 20:52:30,392 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-07 20:52:30,392 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-07 20:52:30,392 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-07 20:52:30,393 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-07 20:52:30,393 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-07 20:52:30,393 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-07 20:52:30,394 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-07 20:52:30,394 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-07 20:52:30,394 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-07 20:52:30,394 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-07 20:52:30,395 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-07 20:52:30,397 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-07 20:52:30,397 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-07 20:52:30,397 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-07 20:52:30,398 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-07 20:52:30,398 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-07 20:52:30,398 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-07 20:52:30,398 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-07 20:52:30,399 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-07 20:52:30,399 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-07 20:52:30,400 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-07 20:52:30,400 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-07 20:52:30,400 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-07 20:52:30,400 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-07 20:52:30,401 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-07 20:52:30,401 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-07 20:52:30,402 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-07 20:52:30,402 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-07 20:52:30,402 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-07 20:52:30,402 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-07 20:52:30,402 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-07 20:52:30,408 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-07 20:52:30,409 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-07 20:52:30,410 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-07 20:52:30,410 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-07 20:52:30,411 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-07 20:52:30,411 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-07 20:52:30,411 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-07 20:52:30,411 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 20:52:30,707 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 20:52:30,707 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1531068131] [2022-04-07 20:52:30,707 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 20:52:30,708 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1710160848] [2022-04-07 20:52:30,708 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1710160848] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-07 20:52:30,708 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-07 20:52:30,708 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10] total 10 [2022-04-07 20:52:30,708 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [271883874] [2022-04-07 20:52:30,708 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-07 20:52:30,709 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-07 20:52:30,709 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 20:52:30,709 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-07 20:52:30,750 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-07 20:52:30,750 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-07 20:52:30,750 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 20:52:30,751 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-07 20:52:30,751 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=123, Unknown=0, NotChecked=0, Total=156 [2022-04-07 20:52:30,751 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-07 20:52:31,135 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:52:31,135 INFO L93 Difference]: Finished difference Result 46 states and 50 transitions. [2022-04-07 20:52:31,136 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-07 20:52:31,136 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-07 20:52:31,136 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 20:52:31,136 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-07 20:52:31,138 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 47 transitions. [2022-04-07 20:52:31,138 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-07 20:52:31,140 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 47 transitions. [2022-04-07 20:52:31,140 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 47 transitions. [2022-04-07 20:52:31,187 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-07 20:52:31,189 INFO L225 Difference]: With dead ends: 46 [2022-04-07 20:52:31,189 INFO L226 Difference]: Without dead ends: 43 [2022-04-07 20:52:31,189 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 65 GetRequests, 51 SyntacticMatches, 1 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=43, Invalid=167, Unknown=0, NotChecked=0, Total=210 [2022-04-07 20:52:31,190 INFO L913 BasicCegarLoop]: 34 mSDtfsCounter, 2 mSDsluCounter, 171 mSDsCounter, 0 mSdLazyCounter, 147 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 2 SdHoareTripleChecker+Valid, 205 SdHoareTripleChecker+Invalid, 147 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 147 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-07 20:52:31,190 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [2 Valid, 205 Invalid, 147 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 147 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-07 20:52:31,190 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 43 states. [2022-04-07 20:52:31,193 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 43 to 43. [2022-04-07 20:52:31,193 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 20:52:31,193 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-07 20:52:31,194 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-07 20:52:31,194 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-07 20:52:31,196 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:52:31,196 INFO L93 Difference]: Finished difference Result 43 states and 47 transitions. [2022-04-07 20:52:31,196 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 47 transitions. [2022-04-07 20:52:31,196 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:52:31,196 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:52:31,197 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-07 20:52:31,197 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-07 20:52:31,198 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:52:31,199 INFO L93 Difference]: Finished difference Result 43 states and 47 transitions. [2022-04-07 20:52:31,199 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 47 transitions. [2022-04-07 20:52:31,199 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:52:31,199 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:52:31,199 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 20:52:31,199 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 20:52:31,199 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-07 20:52:31,201 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 43 states to 43 states and 47 transitions. [2022-04-07 20:52:31,201 INFO L78 Accepts]: Start accepts. Automaton has 43 states and 47 transitions. Word has length 51 [2022-04-07 20:52:31,201 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 20:52:31,201 INFO L478 AbstractCegarLoop]: Abstraction has 43 states and 47 transitions. [2022-04-07 20:52:31,202 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.5555555555555554) internal successors, (23), 9 states have internal predecessors, (23), 7 states have call successors, (9), 2 states have call predecessors, (9), 1 states have return successors, (7), 6 states have call predecessors, (7), 6 states have call successors, (7) [2022-04-07 20:52:31,202 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 47 transitions. [2022-04-07 20:52:31,203 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-07 20:52:31,203 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 20:52:31,203 INFO L499 BasicCegarLoop]: trace histogram [7, 6, 6, 6, 6, 6, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 20:52:31,229 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-07 20:52:31,420 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 20:52:31,421 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 20:52:31,421 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 20:52:31,421 INFO L85 PathProgramCache]: Analyzing trace with hash -1658817134, now seen corresponding path program 5 times [2022-04-07 20:52:31,421 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 20:52:31,422 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1453199388] [2022-04-07 20:52:31,422 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:52:31,422 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 20:52:31,434 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 20:52:31,434 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1564742699] [2022-04-07 20:52:31,434 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-04-07 20:52:31,434 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 20:52:31,434 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 20:52:31,441 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-07 20:52:31,443 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-07 20:52:31,554 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 6 check-sat command(s) [2022-04-07 20:52:31,554 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-07 20:52:31,555 INFO L263 TraceCheckSpWp]: Trace formula consists of 163 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-07 20:52:31,579 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:52:31,581 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 20:52:31,992 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-07 20:52:31,992 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-07 20:52:31,992 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-07 20:52:31,992 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-07 20:52:31,992 INFO L272 TraceCheckUtils]: 4: Hoare triple {1926#true} [64] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1926#true} is VALID [2022-04-07 20:52:31,992 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-07 20:52:31,993 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-07 20:52:31,993 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-07 20:52:31,993 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-07 20:52:31,993 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-07 20:52:31,993 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-07 20:52:31,994 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-07 20:52:31,994 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-07 20:52:31,994 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-07 20:52:31,994 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-07 20:52:31,994 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-07 20:52:31,994 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-07 20:52:31,995 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-07 20:52:31,995 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-07 20:52:31,996 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-07 20:52:31,996 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-07 20:52:31,996 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-07 20:52:31,996 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-07 20:52:31,996 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-07 20:52:31,997 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-07 20:52:31,999 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-07 20:52:32,000 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-07 20:52:32,000 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-07 20:52:32,000 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-07 20:52:32,000 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-07 20:52:32,001 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-07 20:52:32,001 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-07 20:52:32,002 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-07 20:52:32,003 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-07 20:52:32,003 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-07 20:52:32,003 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-07 20:52:32,003 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-07 20:52:32,003 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-07 20:52:32,004 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-07 20:52:32,004 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-07 20:52:32,005 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-07 20:52:32,005 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-07 20:52:32,005 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-07 20:52:32,005 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-07 20:52:32,005 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-07 20:52:32,006 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-07 20:52:32,007 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-07 20:52:32,007 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-07 20:52:32,008 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-07 20:52:32,008 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-07 20:52:32,008 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-07 20:52:32,008 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-07 20:52:32,009 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-07 20:52:32,009 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-07 20:52:32,010 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-07 20:52:32,010 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-07 20:52:32,011 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-07 20:52:32,011 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-07 20:52:32,011 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-07 20:52:32,012 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 20:52:32,369 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 20:52:32,370 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1453199388] [2022-04-07 20:52:32,370 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 20:52:32,370 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1564742699] [2022-04-07 20:52:32,370 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1564742699] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-07 20:52:32,370 INFO L184 FreeRefinementEngine]: Found 0 perfect and 1 imperfect interpolant sequences. [2022-04-07 20:52:32,370 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11] total 11 [2022-04-07 20:52:32,370 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [453988565] [2022-04-07 20:52:32,370 INFO L85 oduleStraightlineAll]: Using 1 imperfect interpolants to construct interpolant automaton [2022-04-07 20:52:32,371 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-07 20:52:32,371 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 20:52:32,371 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-07 20:52:32,412 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 20:52:32,412 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-07 20:52:32,412 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 20:52:32,413 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-07 20:52:32,413 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=36, Invalid=146, Unknown=0, NotChecked=0, Total=182 [2022-04-07 20:52:32,413 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-07 20:52:32,896 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:52:32,897 INFO L93 Difference]: Finished difference Result 49 states and 54 transitions. [2022-04-07 20:52:32,897 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-07 20:52:32,897 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-07 20:52:32,897 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 20:52:32,898 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-07 20:52:32,899 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 51 transitions. [2022-04-07 20:52:32,900 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-07 20:52:32,901 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 51 transitions. [2022-04-07 20:52:32,901 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 51 transitions. [2022-04-07 20:52:32,944 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-07 20:52:32,945 INFO L225 Difference]: With dead ends: 49 [2022-04-07 20:52:32,945 INFO L226 Difference]: Without dead ends: 46 [2022-04-07 20:52:32,946 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 72 GetRequests, 57 SyntacticMatches, 1 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=46, Invalid=194, Unknown=0, NotChecked=0, Total=240 [2022-04-07 20:52:32,946 INFO L913 BasicCegarLoop]: 37 mSDtfsCounter, 2 mSDsluCounter, 202 mSDsCounter, 0 mSdLazyCounter, 191 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 2 SdHoareTripleChecker+Valid, 239 SdHoareTripleChecker+Invalid, 191 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 191 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-07 20:52:32,947 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [2 Valid, 239 Invalid, 191 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 191 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-07 20:52:32,947 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 46 states. [2022-04-07 20:52:32,950 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 46 to 46. [2022-04-07 20:52:32,950 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 20:52:32,950 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-07 20:52:32,950 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-07 20:52:32,950 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-07 20:52:32,952 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:52:32,952 INFO L93 Difference]: Finished difference Result 46 states and 51 transitions. [2022-04-07 20:52:32,952 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 51 transitions. [2022-04-07 20:52:32,953 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:52:32,953 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:52:32,953 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-07 20:52:32,953 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-07 20:52:32,955 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:52:32,955 INFO L93 Difference]: Finished difference Result 46 states and 51 transitions. [2022-04-07 20:52:32,955 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 51 transitions. [2022-04-07 20:52:32,955 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:52:32,955 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:52:32,956 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 20:52:32,956 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 20:52:32,956 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-07 20:52:32,957 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 46 states to 46 states and 51 transitions. [2022-04-07 20:52:32,957 INFO L78 Accepts]: Start accepts. Automaton has 46 states and 51 transitions. Word has length 58 [2022-04-07 20:52:32,957 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 20:52:32,958 INFO L478 AbstractCegarLoop]: Abstraction has 46 states and 51 transitions. [2022-04-07 20:52:32,958 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 10 states have (on average 2.5) internal successors, (25), 10 states have internal predecessors, (25), 8 states have call successors, (10), 2 states have call predecessors, (10), 1 states have return successors, (8), 7 states have call predecessors, (8), 7 states have call successors, (8) [2022-04-07 20:52:32,958 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 51 transitions. [2022-04-07 20:52:32,958 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 66 [2022-04-07 20:52:32,958 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 20:52:32,958 INFO L499 BasicCegarLoop]: trace histogram [8, 7, 7, 7, 7, 7, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 20:52:32,971 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-07 20:52:33,164 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 20:52:33,164 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 20:52:33,175 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 20:52:33,176 INFO L85 PathProgramCache]: Analyzing trace with hash 270583808, now seen corresponding path program 6 times [2022-04-07 20:52:33,176 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 20:52:33,176 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [930133021] [2022-04-07 20:52:33,176 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 20:52:33,176 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 20:52:33,194 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 20:52:33,195 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1056397785] [2022-04-07 20:52:33,195 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-07 20:52:33,195 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 20:52:33,195 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 20:52:33,200 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-07 20:52:33,212 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-07 20:52:33,300 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-07 20:52:33,300 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-07 20:52:33,301 INFO L263 TraceCheckSpWp]: Trace formula consists of 180 conjuncts, 12 conjunts are in the unsatisfiable core [2022-04-07 20:52:33,312 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 20:52:33,314 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 20:52:33,834 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-07 20:52:33,835 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-07 20:52:33,835 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-07 20:52:33,835 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-07 20:52:33,835 INFO L272 TraceCheckUtils]: 4: Hoare triple {2343#true} [64] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2343#true} is VALID [2022-04-07 20:52:33,835 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-07 20:52:33,836 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-07 20:52:33,836 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-07 20:52:33,836 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-07 20:52:33,837 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-07 20:52:33,838 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-07 20:52:33,839 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-07 20:52:33,839 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-07 20:52:33,839 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-07 20:52:33,840 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-07 20:52:33,840 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-07 20:52:33,840 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-07 20:52:33,840 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-07 20:52:33,841 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-07 20:52:33,842 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-07 20:52:33,842 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-07 20:52:33,842 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-07 20:52:33,847 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-07 20:52:33,848 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-07 20:52:33,848 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-07 20:52:33,849 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-07 20:52:33,850 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-07 20:52:33,850 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-07 20:52:33,850 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-07 20:52:33,850 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-07 20:52:33,851 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-07 20:52:33,851 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-07 20:52:33,852 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-07 20:52:33,853 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-07 20:52:33,853 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-07 20:52:33,853 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-07 20:52:33,853 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-07 20:52:33,853 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-07 20:52:33,854 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-07 20:52:33,854 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-07 20:52:33,855 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-07 20:52:33,855 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-07 20:52:33,855 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-07 20:52:33,855 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-07 20:52:33,855 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-07 20:52:33,856 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-07 20:52:33,857 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-07 20:52:33,857 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-07 20:52:33,857 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-07 20:52:33,857 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-07 20:52:33,858 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-07 20:52:33,859 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-07 20:52:33,859 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-07 20:52:33,860 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-07 20:52:33,860 INFO L290 TraceCheckUtils]: 54: Hoare triple {2344#false} [74] L27-2-->L28: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2344#false} is VALID [2022-04-07 20:52:33,860 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-07 20:52:33,860 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-07 20:52:33,860 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-07 20:52:33,860 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-07 20:52:33,861 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-07 20:52:33,861 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-07 20:52:33,861 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-07 20:52:33,861 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-07 20:52:33,862 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-07 20:52:33,862 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-07 20:52:33,863 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-07 20:52:33,863 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 20:52:33,863 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 20:52:33,863 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [930133021] [2022-04-07 20:52:33,863 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 20:52:33,864 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1056397785] [2022-04-07 20:52:33,864 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1056397785] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 20:52:33,864 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 20:52:33,864 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-07 20:52:33,866 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [225486635] [2022-04-07 20:52:33,866 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 20:52:33,867 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-07 20:52:33,867 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 20:52:33,867 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-07 20:52:33,901 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-07 20:52:33,901 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-07 20:52:33,901 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 20:52:33,902 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-07 20:52:33,902 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=40, Invalid=70, Unknown=0, NotChecked=0, Total=110 [2022-04-07 20:52:33,902 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-07 20:52:34,083 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:52:34,083 INFO L93 Difference]: Finished difference Result 38 states and 41 transitions. [2022-04-07 20:52:34,083 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-07 20:52:34,090 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-07 20:52:34,091 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 20:52:34,091 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-07 20:52:34,093 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 39 transitions. [2022-04-07 20:52:34,093 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-07 20:52:34,094 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 39 transitions. [2022-04-07 20:52:34,094 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 39 transitions. [2022-04-07 20:52:34,128 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-07 20:52:34,128 INFO L225 Difference]: With dead ends: 38 [2022-04-07 20:52:34,128 INFO L226 Difference]: Without dead ends: 0 [2022-04-07 20:52:34,128 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 65 GetRequests, 55 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 6 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=44, Invalid=88, Unknown=0, NotChecked=0, Total=132 [2022-04-07 20:52:34,130 INFO L913 BasicCegarLoop]: 31 mSDtfsCounter, 4 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 48 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s 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.1s IncrementalHoareTripleChecker+Time [2022-04-07 20:52:34,130 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [4 Valid, 128 Invalid, 56 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 48 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-07 20:52:34,130 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-07 20:52:34,131 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-07 20:52:34,131 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 20:52:34,131 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-07 20:52:34,131 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-07 20:52:34,131 INFO L87 Difference]: Start difference. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-07 20:52:34,131 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:52:34,131 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-07 20:52:34,131 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 20:52:34,131 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:52:34,131 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:52:34,131 INFO L74 IsIncluded]: Start isIncluded. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-07 20:52:34,132 INFO L87 Difference]: Start difference. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-07 20:52:34,132 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 20:52:34,132 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-07 20:52:34,132 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 20:52:34,132 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:52:34,132 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 20:52:34,132 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 20:52:34,132 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 20:52:34,132 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-07 20:52:34,132 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-07 20:52:34,132 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 65 [2022-04-07 20:52:34,132 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 20:52:34,133 INFO L478 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-07 20:52:34,133 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 10 states have internal predecessors, (29), 8 states have call successors, (11), 2 states have call predecessors, (11), 3 states have return successors, (9), 9 states have call predecessors, (9), 8 states have call successors, (9) [2022-04-07 20:52:34,133 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 20:52:34,133 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 20:52:34,136 INFO L788 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-07 20:52:34,143 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-07 20:52:34,336 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable8 [2022-04-07 20:52:34,339 INFO L719 BasicCegarLoop]: Path program histogram: [6, 1, 1, 1] [2022-04-07 20:52:34,340 INFO L178 ceAbstractionStarter]: Computing trace abstraction results [2022-04-07 20:52:34,341 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 07.04 08:52:34 BasicIcfg [2022-04-07 20:52:34,341 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-07 20:52:34,342 INFO L158 Benchmark]: Toolchain (without parser) took 11587.41ms. Allocated memory was 194.0MB in the beginning and 282.1MB in the end (delta: 88.1MB). Free memory was 140.7MB in the beginning and 171.9MB in the end (delta: -31.2MB). Peak memory consumption was 57.6MB. Max. memory is 8.0GB. [2022-04-07 20:52:34,342 INFO L158 Benchmark]: CDTParser took 0.12ms. Allocated memory is still 194.0MB. Free memory is still 156.6MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-07 20:52:34,343 INFO L158 Benchmark]: CACSL2BoogieTranslator took 219.49ms. Allocated memory was 194.0MB in the beginning and 234.9MB in the end (delta: 40.9MB). Free memory was 140.4MB in the beginning and 208.6MB in the end (delta: -68.2MB). Peak memory consumption was 9.3MB. Max. memory is 8.0GB. [2022-04-07 20:52:34,343 INFO L158 Benchmark]: Boogie Preprocessor took 29.45ms. Allocated memory is still 234.9MB. Free memory was 208.6MB in the beginning and 207.2MB in the end (delta: 1.4MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-07 20:52:34,343 INFO L158 Benchmark]: RCFGBuilder took 255.16ms. Allocated memory is still 234.9MB. Free memory was 207.2MB in the beginning and 196.0MB in the end (delta: 11.2MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-07 20:52:34,343 INFO L158 Benchmark]: IcfgTransformer took 26.31ms. Allocated memory is still 234.9MB. Free memory was 196.0MB in the beginning and 194.6MB in the end (delta: 1.4MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-07 20:52:34,344 INFO L158 Benchmark]: TraceAbstraction took 11050.35ms. Allocated memory was 234.9MB in the beginning and 282.1MB in the end (delta: 47.2MB). Free memory was 193.9MB in the beginning and 171.9MB in the end (delta: 22.0MB). Peak memory consumption was 69.9MB. Max. memory is 8.0GB. [2022-04-07 20:52:34,345 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.12ms. Allocated memory is still 194.0MB. Free memory is still 156.6MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 219.49ms. Allocated memory was 194.0MB in the beginning and 234.9MB in the end (delta: 40.9MB). Free memory was 140.4MB in the beginning and 208.6MB in the end (delta: -68.2MB). Peak memory consumption was 9.3MB. Max. memory is 8.0GB. * Boogie Preprocessor took 29.45ms. Allocated memory is still 234.9MB. Free memory was 208.6MB in the beginning and 207.2MB in the end (delta: 1.4MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 255.16ms. Allocated memory is still 234.9MB. Free memory was 207.2MB in the beginning and 196.0MB in the end (delta: 11.2MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * IcfgTransformer took 26.31ms. Allocated memory is still 234.9MB. Free memory was 196.0MB in the beginning and 194.6MB in the end (delta: 1.4MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * TraceAbstraction took 11050.35ms. Allocated memory was 234.9MB in the beginning and 282.1MB in the end (delta: 47.2MB). Free memory was 193.9MB in the beginning and 171.9MB in the end (delta: 22.0MB). Peak memory consumption was 69.9MB. 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: 11.0s, OverallIterations: 9, TraceHistogramMax: 8, PathProgramHistogramMax: 6, EmptinessCheckTime: 0.0s, AutomataDifference: 2.7s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 48 SdHoareTripleChecker+Valid, 0.8s 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, 1.0s 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.5s SatisfiabilityAnalysisTime, 5.0s InterpolantComputationTime, 343 NumberOfCodeBlocks, 341 NumberOfCodeBlocksAsserted, 24 NumberOfCheckSat, 357 ConstructedInterpolants, 0 QuantifiedInterpolants, 1287 SizeOfPredicates, 13 NumberOfNonLiveVariables, 951 ConjunctsInSsa, 130 ConjunctsInUnsatCore, 10 InterpolantComputations, 4 PerfectInterpolantSequences, 347/454 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold RESULT: Ultimate proved your program to be correct! [2022-04-07 20:52:34,359 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...