/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/loopacceleration/qvasr/qvasr_64.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/fermat1-ll_valuebound1.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-08 01:03:41,073 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-08 01:03:41,099 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-08 01:03:41,120 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-08 01:03:41,120 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-08 01:03:41,121 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-08 01:03:41,121 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-08 01:03:41,123 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-08 01:03:41,124 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-08 01:03:41,124 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-08 01:03:41,125 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-08 01:03:41,126 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-08 01:03:41,126 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-08 01:03:41,127 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-08 01:03:41,127 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-08 01:03:41,128 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-08 01:03:41,128 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-08 01:03:41,129 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-08 01:03:41,130 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-08 01:03:41,132 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-08 01:03:41,133 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-08 01:03:41,133 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-08 01:03:41,134 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-08 01:03:41,135 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-08 01:03:41,135 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-08 01:03:41,137 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-08 01:03:41,137 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-08 01:03:41,137 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-08 01:03:41,138 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-08 01:03:41,138 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-08 01:03:41,139 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-08 01:03:41,139 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-08 01:03:41,139 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-08 01:03:41,140 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-08 01:03:41,140 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-08 01:03:41,141 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-08 01:03:41,141 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-08 01:03:41,141 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-08 01:03:41,142 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-08 01:03:41,142 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-08 01:03:41,142 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-08 01:03:41,143 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-08 01:03:41,143 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/loopacceleration/qvasr/qvasr_64.epf [2022-04-08 01:03:41,157 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-08 01:03:41,157 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-08 01:03:41,158 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-08 01:03:41,158 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-08 01:03:41,158 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-08 01:03:41,158 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-08 01:03:41,159 INFO L138 SettingsManager]: * Use SBE=true [2022-04-08 01:03:41,159 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-08 01:03:41,159 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-08 01:03:41,159 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-08 01:03:41,159 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-08 01:03:41,159 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-08 01:03:41,159 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-08 01:03:41,159 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-08 01:03:41,160 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-08 01:03:41,160 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-08 01:03:41,160 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-08 01:03:41,160 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-08 01:03:41,160 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-08 01:03:41,160 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 01:03:41,160 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-08 01:03:41,160 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-08 01:03:41,161 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-08 01:03:41,161 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-08 01:03:41,161 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-08 01:03:41,161 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-08 01:03:41,161 INFO L138 SettingsManager]: * Trace refinement exception blacklist=NONE [2022-04-08 01:03:41,161 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-04-08 01:03:41,162 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-08 01:03:41,162 INFO L138 SettingsManager]: * TransformationType=LOOP_ACCELERATION_QVASR 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-08 01:03:41,311 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-08 01:03:41,326 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-08 01:03:41,328 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-08 01:03:41,329 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-08 01:03:41,330 INFO L275 PluginConnector]: CDTParser initialized [2022-04-08 01:03:41,330 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/fermat1-ll_valuebound1.c [2022-04-08 01:03:41,378 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c92e4e9d2/8528abf597b74c9793cdd65f4b7370ca/FLAGa922ae28e [2022-04-08 01:03:41,734 INFO L306 CDTParser]: Found 1 translation units. [2022-04-08 01:03:41,735 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/fermat1-ll_valuebound1.c [2022-04-08 01:03:41,739 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c92e4e9d2/8528abf597b74c9793cdd65f4b7370ca/FLAGa922ae28e [2022-04-08 01:03:41,748 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c92e4e9d2/8528abf597b74c9793cdd65f4b7370ca [2022-04-08 01:03:41,749 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-08 01:03:41,750 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-08 01:03:41,751 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-08 01:03:41,751 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-08 01:03:41,753 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-08 01:03:41,754 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 01:03:41" (1/1) ... [2022-04-08 01:03:41,754 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@9684a7e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 01:03:41, skipping insertion in model container [2022-04-08 01:03:41,754 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 01:03:41" (1/1) ... [2022-04-08 01:03:41,759 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-08 01:03:41,766 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-08 01:03:41,867 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_valuebound1.c[535,548] [2022-04-08 01:03:41,899 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 01:03:41,909 INFO L203 MainTranslator]: Completed pre-run [2022-04-08 01:03:41,917 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_valuebound1.c[535,548] [2022-04-08 01:03:41,924 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 01:03:41,933 INFO L208 MainTranslator]: Completed translation [2022-04-08 01:03:41,934 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 01:03:41 WrapperNode [2022-04-08 01:03:41,934 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-08 01:03:41,934 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-08 01:03:41,935 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-08 01:03:41,935 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-08 01:03:41,941 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 01:03:41" (1/1) ... [2022-04-08 01:03:41,941 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 01:03:41" (1/1) ... [2022-04-08 01:03:41,944 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 01:03:41" (1/1) ... [2022-04-08 01:03:41,945 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 01:03:41" (1/1) ... [2022-04-08 01:03:41,948 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 01:03:41" (1/1) ... [2022-04-08 01:03:41,951 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 01:03:41" (1/1) ... [2022-04-08 01:03:41,952 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 01:03:41" (1/1) ... [2022-04-08 01:03:41,953 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-08 01:03:41,953 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-08 01:03:41,954 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-08 01:03:41,954 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-08 01:03:41,954 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 01:03:41" (1/1) ... [2022-04-08 01:03:41,959 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 01:03:41,968 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 01:03:41,978 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-08 01:03:41,996 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-08 01:03:42,014 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-08 01:03:42,015 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-08 01:03:42,015 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-08 01:03:42,015 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-08 01:03:42,015 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-08 01:03:42,015 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-08 01:03:42,015 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-08 01:03:42,015 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-08 01:03:42,015 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-08 01:03:42,015 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-08 01:03:42,015 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-08 01:03:42,016 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-08 01:03:42,016 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-08 01:03:42,016 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-08 01:03:42,016 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-08 01:03:42,016 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-08 01:03:42,016 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-08 01:03:42,016 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-08 01:03:42,016 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-08 01:03:42,016 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-08 01:03:42,061 INFO L234 CfgBuilder]: Building ICFG [2022-04-08 01:03:42,062 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-08 01:03:42,221 INFO L275 CfgBuilder]: Performing block encoding [2022-04-08 01:03:42,226 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-08 01:03:42,226 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-04-08 01:03:42,228 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 01:03:42 BoogieIcfgContainer [2022-04-08 01:03:42,228 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-08 01:03:42,228 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-08 01:03:42,228 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-08 01:03:42,229 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-08 01:03:42,233 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 01:03:42" (1/1) ... [2022-04-08 01:03:42,234 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_QVASR [2022-04-08 01:03:42,256 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 08.04 01:03:42 BasicIcfg [2022-04-08 01:03:42,256 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-08 01:03:42,257 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-08 01:03:42,257 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-08 01:03:42,259 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-08 01:03:42,259 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.04 01:03:41" (1/4) ... [2022-04-08 01:03:42,259 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@2490e2c3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 01:03:42, skipping insertion in model container [2022-04-08 01:03:42,259 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 01:03:41" (2/4) ... [2022-04-08 01:03:42,260 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@2490e2c3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 01:03:42, skipping insertion in model container [2022-04-08 01:03:42,260 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 01:03:42" (3/4) ... [2022-04-08 01:03:42,260 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@2490e2c3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 08.04 01:03:42, skipping insertion in model container [2022-04-08 01:03:42,260 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 08.04 01:03:42" (4/4) ... [2022-04-08 01:03:42,261 INFO L111 eAbstractionObserver]: Analyzing ICFG fermat1-ll_valuebound1.cqvasr [2022-04-08 01:03:42,264 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-08 01:03:42,264 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-08 01:03:42,290 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-08 01:03:42,294 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, 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-08 01:03:42,295 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-08 01:03:42,308 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-08 01:03:42,311 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-08 01:03:42,311 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 01:03:42,312 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-08 01:03:42,312 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 01:03:42,315 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 01:03:42,315 INFO L85 PathProgramCache]: Analyzing trace with hash 1042421720, now seen corresponding path program 1 times [2022-04-08 01:03:42,321 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 01:03:42,321 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [246058907] [2022-04-08 01:03:42,322 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 01:03:42,322 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 01:03:42,385 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 01:03:42,422 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 01:03:42,434 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 01:03:42,453 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-08 01:03:42,453 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-08 01:03:42,454 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-08 01:03:42,455 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-08 01:03:42,458 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 01:03:42,473 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-08 01:03:42,474 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} [119] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-08 01:03:42,474 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-08 01:03:42,474 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 1)) 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-08 01:03:42,474 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-08 01:03:42,476 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 01:03:42,486 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-08 01:03:42,487 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} [119] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-08 01:03:42,487 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-08 01:03:42,488 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 (<= 0 v_main_~R~0_6) (<= v_main_~R~0_6 1)) 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-08 01:03:42,488 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-08 01:03:42,489 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 01:03:42,494 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-08 01:03:42,495 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} [119] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-08 01:03:42,495 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-08 01:03:42,495 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-08 01:03:42,495 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-08 01:03:42,505 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 01:03:42,512 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-08 01:03:42,513 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} [119] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-08 01:03:42,513 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-08 01:03:42,513 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-08 01:03:42,514 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-08 01:03:42,514 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-08 01:03:42,515 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-08 01:03:42,515 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-08 01:03:42,515 INFO L272 TraceCheckUtils]: 4: Hoare triple {40#true} [110] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {40#true} is VALID [2022-04-08 01:03:42,515 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-08 01:03:42,515 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 1)) 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-08 01:03:42,516 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-08 01:03:42,517 INFO L290 TraceCheckUtils]: 8: Hoare triple {40#true} [119] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-08 01:03:42,517 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-08 01:03:42,517 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 1)) 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-08 01:03:42,517 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-08 01:03:42,517 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 (<= 0 v_main_~R~0_6) (<= v_main_~R~0_6 1)) 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-08 01:03:42,518 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-08 01:03:42,519 INFO L290 TraceCheckUtils]: 14: Hoare triple {40#true} [119] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-08 01:03:42,519 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-08 01:03:42,520 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 (<= 0 v_main_~R~0_6) (<= v_main_~R~0_6 1)) 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-08 01:03:42,520 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-08 01:03:42,520 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-08 01:03:42,521 INFO L290 TraceCheckUtils]: 19: Hoare triple {40#true} [119] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-08 01:03:42,521 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-08 01:03:42,521 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-08 01:03:42,521 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-08 01:03:42,521 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-08 01:03:42,523 INFO L290 TraceCheckUtils]: 24: Hoare triple {40#true} [119] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-08 01:03:42,523 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-08 01:03:42,523 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-08 01:03:42,523 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-08 01:03:42,523 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-08 01:03:42,524 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-08 01:03:42,524 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-08 01:03:42,524 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-08 01:03:42,524 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-08 01:03:42,525 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-08 01:03:42,525 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 01:03:42,525 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [246058907] [2022-04-08 01:03:42,526 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [246058907] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 01:03:42,526 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 01:03:42,526 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 01:03:42,527 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1904372073] [2022-04-08 01:03:42,527 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 01:03:42,531 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-08 01:03:42,532 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 01:03:42,533 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-08 01:03:42,567 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-08 01:03:42,571 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-08 01:03:42,572 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 01:03:42,589 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-08 01:03:42,590 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-08 01:03:42,593 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-08 01:03:42,729 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 01:03:42,729 INFO L93 Difference]: Finished difference Result 67 states and 106 transitions. [2022-04-08 01:03:42,729 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-08 01:03:42,730 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-08 01:03:42,730 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 01:03:42,731 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-08 01:03:42,739 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 106 transitions. [2022-04-08 01:03:42,740 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-08 01:03:42,747 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 106 transitions. [2022-04-08 01:03:42,747 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 106 transitions. [2022-04-08 01:03:42,856 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 106 edges. 106 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 01:03:42,862 INFO L225 Difference]: With dead ends: 67 [2022-04-08 01:03:42,862 INFO L226 Difference]: Without dead ends: 32 [2022-04-08 01:03:42,864 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-08 01:03:42,866 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-08 01:03:42,866 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-08 01:03:42,876 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2022-04-08 01:03:42,884 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 32. [2022-04-08 01:03:42,884 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 01:03:42,885 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-08 01:03:42,885 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-08 01:03:42,886 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-08 01:03:42,889 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 01:03:42,889 INFO L93 Difference]: Finished difference Result 32 states and 40 transitions. [2022-04-08 01:03:42,889 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 40 transitions. [2022-04-08 01:03:42,889 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 01:03:42,889 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 01:03:42,890 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-08 01:03:42,890 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-08 01:03:42,892 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 01:03:42,893 INFO L93 Difference]: Finished difference Result 32 states and 40 transitions. [2022-04-08 01:03:42,893 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 40 transitions. [2022-04-08 01:03:42,893 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 01:03:42,893 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 01:03:42,893 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 01:03:42,893 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 01:03:42,894 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-08 01:03:42,895 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 40 transitions. [2022-04-08 01:03:42,896 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 40 transitions. Word has length 33 [2022-04-08 01:03:42,896 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 01:03:42,896 INFO L478 AbstractCegarLoop]: Abstraction has 32 states and 40 transitions. [2022-04-08 01:03:42,897 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-08 01:03:42,897 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 40 transitions. [2022-04-08 01:03:42,898 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-08 01:03:42,898 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 01:03:42,898 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-08 01:03:42,898 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-08 01:03:42,898 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 01:03:42,899 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 01:03:42,899 INFO L85 PathProgramCache]: Analyzing trace with hash 104571547, now seen corresponding path program 1 times [2022-04-08 01:03:42,899 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 01:03:42,899 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1269496683] [2022-04-08 01:03:42,899 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 01:03:42,899 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 01:03:42,917 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 01:03:42,917 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1603733113] [2022-04-08 01:03:42,917 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 01:03:42,917 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 01:03:42,917 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 01:03:42,919 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-08 01:03:42,919 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-08 01:03:42,985 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 01:03:42,996 INFO L263 TraceCheckSpWp]: Trace formula consists of 99 conjuncts, 24 conjunts are in the unsatisfiable core [2022-04-08 01:03:43,008 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 01:03:43,011 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 01:03:49,540 INFO L272 TraceCheckUtils]: 0: Hoare triple {270#true} [109] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {270#true} is VALID [2022-04-08 01:03:49,540 INFO L290 TraceCheckUtils]: 1: Hoare triple {270#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] {270#true} is VALID [2022-04-08 01:03:49,540 INFO L290 TraceCheckUtils]: 2: Hoare triple {270#true} [114] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {270#true} is VALID [2022-04-08 01:03:49,540 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {270#true} {270#true} [152] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {270#true} is VALID [2022-04-08 01:03:49,540 INFO L272 TraceCheckUtils]: 4: Hoare triple {270#true} [110] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {270#true} is VALID [2022-04-08 01:03:49,541 INFO L290 TraceCheckUtils]: 5: Hoare triple {270#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] {270#true} is VALID [2022-04-08 01:03:49,541 INFO L272 TraceCheckUtils]: 6: Hoare triple {270#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 1)) 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] {270#true} is VALID [2022-04-08 01:03:49,541 INFO L290 TraceCheckUtils]: 7: Hoare triple {270#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] {296#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 01:03:49,542 INFO L290 TraceCheckUtils]: 8: Hoare triple {296#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [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[] {300#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 01:03:49,542 INFO L290 TraceCheckUtils]: 9: Hoare triple {300#(not (= |assume_abort_if_not_#in~cond| 0))} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {300#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 01:03:49,542 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {300#(not (= |assume_abort_if_not_#in~cond| 0))} {270#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 1)) 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] {307#(and (<= 0 main_~A~0) (<= main_~A~0 1))} is VALID [2022-04-08 01:03:49,543 INFO L290 TraceCheckUtils]: 11: Hoare triple {307#(and (<= 0 main_~A~0) (<= main_~A~0 1))} [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] {307#(and (<= 0 main_~A~0) (<= main_~A~0 1))} is VALID [2022-04-08 01:03:49,543 INFO L272 TraceCheckUtils]: 12: Hoare triple {307#(and (<= 0 main_~A~0) (<= main_~A~0 1))} [118] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~R~0_6) (<= v_main_~R~0_6 1)) 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] {270#true} is VALID [2022-04-08 01:03:49,543 INFO L290 TraceCheckUtils]: 13: Hoare triple {270#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] {296#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 01:03:49,544 INFO L290 TraceCheckUtils]: 14: Hoare triple {296#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [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[] {300#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 01:03:49,544 INFO L290 TraceCheckUtils]: 15: Hoare triple {300#(not (= |assume_abort_if_not_#in~cond| 0))} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {300#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 01:03:49,545 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {300#(not (= |assume_abort_if_not_#in~cond| 0))} {307#(and (<= 0 main_~A~0) (<= main_~A~0 1))} [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 (<= 0 v_main_~R~0_6) (<= v_main_~R~0_6 1)) 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] {326#(and (<= 0 main_~A~0) (<= main_~A~0 1) (<= 0 main_~R~0) (<= main_~R~0 1))} is VALID [2022-04-08 01:03:49,546 INFO L272 TraceCheckUtils]: 17: Hoare triple {326#(and (<= 0 main_~A~0) (<= main_~A~0 1) (<= 0 main_~R~0) (<= main_~R~0 1))} [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] {270#true} is VALID [2022-04-08 01:03:49,546 INFO L290 TraceCheckUtils]: 18: Hoare triple {270#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] {296#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 01:03:49,546 INFO L290 TraceCheckUtils]: 19: Hoare triple {296#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} [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[] {300#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 01:03:49,547 INFO L290 TraceCheckUtils]: 20: Hoare triple {300#(not (= |assume_abort_if_not_#in~cond| 0))} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {300#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 01:03:49,547 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {300#(not (= |assume_abort_if_not_#in~cond| 0))} {326#(and (<= 0 main_~A~0) (<= main_~A~0 1) (<= 0 main_~R~0) (<= main_~R~0 1))} [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] {342#(and (<= main_~A~0 1) (< (+ (* main_~R~0 main_~R~0) 1) (+ main_~A~0 (* main_~R~0 2))))} is VALID [2022-04-08 01:03:49,547 INFO L272 TraceCheckUtils]: 22: Hoare triple {342#(and (<= main_~A~0 1) (< (+ (* main_~R~0 main_~R~0) 1) (+ main_~A~0 (* main_~R~0 2))))} [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] {270#true} is VALID [2022-04-08 01:03:49,548 INFO L290 TraceCheckUtils]: 23: Hoare triple {270#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] {270#true} is VALID [2022-04-08 01:03:49,548 INFO L290 TraceCheckUtils]: 24: Hoare triple {270#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[] {270#true} is VALID [2022-04-08 01:03:49,548 INFO L290 TraceCheckUtils]: 25: Hoare triple {270#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {270#true} is VALID [2022-04-08 01:03:49,551 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {270#true} {342#(and (<= main_~A~0 1) (< (+ (* main_~R~0 main_~R~0) 1) (+ main_~A~0 (* main_~R~0 2))))} [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] {342#(and (<= main_~A~0 1) (< (+ (* main_~R~0 main_~R~0) 1) (+ main_~A~0 (* main_~R~0 2))))} is VALID [2022-04-08 01:03:49,553 INFO L290 TraceCheckUtils]: 27: Hoare triple {342#(and (<= main_~A~0 1) (< (+ (* main_~R~0 main_~R~0) 1) (+ main_~A~0 (* main_~R~0 2))))} [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] {361#(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) (< (+ (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2))) 1) (+ main_~A~0 (* 2 (div (+ (* (- 1) main_~u~0) 1) (- 2))))) (= main_~v~0 1) (<= main_~A~0 1))} is VALID [2022-04-08 01:03:49,554 INFO L290 TraceCheckUtils]: 28: Hoare triple {361#(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) (< (+ (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2))) 1) (+ main_~A~0 (* 2 (div (+ (* (- 1) main_~u~0) 1) (- 2))))) (= main_~v~0 1) (<= main_~A~0 1))} [127] L48-2-->L36: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {361#(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) (< (+ (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2))) 1) (+ main_~A~0 (* 2 (div (+ (* (- 1) main_~u~0) 1) (- 2))))) (= main_~v~0 1) (<= main_~A~0 1))} is VALID [2022-04-08 01:03:49,557 INFO L272 TraceCheckUtils]: 29: Hoare triple {361#(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) (< (+ (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2))) 1) (+ main_~A~0 (* 2 (div (+ (* (- 1) main_~u~0) 1) (- 2))))) (= main_~v~0 1) (<= main_~A~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] {368#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 01:03:49,557 INFO L290 TraceCheckUtils]: 30: Hoare triple {368#(<= 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] {372#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 01:03:49,557 INFO L290 TraceCheckUtils]: 31: Hoare triple {372#(<= 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[] {271#false} is VALID [2022-04-08 01:03:49,558 INFO L290 TraceCheckUtils]: 32: Hoare triple {271#false} [140] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {271#false} is VALID [2022-04-08 01:03:49,558 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 9 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-04-08 01:03:49,558 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 01:03:49,855 INFO L290 TraceCheckUtils]: 32: Hoare triple {271#false} [140] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {271#false} is VALID [2022-04-08 01:03:49,856 INFO L290 TraceCheckUtils]: 31: Hoare triple {372#(<= 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[] {271#false} is VALID [2022-04-08 01:03:49,856 INFO L290 TraceCheckUtils]: 30: Hoare triple {368#(<= 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] {372#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 01:03:49,858 INFO L272 TraceCheckUtils]: 29: Hoare triple {388#(= (+ (* 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)))} [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] {368#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 01:03:49,858 INFO L290 TraceCheckUtils]: 28: Hoare triple {388#(= (+ (* 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)))} [127] L48-2-->L36: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {388#(= (+ (* 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-08 01:03:49,860 INFO L290 TraceCheckUtils]: 27: Hoare triple {270#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] {388#(= (+ (* 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-08 01:03:49,861 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {270#true} {270#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] {270#true} is VALID [2022-04-08 01:03:49,861 INFO L290 TraceCheckUtils]: 25: Hoare triple {270#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {270#true} is VALID [2022-04-08 01:03:49,861 INFO L290 TraceCheckUtils]: 24: Hoare triple {270#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[] {270#true} is VALID [2022-04-08 01:03:49,861 INFO L290 TraceCheckUtils]: 23: Hoare triple {270#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] {270#true} is VALID [2022-04-08 01:03:49,861 INFO L272 TraceCheckUtils]: 22: Hoare triple {270#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] {270#true} is VALID [2022-04-08 01:03:49,861 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {270#true} {270#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] {270#true} is VALID [2022-04-08 01:03:49,862 INFO L290 TraceCheckUtils]: 20: Hoare triple {270#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {270#true} is VALID [2022-04-08 01:03:49,862 INFO L290 TraceCheckUtils]: 19: Hoare triple {270#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[] {270#true} is VALID [2022-04-08 01:03:49,862 INFO L290 TraceCheckUtils]: 18: Hoare triple {270#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] {270#true} is VALID [2022-04-08 01:03:49,862 INFO L272 TraceCheckUtils]: 17: Hoare triple {270#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] {270#true} is VALID [2022-04-08 01:03:49,862 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {270#true} {270#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 (<= 0 v_main_~R~0_6) (<= v_main_~R~0_6 1)) 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] {270#true} is VALID [2022-04-08 01:03:49,863 INFO L290 TraceCheckUtils]: 15: Hoare triple {270#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {270#true} is VALID [2022-04-08 01:03:49,863 INFO L290 TraceCheckUtils]: 14: Hoare triple {270#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[] {270#true} is VALID [2022-04-08 01:03:49,863 INFO L290 TraceCheckUtils]: 13: Hoare triple {270#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] {270#true} is VALID [2022-04-08 01:03:49,863 INFO L272 TraceCheckUtils]: 12: Hoare triple {270#true} [118] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~R~0_6) (<= v_main_~R~0_6 1)) 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] {270#true} is VALID [2022-04-08 01:03:49,863 INFO L290 TraceCheckUtils]: 11: Hoare triple {270#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] {270#true} is VALID [2022-04-08 01:03:49,863 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {270#true} {270#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 1)) 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] {270#true} is VALID [2022-04-08 01:03:49,864 INFO L290 TraceCheckUtils]: 9: Hoare triple {270#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {270#true} is VALID [2022-04-08 01:03:49,864 INFO L290 TraceCheckUtils]: 8: Hoare triple {270#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[] {270#true} is VALID [2022-04-08 01:03:49,864 INFO L290 TraceCheckUtils]: 7: Hoare triple {270#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] {270#true} is VALID [2022-04-08 01:03:49,864 INFO L272 TraceCheckUtils]: 6: Hoare triple {270#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 1)) 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] {270#true} is VALID [2022-04-08 01:03:49,864 INFO L290 TraceCheckUtils]: 5: Hoare triple {270#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] {270#true} is VALID [2022-04-08 01:03:49,864 INFO L272 TraceCheckUtils]: 4: Hoare triple {270#true} [110] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {270#true} is VALID [2022-04-08 01:03:49,865 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {270#true} {270#true} [152] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {270#true} is VALID [2022-04-08 01:03:49,865 INFO L290 TraceCheckUtils]: 2: Hoare triple {270#true} [114] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {270#true} is VALID [2022-04-08 01:03:49,865 INFO L290 TraceCheckUtils]: 1: Hoare triple {270#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] {270#true} is VALID [2022-04-08 01:03:49,865 INFO L272 TraceCheckUtils]: 0: Hoare triple {270#true} [109] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {270#true} is VALID [2022-04-08 01:03:49,865 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-08 01:03:49,866 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 01:03:49,866 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1269496683] [2022-04-08 01:03:49,866 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 01:03:49,866 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1603733113] [2022-04-08 01:03:49,866 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1603733113] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-08 01:03:49,866 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-08 01:03:49,866 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [10] total 11 [2022-04-08 01:03:49,867 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1205864630] [2022-04-08 01:03:49,867 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 01:03:49,868 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-08 01:03:49,868 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 01:03:49,868 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-08 01:03:49,885 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-08 01:03:49,886 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 01:03:49,886 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 01:03:49,886 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 01:03:49,886 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=86, Unknown=0, NotChecked=0, Total=110 [2022-04-08 01:03:49,886 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-08 01:03:50,060 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 01:03:50,060 INFO L93 Difference]: Finished difference Result 38 states and 45 transitions. [2022-04-08 01:03:50,060 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 01:03:50,060 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-08 01:03:50,060 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 01:03:50,061 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-08 01:03:50,062 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 45 transitions. [2022-04-08 01:03:50,062 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-08 01:03:50,064 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 45 transitions. [2022-04-08 01:03:50,064 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 45 transitions. [2022-04-08 01:03:50,109 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 01:03:50,110 INFO L225 Difference]: With dead ends: 38 [2022-04-08 01:03:50,110 INFO L226 Difference]: Without dead ends: 34 [2022-04-08 01:03:50,111 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 66 GetRequests, 55 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 16 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=28, Invalid=104, Unknown=0, NotChecked=0, Total=132 [2022-04-08 01:03:50,112 INFO L913 BasicCegarLoop]: 29 mSDtfsCounter, 11 mSDsluCounter, 67 mSDsCounter, 0 mSdLazyCounter, 48 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 96 SdHoareTripleChecker+Invalid, 52 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 48 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 01:03:50,112 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 96 Invalid, 52 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 48 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 01:03:50,113 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-08 01:03:50,116 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 34. [2022-04-08 01:03:50,117 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 01:03:50,117 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand has 34 states, 20 states have (on average 1.15) internal successors, (23), 20 states have internal predecessors, (23), 10 states have call successors, (10), 5 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-08 01:03:50,117 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand has 34 states, 20 states have (on average 1.15) internal successors, (23), 20 states have internal predecessors, (23), 10 states have call successors, (10), 5 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-08 01:03:50,118 INFO L87 Difference]: Start difference. First operand 34 states. Second operand has 34 states, 20 states have (on average 1.15) internal successors, (23), 20 states have internal predecessors, (23), 10 states have call successors, (10), 5 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-08 01:03:50,119 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 01:03:50,120 INFO L93 Difference]: Finished difference Result 34 states and 41 transitions. [2022-04-08 01:03:50,120 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 41 transitions. [2022-04-08 01:03:50,120 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 01:03:50,120 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 01:03:50,120 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 20 states have (on average 1.15) internal successors, (23), 20 states have internal predecessors, (23), 10 states have call successors, (10), 5 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 34 states. [2022-04-08 01:03:50,121 INFO L87 Difference]: Start difference. First operand has 34 states, 20 states have (on average 1.15) internal successors, (23), 20 states have internal predecessors, (23), 10 states have call successors, (10), 5 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 34 states. [2022-04-08 01:03:50,122 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 01:03:50,123 INFO L93 Difference]: Finished difference Result 34 states and 41 transitions. [2022-04-08 01:03:50,123 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 41 transitions. [2022-04-08 01:03:50,123 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 01:03:50,123 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 01:03:50,123 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 01:03:50,123 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 01:03:50,124 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 20 states have (on average 1.15) internal successors, (23), 20 states have internal predecessors, (23), 10 states have call successors, (10), 5 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-08 01:03:50,125 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 41 transitions. [2022-04-08 01:03:50,125 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 41 transitions. Word has length 33 [2022-04-08 01:03:50,125 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 01:03:50,125 INFO L478 AbstractCegarLoop]: Abstraction has 34 states and 41 transitions. [2022-04-08 01:03:50,126 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-08 01:03:50,126 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 41 transitions. [2022-04-08 01:03:50,126 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-08 01:03:50,127 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 01:03:50,127 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-08 01:03:50,146 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-08 01:03:50,339 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-08 01:03:50,339 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 01:03:50,340 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 01:03:50,340 INFO L85 PathProgramCache]: Analyzing trace with hash -844389750, now seen corresponding path program 1 times [2022-04-08 01:03:50,340 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 01:03:50,340 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [57929749] [2022-04-08 01:03:50,340 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 01:03:50,340 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 01:03:50,359 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 01:03:50,359 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [792717930] [2022-04-08 01:03:50,360 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 01:03:50,360 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 01:03:50,360 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 01:03:50,361 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-08 01:03:50,386 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-08 01:03:50,413 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 01:03:50,414 INFO L263 TraceCheckSpWp]: Trace formula consists of 110 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-08 01:03:50,433 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 01:03:50,433 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 01:03:50,591 INFO L272 TraceCheckUtils]: 0: Hoare triple {654#true} [109] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {654#true} is VALID [2022-04-08 01:03:50,592 INFO L290 TraceCheckUtils]: 1: Hoare triple {654#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] {654#true} is VALID [2022-04-08 01:03:50,592 INFO L290 TraceCheckUtils]: 2: Hoare triple {654#true} [114] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {654#true} is VALID [2022-04-08 01:03:50,592 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {654#true} {654#true} [152] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {654#true} is VALID [2022-04-08 01:03:50,592 INFO L272 TraceCheckUtils]: 4: Hoare triple {654#true} [110] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {654#true} is VALID [2022-04-08 01:03:50,592 INFO L290 TraceCheckUtils]: 5: Hoare triple {654#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] {654#true} is VALID [2022-04-08 01:03:50,593 INFO L272 TraceCheckUtils]: 6: Hoare triple {654#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 1)) 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] {654#true} is VALID [2022-04-08 01:03:50,593 INFO L290 TraceCheckUtils]: 7: Hoare triple {654#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] {654#true} is VALID [2022-04-08 01:03:50,593 INFO L290 TraceCheckUtils]: 8: Hoare triple {654#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[] {654#true} is VALID [2022-04-08 01:03:50,593 INFO L290 TraceCheckUtils]: 9: Hoare triple {654#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {654#true} is VALID [2022-04-08 01:03:50,593 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {654#true} {654#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 1)) 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] {654#true} is VALID [2022-04-08 01:03:50,593 INFO L290 TraceCheckUtils]: 11: Hoare triple {654#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] {654#true} is VALID [2022-04-08 01:03:50,593 INFO L272 TraceCheckUtils]: 12: Hoare triple {654#true} [118] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~R~0_6) (<= v_main_~R~0_6 1)) 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] {654#true} is VALID [2022-04-08 01:03:50,593 INFO L290 TraceCheckUtils]: 13: Hoare triple {654#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] {654#true} is VALID [2022-04-08 01:03:50,593 INFO L290 TraceCheckUtils]: 14: Hoare triple {654#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[] {654#true} is VALID [2022-04-08 01:03:50,594 INFO L290 TraceCheckUtils]: 15: Hoare triple {654#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {654#true} is VALID [2022-04-08 01:03:50,594 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {654#true} {654#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 (<= 0 v_main_~R~0_6) (<= v_main_~R~0_6 1)) 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] {654#true} is VALID [2022-04-08 01:03:50,594 INFO L272 TraceCheckUtils]: 17: Hoare triple {654#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] {654#true} is VALID [2022-04-08 01:03:50,594 INFO L290 TraceCheckUtils]: 18: Hoare triple {654#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] {654#true} is VALID [2022-04-08 01:03:50,594 INFO L290 TraceCheckUtils]: 19: Hoare triple {654#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[] {654#true} is VALID [2022-04-08 01:03:50,594 INFO L290 TraceCheckUtils]: 20: Hoare triple {654#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {654#true} is VALID [2022-04-08 01:03:50,594 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {654#true} {654#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] {654#true} is VALID [2022-04-08 01:03:50,594 INFO L272 TraceCheckUtils]: 22: Hoare triple {654#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] {654#true} is VALID [2022-04-08 01:03:50,595 INFO L290 TraceCheckUtils]: 23: Hoare triple {654#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] {654#true} is VALID [2022-04-08 01:03:50,595 INFO L290 TraceCheckUtils]: 24: Hoare triple {654#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[] {654#true} is VALID [2022-04-08 01:03:50,595 INFO L290 TraceCheckUtils]: 25: Hoare triple {654#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {654#true} is VALID [2022-04-08 01:03:50,595 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {654#true} {654#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] {654#true} is VALID [2022-04-08 01:03:50,595 INFO L290 TraceCheckUtils]: 27: Hoare triple {654#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] {654#true} is VALID [2022-04-08 01:03:50,595 INFO L290 TraceCheckUtils]: 28: Hoare triple {654#true} [127] L48-2-->L36: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {654#true} is VALID [2022-04-08 01:03:50,595 INFO L272 TraceCheckUtils]: 29: Hoare triple {654#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] {654#true} is VALID [2022-04-08 01:03:50,600 INFO L290 TraceCheckUtils]: 30: Hoare triple {654#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] {749#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 01:03:50,607 INFO L290 TraceCheckUtils]: 31: Hoare triple {749#(= |__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[] {753#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 01:03:50,609 INFO L290 TraceCheckUtils]: 32: Hoare triple {753#(not (= |__VERIFIER_assert_#in~cond| 0))} [142] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {753#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 01:03:50,609 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {753#(not (= |__VERIFIER_assert_#in~cond| 0))} {654#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] {760#(= (+ (* 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-08 01:03:50,610 INFO L290 TraceCheckUtils]: 34: Hoare triple {760#(= (+ (* 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[] {764#(= (+ (* 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-08 01:03:50,611 INFO L272 TraceCheckUtils]: 35: Hoare triple {764#(= (+ (* 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] {768#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 01:03:50,611 INFO L290 TraceCheckUtils]: 36: Hoare triple {768#(<= 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] {772#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 01:03:50,611 INFO L290 TraceCheckUtils]: 37: Hoare triple {772#(<= 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[] {655#false} is VALID [2022-04-08 01:03:50,612 INFO L290 TraceCheckUtils]: 38: Hoare triple {655#false} [140] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {655#false} is VALID [2022-04-08 01:03:50,612 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-08 01:03:50,612 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 01:03:50,957 INFO L290 TraceCheckUtils]: 38: Hoare triple {655#false} [140] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {655#false} is VALID [2022-04-08 01:03:50,958 INFO L290 TraceCheckUtils]: 37: Hoare triple {772#(<= 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[] {655#false} is VALID [2022-04-08 01:03:50,958 INFO L290 TraceCheckUtils]: 36: Hoare triple {768#(<= 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] {772#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 01:03:50,966 INFO L272 TraceCheckUtils]: 35: Hoare triple {764#(= (+ (* 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] {768#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 01:03:50,967 INFO L290 TraceCheckUtils]: 34: Hoare triple {791#(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[] {764#(= (+ (* 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-08 01:03:50,968 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {753#(not (= |__VERIFIER_assert_#in~cond| 0))} {654#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] {791#(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-08 01:03:50,968 INFO L290 TraceCheckUtils]: 32: Hoare triple {753#(not (= |__VERIFIER_assert_#in~cond| 0))} [142] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {753#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 01:03:50,969 INFO L290 TraceCheckUtils]: 31: Hoare triple {804#(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[] {753#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 01:03:50,969 INFO L290 TraceCheckUtils]: 30: Hoare triple {654#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] {804#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 01:03:50,969 INFO L272 TraceCheckUtils]: 29: Hoare triple {654#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] {654#true} is VALID [2022-04-08 01:03:50,969 INFO L290 TraceCheckUtils]: 28: Hoare triple {654#true} [127] L48-2-->L36: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {654#true} is VALID [2022-04-08 01:03:50,970 INFO L290 TraceCheckUtils]: 27: Hoare triple {654#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] {654#true} is VALID [2022-04-08 01:03:50,970 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {654#true} {654#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] {654#true} is VALID [2022-04-08 01:03:50,970 INFO L290 TraceCheckUtils]: 25: Hoare triple {654#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {654#true} is VALID [2022-04-08 01:03:50,971 INFO L290 TraceCheckUtils]: 24: Hoare triple {654#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[] {654#true} is VALID [2022-04-08 01:03:50,971 INFO L290 TraceCheckUtils]: 23: Hoare triple {654#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] {654#true} is VALID [2022-04-08 01:03:50,971 INFO L272 TraceCheckUtils]: 22: Hoare triple {654#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] {654#true} is VALID [2022-04-08 01:03:50,971 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {654#true} {654#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] {654#true} is VALID [2022-04-08 01:03:50,971 INFO L290 TraceCheckUtils]: 20: Hoare triple {654#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {654#true} is VALID [2022-04-08 01:03:50,971 INFO L290 TraceCheckUtils]: 19: Hoare triple {654#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[] {654#true} is VALID [2022-04-08 01:03:50,971 INFO L290 TraceCheckUtils]: 18: Hoare triple {654#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] {654#true} is VALID [2022-04-08 01:03:50,971 INFO L272 TraceCheckUtils]: 17: Hoare triple {654#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] {654#true} is VALID [2022-04-08 01:03:50,971 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {654#true} {654#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 (<= 0 v_main_~R~0_6) (<= v_main_~R~0_6 1)) 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] {654#true} is VALID [2022-04-08 01:03:50,972 INFO L290 TraceCheckUtils]: 15: Hoare triple {654#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {654#true} is VALID [2022-04-08 01:03:50,972 INFO L290 TraceCheckUtils]: 14: Hoare triple {654#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[] {654#true} is VALID [2022-04-08 01:03:50,972 INFO L290 TraceCheckUtils]: 13: Hoare triple {654#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] {654#true} is VALID [2022-04-08 01:03:50,972 INFO L272 TraceCheckUtils]: 12: Hoare triple {654#true} [118] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~R~0_6) (<= v_main_~R~0_6 1)) 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] {654#true} is VALID [2022-04-08 01:03:50,972 INFO L290 TraceCheckUtils]: 11: Hoare triple {654#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] {654#true} is VALID [2022-04-08 01:03:50,972 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {654#true} {654#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 1)) 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] {654#true} is VALID [2022-04-08 01:03:50,972 INFO L290 TraceCheckUtils]: 9: Hoare triple {654#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {654#true} is VALID [2022-04-08 01:03:50,972 INFO L290 TraceCheckUtils]: 8: Hoare triple {654#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[] {654#true} is VALID [2022-04-08 01:03:50,972 INFO L290 TraceCheckUtils]: 7: Hoare triple {654#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] {654#true} is VALID [2022-04-08 01:03:50,972 INFO L272 TraceCheckUtils]: 6: Hoare triple {654#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 1)) 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] {654#true} is VALID [2022-04-08 01:03:50,973 INFO L290 TraceCheckUtils]: 5: Hoare triple {654#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] {654#true} is VALID [2022-04-08 01:03:50,973 INFO L272 TraceCheckUtils]: 4: Hoare triple {654#true} [110] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {654#true} is VALID [2022-04-08 01:03:50,973 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {654#true} {654#true} [152] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {654#true} is VALID [2022-04-08 01:03:50,973 INFO L290 TraceCheckUtils]: 2: Hoare triple {654#true} [114] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {654#true} is VALID [2022-04-08 01:03:50,973 INFO L290 TraceCheckUtils]: 1: Hoare triple {654#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] {654#true} is VALID [2022-04-08 01:03:50,973 INFO L272 TraceCheckUtils]: 0: Hoare triple {654#true} [109] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {654#true} is VALID [2022-04-08 01:03:50,973 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-08 01:03:50,974 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 01:03:50,974 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [57929749] [2022-04-08 01:03:50,974 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 01:03:50,974 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [792717930] [2022-04-08 01:03:50,974 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [792717930] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 01:03:50,974 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 01:03:50,974 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-08 01:03:50,974 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1987104450] [2022-04-08 01:03:50,974 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-08 01:03:50,983 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-08 01:03:50,983 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 01:03:50,983 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-08 01:03:51,009 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-08 01:03:51,009 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-08 01:03:51,009 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-08 01:03:51,010 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-08 01:03:51,010 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=67, Unknown=0, NotChecked=0, Total=90 [2022-04-08 01:03:51,010 INFO L87 Difference]: Start difference. First operand 34 states and 41 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-08 01:03:51,345 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 01:03:51,345 INFO L93 Difference]: Finished difference Result 34 states and 41 transitions. [2022-04-08 01:03:51,345 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 01:03:51,346 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-08 01:03:51,346 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 01:03:51,346 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-08 01:03:51,347 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 40 transitions. [2022-04-08 01:03:51,347 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-08 01:03:51,348 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 40 transitions. [2022-04-08 01:03:51,348 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 40 transitions. [2022-04-08 01:03:51,383 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 01:03:51,383 INFO L225 Difference]: With dead ends: 34 [2022-04-08 01:03:51,383 INFO L226 Difference]: Without dead ends: 0 [2022-04-08 01:03:51,384 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-08 01:03:51,385 INFO L913 BasicCegarLoop]: 27 mSDtfsCounter, 22 mSDsluCounter, 84 mSDsCounter, 0 mSdLazyCounter, 65 mSolverCounterSat, 19 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 24 SdHoareTripleChecker+Valid, 111 SdHoareTripleChecker+Invalid, 84 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 19 IncrementalHoareTripleChecker+Valid, 65 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 01:03:51,386 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [24 Valid, 111 Invalid, 84 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [19 Valid, 65 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 01:03:51,386 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-08 01:03:51,386 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-08 01:03:51,386 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 01:03:51,386 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-08 01:03:51,386 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-08 01:03:51,387 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-08 01:03:51,387 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 01:03:51,387 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-08 01:03:51,387 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-08 01:03:51,387 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 01:03:51,387 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 01:03:51,387 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-08 01:03:51,387 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-08 01:03:51,387 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 01:03:51,387 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-08 01:03:51,387 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-08 01:03:51,387 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 01:03:51,387 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 01:03:51,387 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 01:03:51,387 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 01:03:51,388 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-08 01:03:51,388 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-08 01:03:51,388 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 39 [2022-04-08 01:03:51,388 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 01:03:51,388 INFO L478 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-08 01:03:51,388 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-08 01:03:51,388 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-08 01:03:51,388 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 01:03:51,390 INFO L788 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-08 01:03:51,408 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-08 01:03:51,609 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-08 01:03:51,610 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2022-04-08 01:03:51,644 INFO L878 garLoopResultBuilder]: At program point ULTIMATE.initENTRY(line -1) the Hoare annotation is: (and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|)) [2022-04-08 01:03:51,644 INFO L882 garLoopResultBuilder]: For program point ULTIMATE.initFINAL(line -1) no Hoare annotation was computed. [2022-04-08 01:03:51,644 INFO L882 garLoopResultBuilder]: For program point ULTIMATE.initEXIT(line -1) no Hoare annotation was computed. [2022-04-08 01:03:51,644 INFO L885 garLoopResultBuilder]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2022-04-08 01:03:51,644 INFO L885 garLoopResultBuilder]: At program point L-1(line -1) the Hoare annotation is: true [2022-04-08 01:03:51,645 INFO L882 garLoopResultBuilder]: For program point ULTIMATE.startFINAL(line -1) no Hoare annotation was computed. [2022-04-08 01:03:51,645 INFO L882 garLoopResultBuilder]: For program point ULTIMATE.startEXIT(line -1) no Hoare annotation was computed. [2022-04-08 01:03:51,645 INFO L885 garLoopResultBuilder]: At program point assume_abort_if_notENTRY(lines 8 10) the Hoare annotation is: true [2022-04-08 01:03:51,645 INFO L882 garLoopResultBuilder]: For program point L9(line 9) no Hoare annotation was computed. [2022-04-08 01:03:51,646 INFO L882 garLoopResultBuilder]: For program point L9-2(lines 8 10) no Hoare annotation was computed. [2022-04-08 01:03:51,646 INFO L882 garLoopResultBuilder]: For program point assume_abort_if_notEXIT(lines 8 10) no Hoare annotation was computed. [2022-04-08 01:03:51,648 INFO L885 garLoopResultBuilder]: At program point mainENTRY(lines 19 59) the Hoare annotation is: true [2022-04-08 01:03:51,649 INFO L885 garLoopResultBuilder]: At program point L23(line 23) the Hoare annotation is: true [2022-04-08 01:03:51,649 INFO L882 garLoopResultBuilder]: For program point L23-1(line 23) no Hoare annotation was computed. [2022-04-08 01:03:51,649 INFO L885 garLoopResultBuilder]: At program point L25(line 25) the Hoare annotation is: true [2022-04-08 01:03:51,649 INFO L885 garLoopResultBuilder]: At program point L25-1(line 25) the Hoare annotation is: true [2022-04-08 01:03:51,649 INFO L885 garLoopResultBuilder]: At program point L26(line 26) the Hoare annotation is: true [2022-04-08 01:03:51,649 INFO L882 garLoopResultBuilder]: For program point L28(line 28) no Hoare annotation was computed. [2022-04-08 01:03:51,649 INFO L878 garLoopResultBuilder]: At program point L48-2(lines 35 55) the Hoare annotation is: (= (+ (* 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))) [2022-04-08 01:03:51,649 INFO L878 garLoopResultBuilder]: At program point L35-2(lines 35 55) the Hoare annotation is: (let ((.cse0 (+ (* main_~v~0 2) (* main_~u~0 main_~u~0))) (.cse1 (* main_~v~0 main_~v~0)) (.cse2 (* main_~u~0 2)) (.cse3 (* main_~A~0 4))) (and (= .cse0 (+ .cse1 .cse2 .cse3 (* main_~r~0 4))) (= .cse0 (+ .cse1 .cse2 .cse3)))) [2022-04-08 01:03:51,650 INFO L878 garLoopResultBuilder]: At program point L36(line 36) the Hoare annotation is: (= (+ (* 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))) [2022-04-08 01:03:51,650 INFO L882 garLoopResultBuilder]: For program point L57(line 57) no Hoare annotation was computed. [2022-04-08 01:03:51,650 INFO L882 garLoopResultBuilder]: For program point L36-1(lines 35 55) no Hoare annotation was computed. [2022-04-08 01:03:51,650 INFO L882 garLoopResultBuilder]: For program point mainFINAL(lines 19 59) no Hoare annotation was computed. [2022-04-08 01:03:51,650 INFO L878 garLoopResultBuilder]: At program point L40-2(lines 40 46) the Hoare annotation is: (= (+ (* 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))) [2022-04-08 01:03:51,650 INFO L882 garLoopResultBuilder]: For program point mainEXIT(lines 19 59) no Hoare annotation was computed. [2022-04-08 01:03:51,650 INFO L882 garLoopResultBuilder]: For program point L48-1(lines 35 55) no Hoare annotation was computed. [2022-04-08 01:03:51,650 INFO L878 garLoopResultBuilder]: At program point L41(line 41) the Hoare annotation is: (= (+ (* 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))) [2022-04-08 01:03:51,650 INFO L878 garLoopResultBuilder]: At program point L49(line 49) the Hoare annotation is: (= (+ (* 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))) [2022-04-08 01:03:51,650 INFO L882 garLoopResultBuilder]: For program point L41-1(lines 40 46) no Hoare annotation was computed. [2022-04-08 01:03:51,651 INFO L882 garLoopResultBuilder]: For program point L49-1(lines 48 54) no Hoare annotation was computed. [2022-04-08 01:03:51,651 INFO L885 garLoopResultBuilder]: At program point __VERIFIER_assertENTRY(lines 11 17) the Hoare annotation is: true [2022-04-08 01:03:51,651 INFO L882 garLoopResultBuilder]: For program point L12(lines 12 15) no Hoare annotation was computed. [2022-04-08 01:03:51,651 INFO L882 garLoopResultBuilder]: For program point L13(lines 13 14) no Hoare annotation was computed. [2022-04-08 01:03:51,651 INFO L882 garLoopResultBuilder]: For program point L12-2(lines 11 17) no Hoare annotation was computed. [2022-04-08 01:03:51,651 INFO L882 garLoopResultBuilder]: For program point __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION(line 14) no Hoare annotation was computed. [2022-04-08 01:03:51,651 INFO L882 garLoopResultBuilder]: For program point __VERIFIER_assertEXIT(lines 11 17) no Hoare annotation was computed. [2022-04-08 01:03:51,653 INFO L719 BasicCegarLoop]: Path program histogram: [1, 1, 1] [2022-04-08 01:03:51,654 INFO L178 ceAbstractionStarter]: Computing trace abstraction results [2022-04-08 01:03:51,663 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-08 01:03:51,663 WARN L170 areAnnotationChecker]: L9 has no Hoare annotation [2022-04-08 01:03:51,663 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-08 01:03:51,663 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-08 01:03:51,663 WARN L170 areAnnotationChecker]: L9 has no Hoare annotation [2022-04-08 01:03:51,663 WARN L170 areAnnotationChecker]: L9 has no Hoare annotation [2022-04-08 01:03:51,663 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-08 01:03:51,663 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-08 01:03:51,664 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2022-04-08 01:03:51,664 WARN L170 areAnnotationChecker]: L9-2 has no Hoare annotation [2022-04-08 01:03:51,664 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-04-08 01:03:51,664 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-04-08 01:03:51,664 WARN L170 areAnnotationChecker]: L12-2 has no Hoare annotation [2022-04-08 01:03:51,664 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-08 01:03:51,664 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-08 01:03:51,664 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-08 01:03:51,664 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-08 01:03:51,664 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-08 01:03:51,664 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-08 01:03:51,664 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-08 01:03:51,664 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-08 01:03:51,664 WARN L170 areAnnotationChecker]: L23-1 has no Hoare annotation [2022-04-08 01:03:51,664 WARN L170 areAnnotationChecker]: L28 has no Hoare annotation [2022-04-08 01:03:51,664 WARN L170 areAnnotationChecker]: L36-1 has no Hoare annotation [2022-04-08 01:03:51,664 WARN L170 areAnnotationChecker]: L36-1 has no Hoare annotation [2022-04-08 01:03:51,664 WARN L170 areAnnotationChecker]: L41-1 has no Hoare annotation [2022-04-08 01:03:51,664 WARN L170 areAnnotationChecker]: L41-1 has no Hoare annotation [2022-04-08 01:03:51,664 WARN L170 areAnnotationChecker]: L49-1 has no Hoare annotation [2022-04-08 01:03:51,664 WARN L170 areAnnotationChecker]: L49-1 has no Hoare annotation [2022-04-08 01:03:51,664 WARN L170 areAnnotationChecker]: L57 has no Hoare annotation [2022-04-08 01:03:51,667 WARN L170 areAnnotationChecker]: L48-1 has no Hoare annotation [2022-04-08 01:03:51,667 WARN L170 areAnnotationChecker]: L48-1 has no Hoare annotation [2022-04-08 01:03:51,667 WARN L170 areAnnotationChecker]: L48-1 has no Hoare annotation [2022-04-08 01:03:51,667 WARN L170 areAnnotationChecker]: L48-1 has no Hoare annotation [2022-04-08 01:03:51,667 WARN L170 areAnnotationChecker]: L48-1 has no Hoare annotation [2022-04-08 01:03:51,667 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2022-04-08 01:03:51,667 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2022-04-08 01:03:51,667 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-08 01:03:51,667 INFO L163 areAnnotationChecker]: CFG has 15 edges. 15 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-04-08 01:03:51,675 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 08.04 01:03:51 BasicIcfg [2022-04-08 01:03:51,675 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-08 01:03:51,676 INFO L158 Benchmark]: Toolchain (without parser) took 9925.88ms. Allocated memory was 183.5MB in the beginning and 239.1MB in the end (delta: 55.6MB). Free memory was 135.1MB in the beginning and 191.7MB in the end (delta: -56.6MB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-08 01:03:51,676 INFO L158 Benchmark]: CDTParser took 0.08ms. Allocated memory is still 183.5MB. Free memory is still 151.4MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-08 01:03:51,676 INFO L158 Benchmark]: CACSL2BoogieTranslator took 182.78ms. Allocated memory is still 183.5MB. Free memory was 134.8MB in the beginning and 161.3MB in the end (delta: -26.4MB). Peak memory consumption was 13.1MB. Max. memory is 8.0GB. [2022-04-08 01:03:51,677 INFO L158 Benchmark]: Boogie Preprocessor took 18.59ms. Allocated memory is still 183.5MB. Free memory was 161.3MB in the beginning and 159.7MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-08 01:03:51,677 INFO L158 Benchmark]: RCFGBuilder took 274.21ms. Allocated memory is still 183.5MB. Free memory was 159.7MB in the beginning and 147.6MB in the end (delta: 12.1MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2022-04-08 01:03:51,677 INFO L158 Benchmark]: IcfgTransformer took 27.56ms. Allocated memory is still 183.5MB. Free memory was 147.6MB in the beginning and 145.5MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-08 01:03:51,677 INFO L158 Benchmark]: TraceAbstraction took 9418.55ms. Allocated memory was 183.5MB in the beginning and 239.1MB in the end (delta: 55.6MB). Free memory was 145.3MB in the beginning and 191.7MB in the end (delta: -46.4MB). Peak memory consumption was 10.0MB. Max. memory is 8.0GB. [2022-04-08 01:03:51,678 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.08ms. Allocated memory is still 183.5MB. Free memory is still 151.4MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 182.78ms. Allocated memory is still 183.5MB. Free memory was 134.8MB in the beginning and 161.3MB in the end (delta: -26.4MB). Peak memory consumption was 13.1MB. Max. memory is 8.0GB. * Boogie Preprocessor took 18.59ms. Allocated memory is still 183.5MB. Free memory was 161.3MB in the beginning and 159.7MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 274.21ms. Allocated memory is still 183.5MB. Free memory was 159.7MB in the beginning and 147.6MB in the end (delta: 12.1MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * IcfgTransformer took 27.56ms. Allocated memory is still 183.5MB. Free memory was 147.6MB in the beginning and 145.5MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * TraceAbstraction took 9418.55ms. Allocated memory was 183.5MB in the beginning and 239.1MB in the end (delta: 55.6MB). Free memory was 145.3MB in the beginning and 191.7MB in the end (delta: -46.4MB). Peak memory consumption was 10.0MB. 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: 9.4s, OverallIterations: 3, TraceHistogramMax: 4, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 0.9s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 68 SdHoareTripleChecker+Valid, 0.2s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 55 mSDsluCounter, 247 SdHoareTripleChecker+Invalid, 0.2s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 154 mSDsCounter, 32 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 123 IncrementalHoareTripleChecker+Invalid, 155 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 32 mSolverCounterUnsat, 93 mSDtfsCounter, 123 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 161 GetRequests, 138 SyntacticMatches, 2 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 24 ImplicationChecksByTransitivity, 0.1s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=37occurred in iteration=0, 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.0s AutomataMinimizationTime, 3 MinimizatonAttempts, 0 StatesRemovedByMinimization, 0 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 16 LocationsWithAnnotation, 29 PreInvPairs, 38 NumberOfFragments, 161 HoareAnnotationTreeSize, 29 FomulaSimplifications, 0 FormulaSimplificationTreeSizeReduction, 0.0s HoareSimplificationTime, 16 FomulaSimplificationsInter, 0 FormulaSimplificationTreeSizeReductionInter, 0.0s HoareSimplificationTimeInter, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 7.6s InterpolantComputationTime, 105 NumberOfCodeBlocks, 105 NumberOfCodeBlocksAsserted, 3 NumberOfCheckSat, 172 ConstructedInterpolants, 0 QuantifiedInterpolants, 533 SizeOfPredicates, 12 NumberOfNonLiveVariables, 209 ConjunctsInSsa, 34 ConjunctsInUnsatCore, 5 InterpolantComputations, 2 PerfectInterpolantSequences, 113/124 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 - InvariantResult [Line: 40]: Loop Invariant Derived loop invariant: v * 2 + u * u == v * v + u * 2 + A * 4 + r * 4 - InvariantResult [Line: 35]: Loop Invariant Derived loop invariant: v * 2 + u * u == v * v + u * 2 + A * 4 + r * 4 RESULT: Ultimate proved your program to be correct! [2022-04-08 01:03:51,697 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 0 Received shutdown request...