/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/fermat1-ll_valuebound20.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-07 19:31:47,407 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-07 19:31:47,409 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-07 19:31:47,437 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-07 19:31:47,437 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-07 19:31:47,438 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-07 19:31:47,439 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-07 19:31:47,441 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-07 19:31:47,444 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-07 19:31:47,447 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-07 19:31:47,448 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-07 19:31:47,450 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-07 19:31:47,451 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-07 19:31:47,451 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-07 19:31:47,452 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-07 19:31:47,453 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-07 19:31:47,454 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-07 19:31:47,454 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-07 19:31:47,455 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-07 19:31:47,457 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-07 19:31:47,458 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-07 19:31:47,459 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-07 19:31:47,460 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-07 19:31:47,460 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-07 19:31:47,461 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-07 19:31:47,463 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-07 19:31:47,463 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-07 19:31:47,464 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-07 19:31:47,464 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-07 19:31:47,465 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-07 19:31:47,465 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-07 19:31:47,466 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-07 19:31:47,466 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-07 19:31:47,467 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-07 19:31:47,467 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-07 19:31:47,468 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-07 19:31:47,468 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-07 19:31:47,469 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-07 19:31:47,469 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-07 19:31:47,469 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-07 19:31:47,470 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-07 19:31:47,471 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-07 19:31:47,471 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/LoopAccelerationJordanC.epf [2022-04-07 19:31:47,479 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-07 19:31:47,479 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-07 19:31:47,480 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-07 19:31:47,480 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-07 19:31:47,481 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-07 19:31:47,481 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-07 19:31:47,481 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-07 19:31:47,481 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-07 19:31:47,481 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-07 19:31:47,482 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-07 19:31:47,482 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-07 19:31:47,482 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-07 19:31:47,482 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-07 19:31:47,482 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-07 19:31:47,483 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-07 19:31:47,489 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-07 19:31:47,490 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-07 19:31:47,490 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-07 19:31:47,490 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 19:31:47,490 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-07 19:31:47,491 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-07 19:31:47,492 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-07 19:31:47,492 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 19:31:47,721 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-07 19:31:47,740 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-07 19:31:47,742 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-07 19:31:47,742 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-07 19:31:47,743 INFO L275 PluginConnector]: CDTParser initialized [2022-04-07 19:31:47,744 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/fermat1-ll_valuebound20.c [2022-04-07 19:31:47,805 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/6878ff67b/29dd49e57bdb408898bdf3d98da24114/FLAG0c5590cd6 [2022-04-07 19:31:48,113 INFO L306 CDTParser]: Found 1 translation units. [2022-04-07 19:31:48,114 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/fermat1-ll_valuebound20.c [2022-04-07 19:31:48,121 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/6878ff67b/29dd49e57bdb408898bdf3d98da24114/FLAG0c5590cd6 [2022-04-07 19:31:48,564 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/6878ff67b/29dd49e57bdb408898bdf3d98da24114 [2022-04-07 19:31:48,566 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-07 19:31:48,567 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-07 19:31:48,569 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-07 19:31:48,569 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-07 19:31:48,572 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-07 19:31:48,573 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 07:31:48" (1/1) ... [2022-04-07 19:31:48,574 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@4b3abce and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 07:31:48, skipping insertion in model container [2022-04-07 19:31:48,574 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 07.04 07:31:48" (1/1) ... [2022-04-07 19:31:48,578 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-07 19:31:48,588 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-07 19:31:48,755 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/fermat1-ll_valuebound20.c[535,548] [2022-04-07 19:31:48,785 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 19:31:48,800 INFO L203 MainTranslator]: Completed pre-run [2022-04-07 19:31:48,819 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/fermat1-ll_valuebound20.c[535,548] [2022-04-07 19:31:48,844 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-07 19:31:48,854 INFO L208 MainTranslator]: Completed translation [2022-04-07 19:31:48,855 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 07:31:48 WrapperNode [2022-04-07 19:31:48,855 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-07 19:31:48,855 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-07 19:31:48,856 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-07 19:31:48,856 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-07 19:31:48,862 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 07:31:48" (1/1) ... [2022-04-07 19:31:48,862 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 07:31:48" (1/1) ... [2022-04-07 19:31:48,866 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 07:31:48" (1/1) ... [2022-04-07 19:31:48,867 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 07:31:48" (1/1) ... [2022-04-07 19:31:48,872 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 07:31:48" (1/1) ... [2022-04-07 19:31:48,875 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 07:31:48" (1/1) ... [2022-04-07 19:31:48,876 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 07:31:48" (1/1) ... [2022-04-07 19:31:48,878 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-07 19:31:48,878 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-07 19:31:48,878 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-07 19:31:48,878 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-07 19:31:48,879 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 07:31:48" (1/1) ... [2022-04-07 19:31:48,885 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-07 19:31:48,894 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 19:31:48,917 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 19:31:48,930 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 19:31:48,954 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-07 19:31:48,954 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-07 19:31:48,954 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-07 19:31:48,955 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-07 19:31:48,955 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-07 19:31:48,955 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-07 19:31:48,955 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-07 19:31:48,955 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-07 19:31:48,956 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-07 19:31:48,956 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-07 19:31:48,956 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-07 19:31:48,957 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-07 19:31:48,957 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-07 19:31:48,957 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-07 19:31:48,958 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-07 19:31:48,959 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-07 19:31:48,959 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-07 19:31:48,959 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-07 19:31:48,959 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-07 19:31:48,959 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-07 19:31:49,009 INFO L234 CfgBuilder]: Building ICFG [2022-04-07 19:31:49,010 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-07 19:31:49,147 INFO L275 CfgBuilder]: Performing block encoding [2022-04-07 19:31:49,152 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-07 19:31:49,152 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-04-07 19:31:49,153 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 07:31:49 BoogieIcfgContainer [2022-04-07 19:31:49,154 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-07 19:31:49,154 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-07 19:31:49,154 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-07 19:31:49,155 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-07 19:31:49,157 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 07:31:49" (1/1) ... [2022-04-07 19:31:49,159 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_JORDAN [2022-04-07 19:31:49,189 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 07.04 07:31:49 BasicIcfg [2022-04-07 19:31:49,189 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-07 19:31:49,190 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-07 19:31:49,190 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-07 19:31:49,192 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-07 19:31:49,193 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 07.04 07:31:48" (1/4) ... [2022-04-07 19:31:49,193 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@653acd81 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 07:31:49, skipping insertion in model container [2022-04-07 19:31:49,193 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 07.04 07:31:48" (2/4) ... [2022-04-07 19:31:49,193 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@653acd81 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 07.04 07:31:49, skipping insertion in model container [2022-04-07 19:31:49,194 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 07.04 07:31:49" (3/4) ... [2022-04-07 19:31:49,194 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@653acd81 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 07.04 07:31:49, skipping insertion in model container [2022-04-07 19:31:49,194 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 07.04 07:31:49" (4/4) ... [2022-04-07 19:31:49,195 INFO L111 eAbstractionObserver]: Analyzing ICFG fermat1-ll_valuebound20.cJordan [2022-04-07 19:31:49,198 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:ForwardPredicates Determinization: PREDICATE_ABSTRACTION [2022-04-07 19:31:49,198 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-07 19:31:49,238 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-07 19:31:49,243 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 19:31:49,244 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-07 19:31:49,276 INFO L276 IsEmpty]: Start isEmpty. Operand has 37 states, 21 states have (on average 1.5714285714285714) internal successors, (33), 22 states have internal predecessors, (33), 10 states have call successors, (10), 4 states have call predecessors, (10), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-07 19:31:49,282 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-07 19:31:49,282 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 19:31:49,283 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 19:31:49,283 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 19:31:49,292 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 19:31:49,292 INFO L85 PathProgramCache]: Analyzing trace with hash 1042421720, now seen corresponding path program 1 times [2022-04-07 19:31:49,300 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 19:31:49,302 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1515037368] [2022-04-07 19:31:49,302 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 19:31:49,303 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 19:31:49,418 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 19:31:49,465 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-07 19:31:49,469 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 19:31:49,481 INFO L290 TraceCheckUtils]: 0: Hoare triple {61#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [111] 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| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#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] {40#true} is VALID [2022-04-07 19:31:49,481 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} [114] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {40#true} is VALID [2022-04-07 19:31:49,481 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {40#true} {40#true} [152] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {40#true} is VALID [2022-04-07 19:31:49,482 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-07 19:31:49,484 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 19:31:49,490 INFO L290 TraceCheckUtils]: 0: Hoare triple {40#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {40#true} is VALID [2022-04-07 19:31:49,490 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} [119] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-07 19:31:49,490 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#false} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-07 19:31:49,491 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#false} {40#true} [153] assume_abort_if_notEXIT-->L23-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~A~0_12) (<= v_main_~A~0_12 20)) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {41#false} is VALID [2022-04-07 19:31:49,491 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-07 19:31:49,493 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 19:31:49,498 INFO L290 TraceCheckUtils]: 0: Hoare triple {40#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {40#true} is VALID [2022-04-07 19:31:49,498 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} [119] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-07 19:31:49,499 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#false} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-07 19:31:49,499 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#false} {41#false} [154] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~R~0_6 20) (<= 0 v_main_~R~0_6)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {41#false} is VALID [2022-04-07 19:31:49,499 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-07 19:31:49,501 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 19:31:49,506 INFO L290 TraceCheckUtils]: 0: Hoare triple {40#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {40#true} is VALID [2022-04-07 19:31:49,507 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} [119] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-07 19:31:49,507 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#false} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-07 19:31:49,508 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#false} {41#false} [155] assume_abort_if_notEXIT-->L26: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (< (+ (* v_main_~R~0_7 v_main_~R~0_7) 1) (+ (* v_main_~R~0_7 2) v_main_~A~0_13)) 1 0)) InVars {main_~A~0=v_main_~A~0_13, main_~R~0=v_main_~R~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {41#false} is VALID [2022-04-07 19:31:49,508 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-07 19:31:49,510 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 19:31:49,515 INFO L290 TraceCheckUtils]: 0: Hoare triple {40#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {40#true} is VALID [2022-04-07 19:31:49,515 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} [119] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-07 19:31:49,516 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#false} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-07 19:31:49,516 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#false} {41#false} [156] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (let ((.cse0 (mod v_main_~A~0_14 2))) (ite (and (< v_main_~A~0_14 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0) |v_assume_abort_if_not_#in~condInParam_4|) InVars {main_~A~0=v_main_~A~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_4|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {41#false} is VALID [2022-04-07 19:31:49,517 INFO L272 TraceCheckUtils]: 0: Hoare triple {40#true} [109] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {61#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-07 19:31:49,517 INFO L290 TraceCheckUtils]: 1: Hoare triple {61#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [111] 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| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#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] {40#true} is VALID [2022-04-07 19:31:49,518 INFO L290 TraceCheckUtils]: 2: Hoare triple {40#true} [114] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {40#true} is VALID [2022-04-07 19:31:49,518 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {40#true} {40#true} [152] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {40#true} is VALID [2022-04-07 19:31:49,518 INFO L272 TraceCheckUtils]: 4: Hoare triple {40#true} [110] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {40#true} is VALID [2022-04-07 19:31:49,518 INFO L290 TraceCheckUtils]: 5: Hoare triple {40#true} [113] mainENTRY-->L23: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (= v_main_~A~0_2 |v_main_#t~nondet4_2|)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~A~0=v_main_~A~0_2, main_~u~0=v_main_~u~0_2, main_~R~0=v_main_~R~0_1, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~A~0, main_~u~0, main_~R~0, main_~r~0] {40#true} is VALID [2022-04-07 19:31:49,519 INFO L272 TraceCheckUtils]: 6: Hoare triple {40#true} [115] L23-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~A~0_12) (<= v_main_~A~0_12 20)) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {40#true} is VALID [2022-04-07 19:31:49,519 INFO L290 TraceCheckUtils]: 7: Hoare triple {40#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {40#true} is VALID [2022-04-07 19:31:49,520 INFO L290 TraceCheckUtils]: 8: Hoare triple {40#true} [119] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-07 19:31:49,520 INFO L290 TraceCheckUtils]: 9: Hoare triple {41#false} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-07 19:31:49,520 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {41#false} {40#true} [153] assume_abort_if_notEXIT-->L23-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~A~0_12) (<= v_main_~A~0_12 20)) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {41#false} is VALID [2022-04-07 19:31:49,520 INFO L290 TraceCheckUtils]: 11: Hoare triple {41#false} [116] L23-1-->L25: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~R~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~R~0=v_main_~R~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~R~0] {41#false} is VALID [2022-04-07 19:31:49,521 INFO L272 TraceCheckUtils]: 12: Hoare triple {41#false} [118] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~R~0_6 20) (<= 0 v_main_~R~0_6)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {40#true} is VALID [2022-04-07 19:31:49,521 INFO L290 TraceCheckUtils]: 13: Hoare triple {40#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {40#true} is VALID [2022-04-07 19:31:49,521 INFO L290 TraceCheckUtils]: 14: Hoare triple {40#true} [119] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-07 19:31:49,522 INFO L290 TraceCheckUtils]: 15: Hoare triple {41#false} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-07 19:31:49,522 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {41#false} {41#false} [154] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~R~0_6 20) (<= 0 v_main_~R~0_6)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {41#false} is VALID [2022-04-07 19:31:49,522 INFO L272 TraceCheckUtils]: 17: Hoare triple {41#false} [121] L25-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (< (+ (* v_main_~R~0_7 v_main_~R~0_7) 1) (+ (* v_main_~R~0_7 2) v_main_~A~0_13)) 1 0)) InVars {main_~A~0=v_main_~A~0_13, main_~R~0=v_main_~R~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {40#true} is VALID [2022-04-07 19:31:49,523 INFO L290 TraceCheckUtils]: 18: Hoare triple {40#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {40#true} is VALID [2022-04-07 19:31:49,523 INFO L290 TraceCheckUtils]: 19: Hoare triple {40#true} [119] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-07 19:31:49,523 INFO L290 TraceCheckUtils]: 20: Hoare triple {41#false} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-07 19:31:49,524 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {41#false} {41#false} [155] assume_abort_if_notEXIT-->L26: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (< (+ (* v_main_~R~0_7 v_main_~R~0_7) 1) (+ (* v_main_~R~0_7 2) v_main_~A~0_13)) 1 0)) InVars {main_~A~0=v_main_~A~0_13, main_~R~0=v_main_~R~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {41#false} is VALID [2022-04-07 19:31:49,524 INFO L272 TraceCheckUtils]: 22: Hoare triple {41#false} [123] L26-->assume_abort_if_notENTRY: Formula: (= (ite (= (let ((.cse0 (mod v_main_~A~0_14 2))) (ite (and (< v_main_~A~0_14 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0) |v_assume_abort_if_not_#in~condInParam_4|) InVars {main_~A~0=v_main_~A~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_4|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {40#true} is VALID [2022-04-07 19:31:49,524 INFO L290 TraceCheckUtils]: 23: Hoare triple {40#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {40#true} is VALID [2022-04-07 19:31:49,525 INFO L290 TraceCheckUtils]: 24: Hoare triple {40#true} [119] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-07 19:31:49,525 INFO L290 TraceCheckUtils]: 25: Hoare triple {41#false} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-07 19:31:49,525 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {41#false} {41#false} [156] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (let ((.cse0 (mod v_main_~A~0_14 2))) (ite (and (< v_main_~A~0_14 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0) |v_assume_abort_if_not_#in~condInParam_4|) InVars {main_~A~0=v_main_~A~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_4|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {41#false} is VALID [2022-04-07 19:31:49,526 INFO L290 TraceCheckUtils]: 27: Hoare triple {41#false} [124] L28-->L48-2: Formula: (and (= v_main_~r~0_2 (+ (* v_main_~R~0_5 v_main_~R~0_5) (* (- 1) v_main_~A~0_8))) (= v_main_~v~0_3 1) (= v_main_~u~0_3 (+ (* v_main_~R~0_5 2) 1))) InVars {main_~A~0=v_main_~A~0_8, main_~R~0=v_main_~R~0_5} OutVars{main_~v~0=v_main_~v~0_3, main_~A~0=v_main_~A~0_8, main_~R~0=v_main_~R~0_5, main_~u~0=v_main_~u~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~v~0, main_~u~0, main_~r~0] {41#false} is VALID [2022-04-07 19:31:49,526 INFO L290 TraceCheckUtils]: 28: Hoare triple {41#false} [125] L48-2-->L35-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-07 19:31:49,526 INFO L272 TraceCheckUtils]: 29: Hoare triple {41#false} [128] L35-2-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~u~0_12 (- 2)) (* v_main_~v~0_12 2) (* v_main_~u~0_12 v_main_~u~0_12) (* (- 1) (* v_main_~v~0_12 v_main_~v~0_12))) (* v_main_~A~0_18 4)) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~v~0=v_main_~v~0_12, main_~A~0=v_main_~A~0_18, main_~u~0=v_main_~u~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0] {41#false} is VALID [2022-04-07 19:31:49,527 INFO L290 TraceCheckUtils]: 30: Hoare triple {41#false} [131] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |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_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {41#false} is VALID [2022-04-07 19:31:49,527 INFO L290 TraceCheckUtils]: 31: Hoare triple {41#false} [135] L12-->L13: Formula: (= 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[] {41#false} is VALID [2022-04-07 19:31:49,527 INFO L290 TraceCheckUtils]: 32: Hoare triple {41#false} [140] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-07 19:31:49,528 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-07 19:31:49,528 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 19:31:49,528 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1515037368] [2022-04-07 19:31:49,529 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1515037368] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 19:31:49,529 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 19:31:49,529 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-07 19:31:49,530 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [611631381] [2022-04-07 19:31:49,531 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 19:31:49,535 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 33 [2022-04-07 19:31:49,537 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 19:31:49,540 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-07 19:31:49,569 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 19:31:49,570 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-07 19:31:49,570 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 19:31:49,594 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-07 19:31:49,595 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-07 19:31:49,598 INFO L87 Difference]: Start difference. First operand has 37 states, 21 states have (on average 1.5714285714285714) internal successors, (33), 22 states have internal predecessors, (33), 10 states have call successors, (10), 4 states have call predecessors, (10), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-07 19:31:49,710 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 19:31:49,711 INFO L93 Difference]: Finished difference Result 37 states and 45 transitions. [2022-04-07 19:31:49,711 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-07 19:31:49,711 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 33 [2022-04-07 19:31:49,711 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 19:31:49,712 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-07 19:31:49,719 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 53 transitions. [2022-04-07 19:31:49,719 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-07 19:31:49,723 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 53 transitions. [2022-04-07 19:31:49,723 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 53 transitions. [2022-04-07 19:31:49,783 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 19:31:49,790 INFO L225 Difference]: With dead ends: 37 [2022-04-07 19:31:49,791 INFO L226 Difference]: Without dead ends: 32 [2022-04-07 19:31:49,792 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 16 GetRequests, 15 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 19:31:49,795 INFO L913 BasicCegarLoop]: 37 mSDtfsCounter, 22 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 10 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 30 SdHoareTripleChecker+Valid, 40 SdHoareTripleChecker+Invalid, 19 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 10 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-07 19:31:49,795 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [30 Valid, 40 Invalid, 19 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 10 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-07 19:31:49,809 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2022-04-07 19:31:49,819 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 32. [2022-04-07 19:31:49,819 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 19:31:49,820 INFO L82 GeneralOperation]: Start isEquivalent. First operand 32 states. Second operand has 32 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-07 19:31:49,820 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand has 32 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-07 19:31:49,821 INFO L87 Difference]: Start difference. First operand 32 states. Second operand has 32 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-07 19:31:49,826 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 19:31:49,826 INFO L93 Difference]: Finished difference Result 32 states and 40 transitions. [2022-04-07 19:31:49,826 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 40 transitions. [2022-04-07 19:31:49,827 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 19:31:49,827 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 19:31:49,827 INFO L74 IsIncluded]: Start isIncluded. First operand has 32 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 32 states. [2022-04-07 19:31:49,828 INFO L87 Difference]: Start difference. First operand has 32 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 32 states. [2022-04-07 19:31:49,831 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 19:31:49,832 INFO L93 Difference]: Finished difference Result 32 states and 40 transitions. [2022-04-07 19:31:49,832 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 40 transitions. [2022-04-07 19:31:49,832 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 19:31:49,833 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 19:31:49,833 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 19:31:49,833 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 19:31:49,833 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-07 19:31:49,836 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 40 transitions. [2022-04-07 19:31:49,837 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 40 transitions. Word has length 33 [2022-04-07 19:31:49,837 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 19:31:49,837 INFO L478 AbstractCegarLoop]: Abstraction has 32 states and 40 transitions. [2022-04-07 19:31:49,838 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-07 19:31:49,838 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 40 transitions. [2022-04-07 19:31:49,838 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-07 19:31:49,839 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 19:31:49,839 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 19:31:49,839 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-07 19:31:49,839 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 19:31:49,840 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 19:31:49,840 INFO L85 PathProgramCache]: Analyzing trace with hash 104571547, now seen corresponding path program 1 times [2022-04-07 19:31:49,840 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 19:31:49,840 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [577716304] [2022-04-07 19:31:49,840 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 19:31:49,841 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 19:31:49,863 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 19:31:49,864 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1493807612] [2022-04-07 19:31:49,864 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 19:31:49,864 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 19:31:49,864 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 19:31:49,866 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 19:31:49,911 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 19:31:49,979 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 19:31:49,999 INFO L263 TraceCheckSpWp]: Trace formula consists of 99 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-07 19:31:50,014 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 19:31:50,017 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 19:31:59,808 INFO L272 TraceCheckUtils]: 0: Hoare triple {197#true} [109] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {197#true} is VALID [2022-04-07 19:31:59,809 INFO L290 TraceCheckUtils]: 1: Hoare triple {197#true} [111] 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| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#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] {197#true} is VALID [2022-04-07 19:31:59,809 INFO L290 TraceCheckUtils]: 2: Hoare triple {197#true} [114] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {197#true} is VALID [2022-04-07 19:31:59,809 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {197#true} {197#true} [152] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {197#true} is VALID [2022-04-07 19:31:59,809 INFO L272 TraceCheckUtils]: 4: Hoare triple {197#true} [110] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {197#true} is VALID [2022-04-07 19:31:59,810 INFO L290 TraceCheckUtils]: 5: Hoare triple {197#true} [113] mainENTRY-->L23: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (= v_main_~A~0_2 |v_main_#t~nondet4_2|)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~A~0=v_main_~A~0_2, main_~u~0=v_main_~u~0_2, main_~R~0=v_main_~R~0_1, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~A~0, main_~u~0, main_~R~0, main_~r~0] {197#true} is VALID [2022-04-07 19:31:59,810 INFO L272 TraceCheckUtils]: 6: Hoare triple {197#true} [115] L23-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~A~0_12) (<= v_main_~A~0_12 20)) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {197#true} is VALID [2022-04-07 19:31:59,810 INFO L290 TraceCheckUtils]: 7: Hoare triple {197#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {197#true} is VALID [2022-04-07 19:31:59,810 INFO L290 TraceCheckUtils]: 8: Hoare triple {197#true} [120] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {197#true} is VALID [2022-04-07 19:31:59,811 INFO L290 TraceCheckUtils]: 9: Hoare triple {197#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {197#true} is VALID [2022-04-07 19:31:59,811 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {197#true} {197#true} [153] assume_abort_if_notEXIT-->L23-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~A~0_12) (<= v_main_~A~0_12 20)) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {197#true} is VALID [2022-04-07 19:31:59,811 INFO L290 TraceCheckUtils]: 11: Hoare triple {197#true} [116] L23-1-->L25: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~R~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~R~0=v_main_~R~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~R~0] {197#true} is VALID [2022-04-07 19:31:59,811 INFO L272 TraceCheckUtils]: 12: Hoare triple {197#true} [118] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~R~0_6 20) (<= 0 v_main_~R~0_6)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {197#true} is VALID [2022-04-07 19:31:59,812 INFO L290 TraceCheckUtils]: 13: Hoare triple {197#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {197#true} is VALID [2022-04-07 19:31:59,812 INFO L290 TraceCheckUtils]: 14: Hoare triple {197#true} [120] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {197#true} is VALID [2022-04-07 19:31:59,812 INFO L290 TraceCheckUtils]: 15: Hoare triple {197#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {197#true} is VALID [2022-04-07 19:31:59,812 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {197#true} {197#true} [154] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~R~0_6 20) (<= 0 v_main_~R~0_6)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {197#true} is VALID [2022-04-07 19:31:59,813 INFO L272 TraceCheckUtils]: 17: Hoare triple {197#true} [121] L25-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (< (+ (* v_main_~R~0_7 v_main_~R~0_7) 1) (+ (* v_main_~R~0_7 2) v_main_~A~0_13)) 1 0)) InVars {main_~A~0=v_main_~A~0_13, main_~R~0=v_main_~R~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {197#true} is VALID [2022-04-07 19:31:59,813 INFO L290 TraceCheckUtils]: 18: Hoare triple {197#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {197#true} is VALID [2022-04-07 19:31:59,813 INFO L290 TraceCheckUtils]: 19: Hoare triple {197#true} [120] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {197#true} is VALID [2022-04-07 19:31:59,813 INFO L290 TraceCheckUtils]: 20: Hoare triple {197#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {197#true} is VALID [2022-04-07 19:31:59,814 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {197#true} {197#true} [155] assume_abort_if_notEXIT-->L26: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (< (+ (* v_main_~R~0_7 v_main_~R~0_7) 1) (+ (* v_main_~R~0_7 2) v_main_~A~0_13)) 1 0)) InVars {main_~A~0=v_main_~A~0_13, main_~R~0=v_main_~R~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {197#true} is VALID [2022-04-07 19:31:59,814 INFO L272 TraceCheckUtils]: 22: Hoare triple {197#true} [123] L26-->assume_abort_if_notENTRY: Formula: (= (ite (= (let ((.cse0 (mod v_main_~A~0_14 2))) (ite (and (< v_main_~A~0_14 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0) |v_assume_abort_if_not_#in~condInParam_4|) InVars {main_~A~0=v_main_~A~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_4|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {197#true} is VALID [2022-04-07 19:31:59,814 INFO L290 TraceCheckUtils]: 23: Hoare triple {197#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {197#true} is VALID [2022-04-07 19:31:59,814 INFO L290 TraceCheckUtils]: 24: Hoare triple {197#true} [120] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {197#true} is VALID [2022-04-07 19:31:59,814 INFO L290 TraceCheckUtils]: 25: Hoare triple {197#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {197#true} is VALID [2022-04-07 19:31:59,815 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {197#true} {197#true} [156] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (let ((.cse0 (mod v_main_~A~0_14 2))) (ite (and (< v_main_~A~0_14 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0) |v_assume_abort_if_not_#in~condInParam_4|) InVars {main_~A~0=v_main_~A~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_4|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {197#true} is VALID [2022-04-07 19:32:01,816 WARN L290 TraceCheckUtils]: 27: Hoare triple {197#true} [124] L28-->L48-2: Formula: (and (= v_main_~r~0_2 (+ (* v_main_~R~0_5 v_main_~R~0_5) (* (- 1) v_main_~A~0_8))) (= v_main_~v~0_3 1) (= v_main_~u~0_3 (+ (* v_main_~R~0_5 2) 1))) InVars {main_~A~0=v_main_~A~0_8, main_~R~0=v_main_~R~0_5} OutVars{main_~v~0=v_main_~v~0_3, main_~A~0=v_main_~A~0_8, main_~R~0=v_main_~R~0_5, main_~u~0=v_main_~u~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~v~0, main_~u~0, main_~r~0] {283#(and (= (+ (* (- 1) main_~A~0) (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) main_~r~0) (= (mod (+ main_~u~0 1) 2) 0) (= main_~v~0 1))} is UNKNOWN [2022-04-07 19:32:01,817 INFO L290 TraceCheckUtils]: 28: Hoare triple {283#(and (= (+ (* (- 1) main_~A~0) (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) main_~r~0) (= (mod (+ main_~u~0 1) 2) 0) (= main_~v~0 1))} [127] L48-2-->L36: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {283#(and (= (+ (* (- 1) main_~A~0) (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) main_~r~0) (= (mod (+ main_~u~0 1) 2) 0) (= main_~v~0 1))} is VALID [2022-04-07 19:32:03,822 WARN L272 TraceCheckUtils]: 29: Hoare triple {283#(and (= (+ (* (- 1) main_~A~0) (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) main_~r~0) (= (mod (+ main_~u~0 1) 2) 0) (= main_~v~0 1))} [129] L36-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_15 4) (* v_main_~r~0_14 4))) 1 0)) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_15, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {290#(<= 1 |__VERIFIER_assert_#in~cond|)} is UNKNOWN [2022-04-07 19:32:03,823 INFO L290 TraceCheckUtils]: 30: Hoare triple {290#(<= 1 |__VERIFIER_assert_#in~cond|)} [131] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |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_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {294#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 19:32:03,824 INFO L290 TraceCheckUtils]: 31: Hoare triple {294#(<= 1 __VERIFIER_assert_~cond)} [135] L12-->L13: Formula: (= 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[] {198#false} is VALID [2022-04-07 19:32:03,824 INFO L290 TraceCheckUtils]: 32: Hoare triple {198#false} [140] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {198#false} is VALID [2022-04-07 19:32:03,825 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-07 19:32:03,825 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-07 19:32:03,825 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 19:32:03,825 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [577716304] [2022-04-07 19:32:03,825 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 19:32:03,825 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1493807612] [2022-04-07 19:32:03,826 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1493807612] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-07 19:32:03,826 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-07 19:32:03,826 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-07 19:32:03,827 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1163572719] [2022-04-07 19:32:03,827 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-07 19:32:03,827 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 33 [2022-04-07 19:32:03,828 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 19:32:03,828 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-07 19:32:05,083 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 19:32:05,083 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-07 19:32:05,083 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 19:32:05,084 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-07 19:32:05,084 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-07 19:32:05,084 INFO L87 Difference]: Start difference. First operand 32 states and 40 transitions. Second operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-07 19:32:20,678 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-07 19:32:20,715 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 19:32:20,715 INFO L93 Difference]: Finished difference Result 46 states and 59 transitions. [2022-04-07 19:32:20,715 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-07 19:32:20,715 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 33 [2022-04-07 19:32:20,716 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 19:32:20,716 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-07 19:32:20,719 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-04-07 19:32:20,719 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-07 19:32:20,722 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-04-07 19:32:20,722 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 60 transitions. [2022-04-07 19:32:26,714 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-07 19:32:26,716 INFO L225 Difference]: With dead ends: 46 [2022-04-07 19:32:26,716 INFO L226 Difference]: Without dead ends: 46 [2022-04-07 19:32:26,716 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 33 GetRequests, 29 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 5.5s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-07 19:32:26,718 INFO L913 BasicCegarLoop]: 32 mSDtfsCounter, 11 mSDsluCounter, 79 mSDsCounter, 0 mSdLazyCounter, 57 mSolverCounterSat, 2 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 6.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 111 SdHoareTripleChecker+Invalid, 60 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 57 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 6.7s IncrementalHoareTripleChecker+Time [2022-04-07 19:32:26,718 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 111 Invalid, 60 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 57 Invalid, 1 Unknown, 0 Unchecked, 6.7s Time] [2022-04-07 19:32:26,719 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 46 states. [2022-04-07 19:32:26,723 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 46 to 45. [2022-04-07 19:32:26,723 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 19:32:26,723 INFO L82 GeneralOperation]: Start isEquivalent. First operand 46 states. Second operand has 45 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 28 states have internal predecessors, (34), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-07 19:32:26,724 INFO L74 IsIncluded]: Start isIncluded. First operand 46 states. Second operand has 45 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 28 states have internal predecessors, (34), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-07 19:32:26,724 INFO L87 Difference]: Start difference. First operand 46 states. Second operand has 45 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 28 states have internal predecessors, (34), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-07 19:32:26,728 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 19:32:26,728 INFO L93 Difference]: Finished difference Result 46 states and 59 transitions. [2022-04-07 19:32:26,728 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 59 transitions. [2022-04-07 19:32:26,729 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 19:32:26,729 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 19:32:26,729 INFO L74 IsIncluded]: Start isIncluded. First operand has 45 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 28 states have internal predecessors, (34), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 46 states. [2022-04-07 19:32:26,730 INFO L87 Difference]: Start difference. First operand has 45 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 28 states have internal predecessors, (34), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 46 states. [2022-04-07 19:32:26,733 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 19:32:26,734 INFO L93 Difference]: Finished difference Result 46 states and 59 transitions. [2022-04-07 19:32:26,734 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 59 transitions. [2022-04-07 19:32:26,735 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 19:32:26,735 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 19:32:26,735 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 19:32:26,735 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 19:32:26,735 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 45 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 28 states have internal predecessors, (34), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-07 19:32:26,738 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 45 states to 45 states and 58 transitions. [2022-04-07 19:32:26,738 INFO L78 Accepts]: Start accepts. Automaton has 45 states and 58 transitions. Word has length 33 [2022-04-07 19:32:26,739 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 19:32:26,739 INFO L478 AbstractCegarLoop]: Abstraction has 45 states and 58 transitions. [2022-04-07 19:32:26,739 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-07 19:32:26,739 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 58 transitions. [2022-04-07 19:32:26,740 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-07 19:32:26,740 INFO L491 BasicCegarLoop]: Found error trace [2022-04-07 19:32:26,741 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-07 19:32:26,752 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 19:32:26,945 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 19:32:26,946 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-07 19:32:26,946 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-07 19:32:26,946 INFO L85 PathProgramCache]: Analyzing trace with hash -844389750, now seen corresponding path program 1 times [2022-04-07 19:32:26,946 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-07 19:32:26,947 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1257617002] [2022-04-07 19:32:26,947 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 19:32:26,947 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-07 19:32:26,966 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-07 19:32:26,966 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [292820839] [2022-04-07 19:32:26,966 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-07 19:32:26,967 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-07 19:32:26,967 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-07 19:32:26,968 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 19:32:26,972 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 19:32:27,024 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 19:32:27,025 INFO L263 TraceCheckSpWp]: Trace formula consists of 110 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-07 19:32:27,044 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-07 19:32:27,045 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-07 19:32:27,268 INFO L272 TraceCheckUtils]: 0: Hoare triple {485#true} [109] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:27,269 INFO L290 TraceCheckUtils]: 1: Hoare triple {485#true} [111] 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| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#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] {485#true} is VALID [2022-04-07 19:32:27,269 INFO L290 TraceCheckUtils]: 2: Hoare triple {485#true} [114] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:27,269 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {485#true} {485#true} [152] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:27,269 INFO L272 TraceCheckUtils]: 4: Hoare triple {485#true} [110] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:27,270 INFO L290 TraceCheckUtils]: 5: Hoare triple {485#true} [113] mainENTRY-->L23: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (= v_main_~A~0_2 |v_main_#t~nondet4_2|)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~A~0=v_main_~A~0_2, main_~u~0=v_main_~u~0_2, main_~R~0=v_main_~R~0_1, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~A~0, main_~u~0, main_~R~0, main_~r~0] {485#true} is VALID [2022-04-07 19:32:27,270 INFO L272 TraceCheckUtils]: 6: Hoare triple {485#true} [115] L23-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~A~0_12) (<= v_main_~A~0_12 20)) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {485#true} is VALID [2022-04-07 19:32:27,270 INFO L290 TraceCheckUtils]: 7: Hoare triple {485#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {485#true} is VALID [2022-04-07 19:32:27,270 INFO L290 TraceCheckUtils]: 8: Hoare triple {485#true} [120] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:27,270 INFO L290 TraceCheckUtils]: 9: Hoare triple {485#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:27,271 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {485#true} {485#true} [153] assume_abort_if_notEXIT-->L23-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~A~0_12) (<= v_main_~A~0_12 20)) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {485#true} is VALID [2022-04-07 19:32:27,271 INFO L290 TraceCheckUtils]: 11: Hoare triple {485#true} [116] L23-1-->L25: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~R~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~R~0=v_main_~R~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~R~0] {485#true} is VALID [2022-04-07 19:32:27,271 INFO L272 TraceCheckUtils]: 12: Hoare triple {485#true} [118] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~R~0_6 20) (<= 0 v_main_~R~0_6)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {485#true} is VALID [2022-04-07 19:32:27,271 INFO L290 TraceCheckUtils]: 13: Hoare triple {485#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {485#true} is VALID [2022-04-07 19:32:27,271 INFO L290 TraceCheckUtils]: 14: Hoare triple {485#true} [120] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:27,272 INFO L290 TraceCheckUtils]: 15: Hoare triple {485#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:27,272 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {485#true} {485#true} [154] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~R~0_6 20) (<= 0 v_main_~R~0_6)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {485#true} is VALID [2022-04-07 19:32:27,272 INFO L272 TraceCheckUtils]: 17: Hoare triple {485#true} [121] L25-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (< (+ (* v_main_~R~0_7 v_main_~R~0_7) 1) (+ (* v_main_~R~0_7 2) v_main_~A~0_13)) 1 0)) InVars {main_~A~0=v_main_~A~0_13, main_~R~0=v_main_~R~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {485#true} is VALID [2022-04-07 19:32:27,272 INFO L290 TraceCheckUtils]: 18: Hoare triple {485#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {485#true} is VALID [2022-04-07 19:32:27,272 INFO L290 TraceCheckUtils]: 19: Hoare triple {485#true} [120] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:27,273 INFO L290 TraceCheckUtils]: 20: Hoare triple {485#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:27,273 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {485#true} {485#true} [155] assume_abort_if_notEXIT-->L26: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (< (+ (* v_main_~R~0_7 v_main_~R~0_7) 1) (+ (* v_main_~R~0_7 2) v_main_~A~0_13)) 1 0)) InVars {main_~A~0=v_main_~A~0_13, main_~R~0=v_main_~R~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {485#true} is VALID [2022-04-07 19:32:27,273 INFO L272 TraceCheckUtils]: 22: Hoare triple {485#true} [123] L26-->assume_abort_if_notENTRY: Formula: (= (ite (= (let ((.cse0 (mod v_main_~A~0_14 2))) (ite (and (< v_main_~A~0_14 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0) |v_assume_abort_if_not_#in~condInParam_4|) InVars {main_~A~0=v_main_~A~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_4|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {485#true} is VALID [2022-04-07 19:32:27,273 INFO L290 TraceCheckUtils]: 23: Hoare triple {485#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {485#true} is VALID [2022-04-07 19:32:27,273 INFO L290 TraceCheckUtils]: 24: Hoare triple {485#true} [120] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:27,274 INFO L290 TraceCheckUtils]: 25: Hoare triple {485#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:27,274 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {485#true} {485#true} [156] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (let ((.cse0 (mod v_main_~A~0_14 2))) (ite (and (< v_main_~A~0_14 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0) |v_assume_abort_if_not_#in~condInParam_4|) InVars {main_~A~0=v_main_~A~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_4|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {485#true} is VALID [2022-04-07 19:32:27,274 INFO L290 TraceCheckUtils]: 27: Hoare triple {485#true} [124] L28-->L48-2: Formula: (and (= v_main_~r~0_2 (+ (* v_main_~R~0_5 v_main_~R~0_5) (* (- 1) v_main_~A~0_8))) (= v_main_~v~0_3 1) (= v_main_~u~0_3 (+ (* v_main_~R~0_5 2) 1))) InVars {main_~A~0=v_main_~A~0_8, main_~R~0=v_main_~R~0_5} OutVars{main_~v~0=v_main_~v~0_3, main_~A~0=v_main_~A~0_8, main_~R~0=v_main_~R~0_5, main_~u~0=v_main_~u~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~v~0, main_~u~0, main_~r~0] {485#true} is VALID [2022-04-07 19:32:27,274 INFO L290 TraceCheckUtils]: 28: Hoare triple {485#true} [127] L48-2-->L36: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:27,274 INFO L272 TraceCheckUtils]: 29: Hoare triple {485#true} [129] L36-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_15 4) (* v_main_~r~0_14 4))) 1 0)) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_15, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {485#true} is VALID [2022-04-07 19:32:27,275 INFO L290 TraceCheckUtils]: 30: Hoare triple {485#true} [131] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |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_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {580#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-07 19:32:27,275 INFO L290 TraceCheckUtils]: 31: Hoare triple {580#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [136] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {584#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 19:32:27,276 INFO L290 TraceCheckUtils]: 32: Hoare triple {584#(not (= |__VERIFIER_assert_#in~cond| 0))} [142] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {584#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 19:32:27,277 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {584#(not (= |__VERIFIER_assert_#in~cond| 0))} {485#true} [158] __VERIFIER_assertEXIT-->L36-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_15 4) (* v_main_~r~0_14 4))) 1 0)) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_15, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {591#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4) (* main_~r~0 4)))} is VALID [2022-04-07 19:32:27,278 INFO L290 TraceCheckUtils]: 34: Hoare triple {591#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4) (* main_~r~0 4)))} [132] L36-1-->L35-2: Formula: (= v_main_~r~0_4 0) InVars {main_~r~0=v_main_~r~0_4} OutVars{main_~r~0=v_main_~r~0_4} AuxVars[] AssignedVars[] {595#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4)))} is VALID [2022-04-07 19:32:27,279 INFO L272 TraceCheckUtils]: 35: Hoare triple {595#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4)))} [128] L35-2-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~u~0_12 (- 2)) (* v_main_~v~0_12 2) (* v_main_~u~0_12 v_main_~u~0_12) (* (- 1) (* v_main_~v~0_12 v_main_~v~0_12))) (* v_main_~A~0_18 4)) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~v~0=v_main_~v~0_12, main_~A~0=v_main_~A~0_18, main_~u~0=v_main_~u~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0] {599#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 19:32:27,279 INFO L290 TraceCheckUtils]: 36: Hoare triple {599#(<= 1 |__VERIFIER_assert_#in~cond|)} [131] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |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_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {603#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 19:32:27,280 INFO L290 TraceCheckUtils]: 37: Hoare triple {603#(<= 1 __VERIFIER_assert_~cond)} [135] L12-->L13: Formula: (= 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[] {486#false} is VALID [2022-04-07 19:32:27,280 INFO L290 TraceCheckUtils]: 38: Hoare triple {486#false} [140] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {486#false} is VALID [2022-04-07 19:32:27,280 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-07 19:32:27,280 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-07 19:32:27,807 INFO L290 TraceCheckUtils]: 38: Hoare triple {486#false} [140] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {486#false} is VALID [2022-04-07 19:32:27,810 INFO L290 TraceCheckUtils]: 37: Hoare triple {603#(<= 1 __VERIFIER_assert_~cond)} [135] L12-->L13: Formula: (= 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[] {486#false} is VALID [2022-04-07 19:32:27,811 INFO L290 TraceCheckUtils]: 36: Hoare triple {599#(<= 1 |__VERIFIER_assert_#in~cond|)} [131] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |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_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {603#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-07 19:32:27,812 INFO L272 TraceCheckUtils]: 35: Hoare triple {595#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4)))} [128] L35-2-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~u~0_12 (- 2)) (* v_main_~v~0_12 2) (* v_main_~u~0_12 v_main_~u~0_12) (* (- 1) (* v_main_~v~0_12 v_main_~v~0_12))) (* v_main_~A~0_18 4)) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~v~0=v_main_~v~0_12, main_~A~0=v_main_~A~0_18, main_~u~0=v_main_~u~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0] {599#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-07 19:32:27,813 INFO L290 TraceCheckUtils]: 34: Hoare triple {622#(or (not (= main_~r~0 0)) (= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4))))} [132] L36-1-->L35-2: Formula: (= v_main_~r~0_4 0) InVars {main_~r~0=v_main_~r~0_4} OutVars{main_~r~0=v_main_~r~0_4} AuxVars[] AssignedVars[] {595#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4)))} is VALID [2022-04-07 19:32:27,814 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {584#(not (= |__VERIFIER_assert_#in~cond| 0))} {485#true} [158] __VERIFIER_assertEXIT-->L36-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_15 4) (* v_main_~r~0_14 4))) 1 0)) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_15, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {622#(or (not (= main_~r~0 0)) (= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4))))} is VALID [2022-04-07 19:32:27,814 INFO L290 TraceCheckUtils]: 32: Hoare triple {584#(not (= |__VERIFIER_assert_#in~cond| 0))} [142] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {584#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 19:32:27,815 INFO L290 TraceCheckUtils]: 31: Hoare triple {635#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [136] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {584#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-07 19:32:27,816 INFO L290 TraceCheckUtils]: 30: Hoare triple {485#true} [131] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |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_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {635#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-07 19:32:27,816 INFO L272 TraceCheckUtils]: 29: Hoare triple {485#true} [129] L36-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_15 4) (* v_main_~r~0_14 4))) 1 0)) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_15, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {485#true} is VALID [2022-04-07 19:32:27,816 INFO L290 TraceCheckUtils]: 28: Hoare triple {485#true} [127] L48-2-->L36: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:27,816 INFO L290 TraceCheckUtils]: 27: Hoare triple {485#true} [124] L28-->L48-2: Formula: (and (= v_main_~r~0_2 (+ (* v_main_~R~0_5 v_main_~R~0_5) (* (- 1) v_main_~A~0_8))) (= v_main_~v~0_3 1) (= v_main_~u~0_3 (+ (* v_main_~R~0_5 2) 1))) InVars {main_~A~0=v_main_~A~0_8, main_~R~0=v_main_~R~0_5} OutVars{main_~v~0=v_main_~v~0_3, main_~A~0=v_main_~A~0_8, main_~R~0=v_main_~R~0_5, main_~u~0=v_main_~u~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~v~0, main_~u~0, main_~r~0] {485#true} is VALID [2022-04-07 19:32:27,816 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {485#true} {485#true} [156] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (let ((.cse0 (mod v_main_~A~0_14 2))) (ite (and (< v_main_~A~0_14 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0) |v_assume_abort_if_not_#in~condInParam_4|) InVars {main_~A~0=v_main_~A~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_4|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {485#true} is VALID [2022-04-07 19:32:27,817 INFO L290 TraceCheckUtils]: 25: Hoare triple {485#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:27,817 INFO L290 TraceCheckUtils]: 24: Hoare triple {485#true} [120] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:27,817 INFO L290 TraceCheckUtils]: 23: Hoare triple {485#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {485#true} is VALID [2022-04-07 19:32:27,817 INFO L272 TraceCheckUtils]: 22: Hoare triple {485#true} [123] L26-->assume_abort_if_notENTRY: Formula: (= (ite (= (let ((.cse0 (mod v_main_~A~0_14 2))) (ite (and (< v_main_~A~0_14 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0) |v_assume_abort_if_not_#in~condInParam_4|) InVars {main_~A~0=v_main_~A~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_4|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {485#true} is VALID [2022-04-07 19:32:27,818 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {485#true} {485#true} [155] assume_abort_if_notEXIT-->L26: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (< (+ (* v_main_~R~0_7 v_main_~R~0_7) 1) (+ (* v_main_~R~0_7 2) v_main_~A~0_13)) 1 0)) InVars {main_~A~0=v_main_~A~0_13, main_~R~0=v_main_~R~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {485#true} is VALID [2022-04-07 19:32:27,818 INFO L290 TraceCheckUtils]: 20: Hoare triple {485#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:27,818 INFO L290 TraceCheckUtils]: 19: Hoare triple {485#true} [120] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:27,818 INFO L290 TraceCheckUtils]: 18: Hoare triple {485#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {485#true} is VALID [2022-04-07 19:32:27,818 INFO L272 TraceCheckUtils]: 17: Hoare triple {485#true} [121] L25-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (< (+ (* v_main_~R~0_7 v_main_~R~0_7) 1) (+ (* v_main_~R~0_7 2) v_main_~A~0_13)) 1 0)) InVars {main_~A~0=v_main_~A~0_13, main_~R~0=v_main_~R~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {485#true} is VALID [2022-04-07 19:32:27,819 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {485#true} {485#true} [154] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~R~0_6 20) (<= 0 v_main_~R~0_6)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {485#true} is VALID [2022-04-07 19:32:27,819 INFO L290 TraceCheckUtils]: 15: Hoare triple {485#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:27,819 INFO L290 TraceCheckUtils]: 14: Hoare triple {485#true} [120] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:27,819 INFO L290 TraceCheckUtils]: 13: Hoare triple {485#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {485#true} is VALID [2022-04-07 19:32:27,819 INFO L272 TraceCheckUtils]: 12: Hoare triple {485#true} [118] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= v_main_~R~0_6 20) (<= 0 v_main_~R~0_6)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {485#true} is VALID [2022-04-07 19:32:27,820 INFO L290 TraceCheckUtils]: 11: Hoare triple {485#true} [116] L23-1-->L25: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~R~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~R~0=v_main_~R~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~R~0] {485#true} is VALID [2022-04-07 19:32:27,820 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {485#true} {485#true} [153] assume_abort_if_notEXIT-->L23-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~A~0_12) (<= v_main_~A~0_12 20)) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {485#true} is VALID [2022-04-07 19:32:27,820 INFO L290 TraceCheckUtils]: 9: Hoare triple {485#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:27,820 INFO L290 TraceCheckUtils]: 8: Hoare triple {485#true} [120] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:27,820 INFO L290 TraceCheckUtils]: 7: Hoare triple {485#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {485#true} is VALID [2022-04-07 19:32:27,821 INFO L272 TraceCheckUtils]: 6: Hoare triple {485#true} [115] L23-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (and (<= 0 v_main_~A~0_12) (<= v_main_~A~0_12 20)) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {485#true} is VALID [2022-04-07 19:32:27,821 INFO L290 TraceCheckUtils]: 5: Hoare triple {485#true} [113] mainENTRY-->L23: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (= v_main_~A~0_2 |v_main_#t~nondet4_2|)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~A~0=v_main_~A~0_2, main_~u~0=v_main_~u~0_2, main_~R~0=v_main_~R~0_1, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~A~0, main_~u~0, main_~R~0, main_~r~0] {485#true} is VALID [2022-04-07 19:32:27,821 INFO L272 TraceCheckUtils]: 4: Hoare triple {485#true} [110] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:27,821 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {485#true} {485#true} [152] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:27,821 INFO L290 TraceCheckUtils]: 2: Hoare triple {485#true} [114] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:27,822 INFO L290 TraceCheckUtils]: 1: Hoare triple {485#true} [111] 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| 3) 12) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{#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] {485#true} is VALID [2022-04-07 19:32:27,822 INFO L272 TraceCheckUtils]: 0: Hoare triple {485#true} [109] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-07 19:32:27,822 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-07 19:32:27,823 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-07 19:32:27,823 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1257617002] [2022-04-07 19:32:27,823 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-07 19:32:27,823 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [292820839] [2022-04-07 19:32:27,823 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [292820839] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-07 19:32:27,823 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-07 19:32:27,824 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-07 19:32:27,824 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [8948845] [2022-04-07 19:32:27,824 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-07 19:32:27,825 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.111111111111111) internal successors, (19), 7 states have internal predecessors, (19), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) Word has length 39 [2022-04-07 19:32:27,825 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-07 19:32:27,825 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.111111111111111) internal successors, (19), 7 states have internal predecessors, (19), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-07 19:32:27,861 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 19:32:27,861 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-07 19:32:27,862 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-07 19:32:27,862 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-07 19:32:27,862 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=67, Unknown=0, NotChecked=0, Total=90 [2022-04-07 19:32:27,863 INFO L87 Difference]: Start difference. First operand 45 states and 58 transitions. Second operand has 10 states, 9 states have (on average 2.111111111111111) internal successors, (19), 7 states have internal predecessors, (19), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-07 19:32:28,277 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 19:32:28,277 INFO L93 Difference]: Finished difference Result 43 states and 56 transitions. [2022-04-07 19:32:28,277 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-07 19:32:28,278 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.111111111111111) internal successors, (19), 7 states have internal predecessors, (19), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) Word has length 39 [2022-04-07 19:32:28,278 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-07 19:32:28,278 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.111111111111111) internal successors, (19), 7 states have internal predecessors, (19), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-07 19:32:28,280 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 39 transitions. [2022-04-07 19:32:28,281 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.111111111111111) internal successors, (19), 7 states have internal predecessors, (19), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-07 19:32:28,282 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 39 transitions. [2022-04-07 19:32:28,282 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 39 transitions. [2022-04-07 19:32:28,333 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 19:32:28,333 INFO L225 Difference]: With dead ends: 43 [2022-04-07 19:32:28,333 INFO L226 Difference]: Without dead ends: 0 [2022-04-07 19:32:28,333 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 79 GetRequests, 68 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=35, Invalid=97, Unknown=0, NotChecked=0, Total=132 [2022-04-07 19:32:28,334 INFO L913 BasicCegarLoop]: 27 mSDtfsCounter, 21 mSDsluCounter, 106 mSDsCounter, 0 mSdLazyCounter, 74 mSolverCounterSat, 12 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 23 SdHoareTripleChecker+Valid, 133 SdHoareTripleChecker+Invalid, 86 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 12 IncrementalHoareTripleChecker+Valid, 74 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-07 19:32:28,335 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [23 Valid, 133 Invalid, 86 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [12 Valid, 74 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-07 19:32:28,335 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-07 19:32:28,335 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-07 19:32:28,336 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-07 19:32:28,336 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 19:32:28,336 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 19:32:28,336 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 19:32:28,336 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 19:32:28,336 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-07 19:32:28,336 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 19:32:28,336 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 19:32:28,336 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 19:32:28,337 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 19:32:28,337 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 19:32:28,337 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-07 19:32:28,337 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-07 19:32:28,337 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 19:32:28,337 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 19:32:28,337 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-07 19:32:28,337 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-07 19:32:28,337 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-07 19:32:28,337 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 19:32:28,338 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-07 19:32:28,338 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 39 [2022-04-07 19:32:28,338 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-07 19:32:28,338 INFO L478 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-07 19:32:28,338 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.111111111111111) internal successors, (19), 7 states have internal predecessors, (19), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-07 19:32:28,338 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-07 19:32:28,338 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-07 19:32:28,341 INFO L788 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-07 19:32:28,362 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 19:32:28,541 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 19:32:28,544 INFO L719 BasicCegarLoop]: Path program histogram: [1, 1, 1] [2022-04-07 19:32:28,546 INFO L178 ceAbstractionStarter]: Computing trace abstraction results [2022-04-07 19:32:28,548 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 07.04 07:32:28 BasicIcfg [2022-04-07 19:32:28,548 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-07 19:32:28,549 INFO L158 Benchmark]: Toolchain (without parser) took 39981.61ms. Allocated memory was 181.4MB in the beginning and 218.1MB in the end (delta: 36.7MB). Free memory was 133.5MB in the beginning and 132.6MB in the end (delta: 925.2kB). Peak memory consumption was 38.4MB. Max. memory is 8.0GB. [2022-04-07 19:32:28,549 INFO L158 Benchmark]: CDTParser took 0.12ms. Allocated memory is still 181.4MB. Free memory is still 150.4MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-07 19:32:28,550 INFO L158 Benchmark]: CACSL2BoogieTranslator took 286.45ms. Allocated memory is still 181.4MB. Free memory was 133.4MB in the beginning and 159.6MB in the end (delta: -26.2MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-07 19:32:28,550 INFO L158 Benchmark]: Boogie Preprocessor took 22.18ms. Allocated memory is still 181.4MB. Free memory was 159.6MB in the beginning and 158.2MB in the end (delta: 1.4MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-07 19:32:28,550 INFO L158 Benchmark]: RCFGBuilder took 275.50ms. Allocated memory is still 181.4MB. Free memory was 158.2MB in the beginning and 146.0MB in the end (delta: 12.2MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-07 19:32:28,551 INFO L158 Benchmark]: IcfgTransformer took 34.69ms. Allocated memory is still 181.4MB. Free memory was 146.0MB in the beginning and 144.2MB in the end (delta: 1.8MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-07 19:32:28,551 INFO L158 Benchmark]: TraceAbstraction took 39358.21ms. Allocated memory was 181.4MB in the beginning and 218.1MB in the end (delta: 36.7MB). Free memory was 143.5MB in the beginning and 133.1MB in the end (delta: 10.4MB). Peak memory consumption was 48.2MB. Max. memory is 8.0GB. [2022-04-07 19:32:28,553 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 181.4MB. Free memory is still 150.4MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 286.45ms. Allocated memory is still 181.4MB. Free memory was 133.4MB in the beginning and 159.6MB in the end (delta: -26.2MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * Boogie Preprocessor took 22.18ms. Allocated memory is still 181.4MB. Free memory was 159.6MB in the beginning and 158.2MB in the end (delta: 1.4MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 275.50ms. Allocated memory is still 181.4MB. Free memory was 158.2MB in the beginning and 146.0MB in the end (delta: 12.2MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * IcfgTransformer took 34.69ms. Allocated memory is still 181.4MB. Free memory was 146.0MB in the beginning and 144.2MB in the end (delta: 1.8MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * TraceAbstraction took 39358.21ms. Allocated memory was 181.4MB in the beginning and 218.1MB in the end (delta: 36.7MB). Free memory was 143.5MB in the beginning and 133.1MB in the end (delta: 10.4MB). Peak memory consumption was 48.2MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - PositiveResult [Line: 14]: call to reach_error is unreachable For all program executions holds that call to reach_error is unreachable at this location - StatisticsResult: Ultimate Automizer benchmark data CFG has 5 procedures, 37 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 39.3s, OverallIterations: 3, TraceHistogramMax: 4, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 22.3s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 1 mSolverCounterUnknown, 67 SdHoareTripleChecker+Valid, 6.9s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 54 mSDsluCounter, 284 SdHoareTripleChecker+Invalid, 6.9s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 188 mSDsCounter, 23 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 141 IncrementalHoareTripleChecker+Invalid, 165 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 23 mSolverCounterUnsat, 96 mSDtfsCounter, 141 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 128 GetRequests, 112 SyntacticMatches, 1 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 5.6s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=45occurred in iteration=2, InterpolantAutomatonStates: 14, 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, 3 MinimizatonAttempts, 1 StatesRemovedByMinimization, 1 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 14.8s InterpolantComputationTime, 105 NumberOfCodeBlocks, 105 NumberOfCodeBlocksAsserted, 3 NumberOfCheckSat, 140 ConstructedInterpolants, 0 QuantifiedInterpolants, 317 SizeOfPredicates, 9 NumberOfNonLiveVariables, 209 ConjunctsInSsa, 23 ConjunctsInUnsatCore, 4 InterpolantComputations, 2 PerfectInterpolantSequences, 98/100 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 19:32:28,571 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...